Optimisation des hyperparamètres

Databricks Runtime pour Machine Learning incorpore Hyperopt, un outil open source qui automatise le processus de sélection des modèles et l’optimisation des hyperparamètres.

Optimisation des hyperparamètres avec Ray

Databricks Runtime ML inclut Ray, une infrastructure open source spécialisée dans le traitement de calcul parallèle pour la mise à l’échelle des workflows Machine Learning et des applications IA. Consultez Utiliser Ray sur Azure Databricks.

Optimisation des hyperparamètres avec Hyperopt

Databricks Runtime ML comprend Hyperopt, bibliothèque Python qui facilite le réglage des hyperparamètres distribués et la sélection de modèles. Avec Hyperopt, vous pouvez analyser un ensemble de modèles Python tout en variant les algorithmes et les hyperparamètres dans les espaces que vous définissez. Hyperopt fonctionne avec les algorithmes de ML distribué, comme Apache Spark MLlib et Horovod, ainsi qu’avec les modèles ML mono-machine, comme scikit-learn et TensorFlow.

Les étapes simples quand vous utilisez Hyperopt sont les suivantes :

  1. Définir une fonction objectif à minimiser. En général, il s’agit de la perte ou de la validation d’entraînement.
  2. Définir l’espace de recherche des hyperparamètres. Hyperopt fournit un espace de recherche conditionnel, qui vous permet de comparer différents algorithmes ML dans la même exécution.
  3. Spécifier l’algorithme de recherche. Hyperopt utilise des algorithmes de réglage stochastiques qui effectuent une recherche plus efficace de l’espace hyperparamétrique qu’une recherche de grille déterministe.
  4. Exécuter la fonction Hyperopt fmin(). fmin() prend les éléments que vous avez définis dans les étapes précédentes et identifie le jeu d’hyperparamètres qui minimise la fonction objectif.

Pour commencer rapidement à utiliser Hyperopt avec des algorithmes scikit-learn, consultez :

Pour plus d’informations sur le fonctionnement de Hyperopt et pour obtenir d’autres exemples, consultez :

Suivi MLflow automatisé

Remarque

Le suivi MLflow automatisé de MLlib est déconseillé et désactivé par défaut sur les clusters qui exécutent Databricks Runtime 10.4 LTS ML et versions ultérieures. Utilisez plutôt MLflow PySpark ML autologging en appelant mlflow.pyspark.ml.autolog(), qui est activé par défaut avec Databricks Autologging.

Pour utiliser l’ancien suivi MLflow automatisé de MLlib dans Databricks Runtime 10.4 LTS ML et versions ultérieures, activez-le en définissant les configurations Sparkspark.databricks.mlflow.trackMLlib.enabled true et spark.databricks.mlflow.autologging.enabled false.