Optimisation bayésienne et Hyperband (BOHB) Réglage des hyperparamètres avec un exemple

Optimisation bayésienne et Hyperband (BOHB) en réglage d'hyperparamètres avec exemple.

Les modèles d’apprentissage automatique nécessitent souvent un réglage des hyperparamètres pour atteindre leur meilleure performance. Le réglage des hyperparamètres peut être une tâche décourageante et chronophage, car il implique d’expérimenter différentes combinaisons de paramètres pour trouver les réglages optimaux. Bayesian Optimization and Hyperband (BOHB) est une technique de pointe qui utilise l’optimisation bayésienne et l’algorithme Hyperband pour rechercher efficacement les meilleurs hyperparamètres pour les modèles d’apprentissage automatique. Dans cet article, nous examinerons ce qu’est BOHB, ses avantages et nous fournirons un exemple pratique de réglage des hyperparamètres pour un modèle XGBoost en utilisant BOHB.

Qu’est-ce que BOHB ?

BOHB signifie Bayesian Optimization and Hyperband. Il combine deux concepts puissants :

  1. Optimisation bayésienne : Il s’agit d’une technique d’optimisation basée sur un modèle probabiliste qui utilise un modèle de substitution (généralement un processus gaussien) pour modéliser la fonction objectif (par exemple, l’exactitude du modèle) et prendre des décisions éclairées sur où explorer l’espace des hyperparamètres. C’est particulièrement utile lorsque la fonction objectif est coûteuse à évaluer.
  2. Hyperband : Hyperband est un algorithme d’allocation de ressources qui utilise efficacement un budget limité (par exemple, le temps ou le calcul) pour régler les hyperparamètres. Il alloue progressivement des ressources aux configurations d’hyperparamètres les plus prometteuses et élimine les configurations sous-performantes.

BOHB combine ces deux concepts pour créer un processus d’optimisation des hyperparamètres efficace.

Avantages de BOHB

  1. Efficacité : BOHB utilise efficacement les ressources en se concentrant sur les configurations d’hyperparamètres prometteuses. Il élimine rapidement les configurations de mauvaise performance, ce qui permet de gagner un temps de calcul précieux.
  2. Évolutivité : BOHB s’adapte bien aux grands espaces d’hyperparamètres et peut gérer à la fois des hyperparamètres continus et catégoriels. Cela le rend adapté pour régler un large éventail de modèles d’apprentissage automatique.
  3. Configuration automatique : BOHB automatise le processus de réglage des hyperparamètres, réduisant ainsi le besoin d’intervention manuelle. Cela est particulièrement bénéfique lorsqu’il s’agit de modèles complexes et d’espaces d’hyperparamètres.
  4. Performance de pointe : BOHB dépasse souvent les méthodes traditionnelles d’optimisation des hyperparamètres, telles que la recherche en grille et la recherche aléatoire, en termes de recherche des hyperparamètres optimaux.

Exemple : Entraînement basé sur la population avec XGBoost

À présent, plongeons dans un exemple pratique d’utilisation de BOHB pour optimiser les hyperparamètres d’un modèle XGBoost.

Étape 1 : Importer les bibliothèques et charger les données

Importez les bibliothèques nécessaires, y compris xgboost pour le classifieur XGBoost, NumPy pour les opérations numériques, load_iris pour charger l’ensemble de données Iris et les bibliothèques liées à BOHB.

Étape 2 : Charger et préparer les données

Chargez l’ensemble de données Iris à l’aide de load_irs() et divisez-le en ensembles d’entraînement et de test avec un ratio de division de 75-25. Cet ensemble de données sera utilisé pour entraîner et valider le modèle XGBoost.

Étape 3 : Définir la classe BOHB Worker

Cette étape définit la fonction objectif que BOHB utilisera pour évaluer les performances de chaque configuration d’hyperparamètres. La fonction objectif doit renvoyer une valeur négative, où des valeurs plus faibles indiquent de meilleures performances. Dans ce cas, la fonction objectif est simplement la négation du score de précision sur l’ensemble de test.

