canari.model_optimizer#
This module automates the search for optimal hyperparameters of a
Model instance by leveraging external libraries.
- class canari.model_optimizer.ModelOptimizer(model: Callable, param_space: dict, train_data: dict | None = None, validation_data: dict | None = None, num_optimization_trial: int | None = 50, grid_search: bool | None = False, mode: str | None = 'min', algorithm: str | None = 'default')[source]#
Bases:
objectOptimize hyperparameters for
Modelusing the Ray Tune external library using the metricmetric_optim.- Parameters:
model (Callable) – Function that returns a model instance given a model configuration.
param_space (Dict[str, list]) – Parameter search space: two-value lists [min, max] for defining the bounds of the optimization.
train_data (Dict[str, np.ndarray], optional) – Training data.
validation_data (Dict[str, np.ndarray], optional) – Validation data.
num_optimization_trial (int, optional) – Number of random search trials (ignored for grid search). Defaults to 50.
grid_search (bool, optional) – If True, perform grid search. Defaults to False.
algorithm (str, optional) – Search algorithm: ‘default’ (OptunaSearch) or ‘parallel’ (ASHAScheduler). Defaults to ‘OptunaSearch’.
mode (str, optional) – Direction for optimization stopping: ‘min’ (default).
- model_optim#
The best model instance initialized with optimal parameters after running optimize().
- param_optim#
The best hyperparameter configuration found during optimization.
- Type:
Dict
- get_best_model() Model[source]#
Retrieve the optimized model instance after running optimization.
- Returns:
- Model instance initialized with the best
hyperparameter values.
- Return type:
- get_best_param() Dict[source]#
Retrieve the optimized parameters after running optimization.
- Returns:
Best hyperparameter values.
- Return type:
dict