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 :
- 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.
- 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
- 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.
- É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.
- 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.
- 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.
- Décoder l’algorithme de recherche binaire avec des exemples
- Comment devenir un ingénieur en NLP ? Plan de carrière 2023
- VoAGI News, 13 septembre Démarrer avec SQL en 5 étapes • Introduction aux bases de données en science des données
É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!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- Évaluer l’égalité verte urbaine en utilisant le portail de données ouvertes de Vienne
- L’IA renforce considérablement les capacités des caméras de sécurité
- L’IA générative dans l’industrie de la santé a besoin d’une dose d’explicabilité.
- AnomalyGPT Détection d’anomalies industrielles à l’aide de LVLM
- Annotation d’images à code source fermé vs à code source ouvert
- Déverrouiller le langage des génomes et du climat Anima Anandkumar sur l’utilisation de l’IA générative pour relever les défis mondiaux
- Enquête VoAGI Comparaison avec vos pairs sur les dépenses et tendances en science des données 2023 H2