Étape 4 : Définir l’espace de recherche des hyperparamètres

Cette étape définit l’espace de configuration pour les hyperparamètres que nous voulons régler. L’espace de configuration est un dictionnaire qui associe à chaque hyperparamètre une plage de valeurs possibles.

Étape 5 : Initialiser l’optimiseur BOHB

Cette étape crée un objet optimiseur BOHB. Le paramètre config_space spécifie l’espace de configuration pour les hyperparamètres.

Étape 6 : Exécuter l’optimisation

Cette étape lance l’optimisation BOHB. Le paramètre de la fonction objectif spécifie la fonction objectif à utiliser et le paramètre du budget spécifie le nombre d’évaluations à effectuer.

Étape 7 : Récupérer les meilleurs hyperparamètres et le score

Cette étape obtient la meilleure configuration d’hyperparamètres trouvée par BOHB et affiche la meilleure configuration d’hyperparamètres dans la console.

Après avoir exécuté le code ci-dessus, la meilleure configuration des paramètres trouvée par BOHB est la suivante :

Conclusion

Dans le domaine toujours en évolution de l’apprentissage automatique, la quête de performances optimales du modèle commence souvent par l’ajustement fin des hyperparamètres. L’optimisation bayésienne et Hyperband (BOHB) se révèlent être une solution redoutable à ce défi, en naviguant efficacement dans l’espace complexe des hyperparamètres pour découvrir des configurations qui maximisent les performances du modèle. Cet article a mis en lumière le fonctionnement interne, les avantages et l’application pratique de BOHB en utilisant l’algorithme populaire XGBoost.

L’efficacité, l’évolutivité et l’automatisation de BOHB en font un choix convaincant pour l’optimisation des hyperparamètres. Sa capacité à allouer de manière adaptative des ressources à des configurations prometteuses tout en éliminant celles qui donnent de mauvaises performances accélère le processus d’optimisation et préserve des ressources informatiques précieuses.

L’exemple de code fourni démontre que BOHB s’intègre parfaitement dans le flux de travail de l’apprentissage automatique. En tirant parti de cette technique puissante, les scientifiques des données et les praticiens de l’apprentissage automatique peuvent rationaliser leurs efforts d’ajustement des hyperparamètres, ce qui leur permet de se concentrer sur le développement et le déploiement du modèle.

Avez-vous des questions relatives à cet article ? Laissez un commentaire et posez votre question ; je ferai de mon mieux pour y répondre.

Merci de votre lecture !

We will continue to update IPGirl; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AI

La Pluie Prédit-elle la Pluie? Données Météorologiques des États-Unis et la Corrélation entre la Pluie Aujourd'hui et Demain

Données météorologiques des États-Unis et corrélation des précipitations aujourd'hui et demain. Présente des ensemble...

AI

2 sénateurs proposent un cadre bipartisan pour les lois sur l'IA

L'initiative des sénateurs Richard Blumenthal et Josh Hawley est la dernière action des législateurs pour rattraper l...

Recherche en IA

Accélérer la découverte de médicaments avec des modèles génératifs de diffusion.

Des chercheurs du MIT ont construit DiffDock, un modèle qui pourrait un jour être en mesure de trouver de nouveaux mé...

AI

La direction du numérique l'IA générative dans le cinéma et le divertissement

Introduction Lumières, caméra, IA ! Nous avons toujours été intrigués par la magie du cinéma, qui emmène les spectate...

AI

Découvrez Equinox Une bibliothèque JAX pour les réseaux neuronaux et sciML.

Découvrez Equinox, une bibliothèque JAX conçue pour les méthodes numériques qui gagne en popularité au sein de la com...

AI

MLOps surajuste. Voici pourquoi

La ML est-elle une pratique unique qui nécessite sa propre approche DevOps et une infrastructure correspondante? Une ...