optuna.trial.create_trial

optuna.trial.create_trial(*, state=1, value=None, values=None, params=None, distributions=None, user_attrs=None, system_attrs=None, intermediate_values=None)[source]

新しい FrozenTrial を作成します。

使用例

import optuna
from optuna.distributions import CategoricalDistribution
from optuna.distributions import FloatDistribution

trial = optuna.trial.create_trial(
    params={"x": 1.0, "y": 0},
    distributions={
        "x": FloatDistribution(0, 10),
        "y": CategoricalDistribution([-1, 0, 1]),
    },
    value=5.0,
)

assert isinstance(trial, optuna.trial.FrozenTrial)
assert trial.value == 5.0
assert trial.params == {"x": 1.0, "y": 0}

See also

既存のトライアルからスタディを作成する方法については、add_trial() を参照してください。

Note

これは低レベルAPIです。通常、目的関数に渡されるトライアルは optimize() 内で作成されます。

Note

stateTrialState.COMPLETE の場合、以下のパラメータが必要です:

  • params

  • distributions

  • value または values

Parameters:
  • state (TrialState) – トライアルの状態

  • value (float | None) – トライアルの目的値。stateTrialState.COMPLETE の場合は必須です。 valuevalues は同時に指定できません。

  • values (Sequence[float] | None) – トライアルの目的値のシーケンス。問題が多目的最適化の場合は長さが1より大きい必要があります。 stateTrialState.COMPLETE の場合は必須です。 valuevalues は同時に指定できません。

  • params (dict[str, Any] | None) – トライアルの推奨パラメータを含む辞書

  • distributions (dict[str, BaseDistribution] | None) – トライアルのパラメータ分布を含む辞書

  • user_attrs (dict[str, Any] | None) – ユーザー属性を含む辞書

  • system_attrs (dict[str, Any] | None) – システム属性を含む辞書。ほとんどのユーザーは使用する必要はありません。

  • intermediate_values (dict[int, float] | None) – トライアルの中間目的値を含む辞書

Returns:

作成されたトライアル

Return type:

FrozenTrial