plot_timeline

optuna.visualization.plot_timeline(study, n_recent_trials=None)[源代码]

绘制 study 的时间线。

参数:
  • study (Study) – 一个 Study 对象,其 trials 被绘制并显示其生命周期。

  • n_recent_trials (int | None) – 要绘制的最近 trials 的数量。如果为 None,则绘制所有 trials。如果指定,则仅显示最近的 n_recent_trials。必须是正整数。

返回:

一个 plotly.graph_objects.Figure 对象。

引发:

ValueError – 如果 n_recent_trials 为 0 或负数。

返回类型:

Figure

以下代码片段展示了如何绘制 study 的时间线。时间线图可以可视化执行时间重叠的 trials(例如,在分布式环境中)。

import time

import optuna
from plotly.io import show


def objective(trial):
    x = trial.suggest_float("x", 0, 1)
    time.sleep(x * 0.1)
    if x > 0.8:
        raise ValueError()
    if x > 0.4:
        raise optuna.TrialPruned()
    return x ** 2


study = optuna.create_study(direction="minimize")
study.optimize(
    objective, n_trials=50, n_jobs=2, catch=(ValueError,)
)

fig = optuna.visualization.plot_timeline(study)
show(fig)

脚本总运行时间: (0 分钟 1.924 秒)

由 Sphinx-Gallery 生成的画廊