Skip to content

plot_hyperparameters


method plot_hyperparameters(models=None, params=(0, 1), metric=0, title=None, legend=None, figsize=None, filename=None, display=True)[source]

Plot hyperparameter relationships in a study.

A model's hyperparameters are plotted against each other. The corresponding metric scores are displayed in a contour plot. The markers are the trials in the study. This plot is only available for models that ran hyperparameter tuning.

Parameters models: int, str, Model or None, default=None
Model to plot. If None, all models are selected. Note that leaving the default option could raise an exception if there are multiple models. To avoid this, call the plot directly from a model, e.g., atom.lr.plot_hyperparameters().

params: str, segment or sequence, default=(0, 1)
Hyperparameters to plot. Use a sequence or add + between options to select more than one.

metric: int or str, default=0
Metric to plot (only for multi-metric runs).

title: str, dict or None, default=None
Title for the plot.

legend: str, dict or None, default=None
Do nothing. Implemented for continuity of the API.

figsize: tuple or None, default=None
Figure's size in pixels, format as (x, y). If None, it adapts the size to the number of hyperparameters shown.

filename: str, Path or None, default=None
Save the plot using this name. Use "auto" for automatic naming. The type of the file depends on the provided name (.html, .png, .pdf, etc...). If filename has no file type, the plot is saved as html. If None, the plot is not saved.

display: bool or None, default=True
Whether to render the plot. If None, it returns the figure.

Returns{#plot_hyperparameters-go.Figure or None} go.Figure or None
Plot object. Only returned if display=None.


See Also

plot_hyperparameter_importance

Plot a model's hyperparameter importance.

plot_parallel_coordinate

Plot high-dimensional parameter relationships in a study.

plot_trials

Plot the hyperparameter tuning trials.


Example

>>> from atom import ATOMClassifier
>>> from sklearn.datasets import load_breast_cancer

>>> X, y = load_breast_cancer(return_X_y=True, as_frame=True)

>>> atom = ATOMClassifier(X, y, random_state=1)
>>> atom.run("LR", n_trials=15)
>>> atom.plot_hyperparameters(params=(0, 1, 2))