Visualization¶
Note
visualization
module uses plotly to create figures, but JupyterLab cannot
render them by default. Please follow this installation guide to show figures in
JupyterLab.
-
optuna.visualization.
plot_contour
(study: optuna.study.Study, params: Optional[List[str]] = None) → go.Figure[source]¶ Plot the parameter relationship as contour plot in a study.
Note that, If a parameter contains missing values, a trial with missing values is not plotted.
Example
The following code snippet shows how to plot the parameter relationship as contour plot.
import optuna def objective(trial): x = trial.suggest_uniform('x', -100, 100) y = trial.suggest_categorical('y', [-1, 0, 1]) return x ** 2 + y study = optuna.create_study() study.optimize(objective, n_trials=10) optuna.visualization.plot_contour(study, params=['x', 'y'])
- Parameters
study – A
Study
object whose trials are plotted for their objective values.params – Parameter list to visualize. The default is all parameters.
- Returns
A
plotly.graph_objs.Figure
object.
-
optuna.visualization.
plot_intermediate_values
(study)[source]¶ Plot intermediate values of all trials in a study.
Example
The following code snippet shows how to plot intermediate values.
import optuna def f(x): return (x - 2) ** 2 def df(x): return 2 * x - 4 def objective(trial): lr = trial.suggest_loguniform("lr", 1e-5, 1e-1) x = 3 for step in range(128): y = f(x) trial.report(y, step=step) if trial.should_prune(): raise optuna.TrialPruned() gy = df(x) x -= gy * lr return y study = optuna.create_study() study.optimize(objective, n_trials=16) optuna.visualization.plot_intermediate_values(study)
- Parameters
study – A
Study
object whose trials are plotted for their intermediate values.- Returns
A
plotly.graph_objs.Figure
object.
-
optuna.visualization.
plot_optimization_history
(study)[source]¶ Plot optimization history of all trials in a study.
Example
The following code snippet shows how to plot optimization history.
import optuna def objective(trial): x = trial.suggest_uniform('x', -100, 100) y = trial.suggest_categorical('y', [-1, 0, 1]) return x ** 2 + y study = optuna.create_study() study.optimize(objective, n_trials=10) optuna.visualization.plot_optimization_history(study)
- Parameters
study – A
Study
object whose trials are plotted for their objective values.- Returns
A
plotly.graph_objs.Figure
object.
-
optuna.visualization.
plot_parallel_coordinate
(study: optuna.study.Study, params: Optional[List[str]] = None) → go.Figure[source]¶ Plot the high-dimentional parameter relationships in a study.
Note that, If a parameter contains missing values, a trial with missing values is not plotted.
Example
The following code snippet shows how to plot the high-dimentional parameter relationships.
import optuna def objective(trial): x = trial.suggest_uniform('x', -100, 100) y = trial.suggest_categorical('y', [-1, 0, 1]) return x ** 2 + y study = optuna.create_study() study.optimize(objective, n_trials=10) optuna.visualization.plot_parallel_coordinate(study, params=['x', 'y'])
- Parameters
study – A
Study
object whose trials are plotted for their objective values.params – Parameter list to visualize. The default is all parameters.
- Returns
A
plotly.graph_objs.Figure
object.
-
optuna.visualization.
plot_slice
(study, params=None)[source]¶ Plot the parameter relationship as slice plot in a study.
Note that, If a parameter contains missing values, a trial with missing values is not plotted.
Example
The following code snippet shows how to plot the parameter relationship as slice plot.
import optuna def objective(trial): x = trial.suggest_uniform('x', -100, 100) y = trial.suggest_categorical('y', [-1, 0, 1]) return x ** 2 + y study = optuna.create_study() study.optimize(objective, n_trials=10) optuna.visualization.plot_slice(study, params=['x', 'y'])
- Parameters
study – A
Study
object whose trials are plotted for their objective values.params – Parameter list to visualize. The default is all parameters.
- Returns
A
plotly.graph_objs.Figure
object.
-
optuna.visualization.
is_available
()[source]¶ Returns whether visualization is available or not.
Note
visualization
module depends on plotly version 4.0.0 or higher. If a supported version of plotly isn’t installed in your environment, this function will returnFalse
. In such case, please execute$ pip install -U plotly>=4.0.0
to install plotly.