Condividi tramite


Ottimizzazione degli iperparametri

Le librerie Python come Optuna, Ray Tune e Hyperopt semplificano e automatizzano l'ottimizzazione degli iperparametri per trovare in modo efficiente un set ottimale di iperparametri per i modelli di Machine Learning. Queste librerie vengono ridimensionate in più calcoli per trovare rapidamente iperparametri con requisiti minimi di orchestrazione e configurazione manuali.

Optuna

Optuna è un framework leggero che semplifica la definizione di uno spazio di ricerca dinamico per l'ottimizzazione degli iperparametri e la selezione del modello. Optuna include alcuni degli algoritmi di ottimizzazione e machine learning più recenti.

Optuna può essere facilmente parallelizzato con Joblib per ridimensionare i carichi di lavoro e integrato con Mlflow per tenere traccia degli iperparametri e delle metriche tra le versioni di valutazione.

Per iniziare a usare Optuna, vedere Ottimizzazione degli iperparametri con Optuna.

Ray Tune

Databricks Runtime ML include Ray, un framework open source usato per l'elaborazione parallela del calcolo. Ray Tune è una libreria di ottimizzazione degli iperparametri fornita con Ray e usa Ray come back-end per il calcolo distribuito.

Per informazioni dettagliate su come eseguire Ray in Databricks, vedere Che cos'è Ray in Azure Databricks?. Per esempi di Ray Tune, vedere la documentazione di Ray Tune.

Hyperopt

Nota

La versione open source di Hyperopt non viene più mantenuta.

Hyperopt non verrà più preinstallato in Databricks Runtime ML 17.0 e versioni successive. Azure Databricks consiglia invece di usare Optuna per un'esperienza simile e l'accesso a algoritmi di ottimizzazione degli iperparametri più aggiornati.

Hyperopt è una libreria Python usata per l'ottimizzazione e la selezione del modello degli iperparametri distribuiti. Hyperopt è compatibile sia con algoritmi di ML distribuiti, come MLlib di Apache Spark e Horovod, sia con modelli di ML per singolo computer, come scikit-learn e TensorFlow.

Per iniziare a usare Hyperopt, vedere Usare algoritmi di training distribuiti con Hyperopt.

Monitoraggio automatizzato di MLlib MLflow

Nota

Il rilevamento automatizzato di MLlib MLflow è deprecato e disabilitato per impostazione predefinita nei cluster che eseguono Databricks Runtime 10.4 LTS ML e versioni successive.

Usare invece MLflow PySpark ML autologging chiamando mlflow.pyspark.ml.autolog(), che è abilitato per impostazione predefinita con l'assegnazione automatica di Databricks.

Con il rilevamento automatizzato di MLlib MLflow, quando si esegue il codice di ottimizzazione che usa CrossValidator o TrainValidationSplit. Gli iperparametri e le metriche di valutazione vengono registrati automaticamente in MLflow.