optuna.storages.RetryFailedTrialCallback
- class optuna.storages.RetryFailedTrialCallback(max_retry=None, inherit_intermediate_values=False)[source]
最多重试失败的 trial 指定次数。
当 trial 失败时,可以将此回调与
optuna.storages中的某个类一起使用,以便在TrialState.WAITING中重新创建 trial,将其排队以便再次运行。可以通过
retried_trial_number()函数识别失败的 trial。即使发生重复失败(重试的 trial 再次失败),此方法也会返回原始 trial 的编号。要获取包含重试 trial 编号及其原始 trial 的完整列表,请调用retry_history()函数。此回调对于 trial 可能因外部原因(例如被其他进程抢占)而失败的环境很有帮助。
用法
import optuna from optuna.storages import RetryFailedTrialCallback storage = optuna.storages.RDBStorage( url="sqlite:///:memory:", heartbeat_interval=60, grace_period=120, failed_trial_callback=RetryFailedTrialCallback(max_retry=3), ) study = optuna.create_study( storage=storage, )
另请参阅
请参阅
RDBStorage。- 参数:
注意
在 v2.8.0 中作为实验性功能添加。接口在后续版本中可能在没有事先通知的情况下发生更改。请参阅 https://github.com/optuna/optuna/releases/tag/v2.8.0。
方法
retried_trial_number(trial)返回正在重试的原始 trial 的编号。
retry_history(trial)返回与指定 trial 相关的重试 trial 编号列表。
- static retried_trial_number(trial)[source]
返回正在重试的原始 trial 的编号。
- 参数:
trial (FrozenTrial) – trial 对象。
- 返回:
首次失败的 trial 的编号。如果不是对先前 trial 的重试,则返回
None。- 返回类型:
int | None
注意
在 v2.8.0 中作为实验性功能添加。接口在后续版本中可能在没有事先通知的情况下发生更改。请参阅 https://github.com/optuna/optuna/releases/tag/v2.8.0。
- static retry_history(trial)[source]
返回与指定 trial 相关的重试 trial 编号列表。
- 参数:
trial (FrozenTrial) – trial 对象。
- 返回:
按重试 trial 系列的升序排列的 trial 编号列表。列表的第一个元素表示原始 trial,它与
retried_trial_number()相同,最后一个元素是重试系列中指定 trial 前面的那个。如果指定 trial 不是任何 trial 的重试,则返回一个空列表。- 返回类型:
注意
在 v3.0.0 中作为实验性功能添加。接口在后续版本中可能在没有事先通知的情况下发生更改。请参阅 https://github.com/optuna/optuna/releases/tag/v3.0.0。