Mode de fonctionnement du réglage d'hyperparamètres - Amazon SageMaker

Mode de fonctionnement du réglage d'hyperparamètres

Dans une recherche aléatoire, le réglage des hyperparamètres choisit une combinaison de valeurs aléatoire dans les plages que vous spécifiez pour les hyperparamètres pour chaque tâche d'entraînement lancée. Étant donné que le choix des valeurs des hyperparamètres ne repose pas sur les résultats de tâches d'entraînement précédentes, vous pouvez exécuter le nombre maximal de tâches d'entraînement simultanées sans impact sur les performances de la recherche.

Pour obtenir un exemple de bloc-notes qui utilise la recherche aléatoire, veuillez consulter https://github.com/awslabs/amazon-sagemaker-examples/blob/master/hyperparameter_tuning/xgboost_random_log/hpo_xgboost_random_log.ipynb.

Recherche bayésienne

Une recherche bayésienne traite le réglage des hyperparamètres comme un problème de [régression]. À partir d'un ensemble de caractéristiques d'entrée (les hyperparamètres), le réglage des hyperparamètres optimise un modèle pour la métrique que vous choisissez. Pour résoudre un problème de régression, le réglage des hyperparamètres permet d'évaluer les combinaisons d'hyperparamètres qui sont susceptibles de donner les meilleurs résultats et exécute les tâches d'entraînement pour tester ces valeurs. Après avoir testé le premier ensemble de valeurs d'hyperparamètres, le réglage des hyperparamètres utilise la régression pour choisir l'ensemble suivant de valeurs d'hyperparamètres à tester.

Le réglage des hyperparamètres utilise une implémentation Amazon SageMaker d'optimisation bayésienne.

Lorsque vous choisissez les meilleurs hyperparamètres pour la tâche d'entraînement suivante, le réglage des hyperparamètres tient compte de tous les éléments connus concernant ce problème. Il choisit parfois une combinaison de valeurs d'hyperparamètres proche de celle ayant permis d'obtenir la meilleure tâche d'entraînement précédente afin d'améliorer les performances de façon incrémentielle. Ceci permet au réglage des hyperparamètres d'exploiter les meilleurs résultats connus. Ou bien il choisit un ensemble de valeurs d'hyperparamètres éloigné de ce qu'il a déjà essayé. Cela lui permet d'explorer la plage des valeurs d'hyperparamètres pour tenter de trouver de nouveaux domaines méconnus. Le compromis explorer/exploiter est courant dans de nombreux problèmes de machine learning.

Pour plus d'informations sur les optimisations bayésiennes, consultez les ressources suivantes :

Note

Le réglage des hyperparamètres n'améliorera pas forcément votre modèle. Il s'agit d'un outil avancé permettant de concevoir des solutions automatisées, et, par conséquent, il doit être considéré comme faisant partie du processus de développement scientifique.

Lorsque vous créez des systèmes de machine learning complexes, tels que des réseaux neuronaux deep learning, il n'est pas possible d'explorer toutes les combinaisons. Le réglage des hyperparamètres peut accélérer votre productivité en essayant de nombreuses variations d'un modèle et en se concentrant sur les combinaisons de valeurs d'hyperparamètres les plus prometteuses en fonction des plages spécifiées. Pour obtenir de bons résultats, vous devez choisir les bonnes plages à explorer. Étant donné que l'algorithme lui-même est stochastique, il est possible que le modèle de réglage des hyperparamètres ne parviendra pas à cibler la meilleure réponse, même si la meilleure combinaison de valeurs possible est comprise dans les plages que vous choisissez.