Merge pull request #244 from c-bata/followup-235

Follow-up PR 235: Fix the order of trials and intermediate_values.
This commit is contained in:
Masashi Shibata
2022-06-06 13:49:07 +09:00
committed by GitHub
2 changed files with 8 additions and 2 deletions
+5
View File
@@ -159,6 +159,11 @@ def get_trials(
):
return trials
trials = storage.get_all_trials(study_id, deepcopy=False)
# TODO(c-bata): Avoid to sort trials after fixed https://github.com/optuna/optuna/issues/3605
if isinstance(storage, RDBStorage) and storage.url.startswith("postgresql"):
trials = sorted(trials, key=lambda t: t.number)
with trials_cache_lock:
trials_last_fetched_at[study_id] = datetime.now()
trials_cache[study_id] = trials
+3 -2
View File
@@ -88,7 +88,6 @@ def serialize_study_detail(
serialized["trials"] = [
serialize_frozen_trial(summary._study_id, trial) for trial in trials
]
serialized["intersection_search_space"] = serialize_search_space(intersection)
serialized["union_search_space"] = serialize_search_space(union)
serialized["has_intermediate_values"] = has_intermediate_values
@@ -122,7 +121,9 @@ def serialize_frozen_trial(study_id: int, trial: FrozenTrial) -> Dict[str, Any]:
assert np.isfinite(value)
serialized_value = value
serialized_intermediate_values.append({"step": step, "value": serialized_value})
serialized["intermediate_values"] = serialized_intermediate_values
serialized["intermediate_values"] = sorted(
serialized_intermediate_values, key=lambda v: v["step"]
)
if trial.values is not None:
serialized_values: List[Union[float, Literal["inf", "-inf"]]] = []