Amazon SageMaker a annoncé la prise en charge de trois nouveaux critères d’achèvement de réglage automatique de modèle Amazon SageMaker, vous offrant un ensemble supplémentaire de leviers pour contrôler les paramètres qui arrêtent la fonction de réglage lors de la recherche de la meilleure configuration de superparamètre pour votre modèle.
Dans cet article, nous discutons de ces nouvelles normes de réussite, du moment où les utiliser et de certains des avantages qu’elles apportent.
Réglage automatique du modèle SageMaker
Ajustement automatique du formulaire, également appelé réglage des hyperparamètres, trouve la meilleure version du modèle telle que mesurée par la métrique choisie. Il fait tourner plusieurs fonctions de formation sur l’ensemble de données donné, en utilisant l’algorithme choisi et les plages d’hyperparamètres sélectionnées. Chaque travail de formation peut être terminé tôt lorsque la mesure objective ne s’est pas améliorée de manière significative, ce qui est connu sous le nom d’arrêt précoce.
Jusqu’à présent, il existait des moyens limités de contrôler la fonction de réglage globale, comme la définition du nombre maximal de fonctions d’entraînement. Cependant, le choix de cette valeur de paramètre est au mieux indicatif. Une valeur plus élevée augmente les coûts de réglage, et une valeur plus petite peut ne pas aboutir à la meilleure version du modèle à tout moment.
Le réglage automatique du modèle de SageMaker résout ces problèmes en vous donnant plusieurs critères d’achèvement pour le travail de réglage. Il est appliqué au niveau de réglage plutôt qu’à chaque niveau fonctionnel d’entraînement individuel, ce qui signifie qu’il fonctionne à une couche d’abstraction plus élevée.
Avantages de l’ajustement des normes d’achèvement des travaux
Avec un meilleur contrôle sur le moment où la tâche de réglage est arrêtée, vous pouvez bénéficier d’économies de coûts en n’exécutant pas la tâche pendant de longues périodes et en étant coûteux en calculs. Cela signifie également que vous pouvez vous assurer que le travail ne s’arrête pas trop tôt et que vous obtenez une forme suffisamment bonne qui répond à vos objectifs. Vous pouvez choisir d’arrêter la fonction d’ajustement lorsque les modèles cessent de s’améliorer après un ensemble d’itérations ou lorsque l’amélioration restante estimée ne justifie pas les ressources et le temps de calcul.
En plus du nombre maximal actuel de critères d’achèvement des tâches de formation MaxNumberOfTrainingJobs, le réglage automatique du modèle offre la possibilité d’arrêter le réglage en fonction du temps de réglage maximal, de la surveillance de l’optimisation et de la détection de convergence.
Explorons chacun de ces critères.
temps de réglage maximal
Auparavant, vous aviez la possibilité de spécifier le nombre maximal de tâches de formation en tant que paramètre de limite de ressources pour contrôler l’équilibrage de réglage en termes de ressources de calcul. Cependant, cela peut conduire à des temps de formation plus longs ou plus courts que requis ou souhaitables.
Avec l’ajout de critères de durée maximale de réglage, vous pouvez désormais personnaliser votre budget de formation en termes de temps d’exécution de la tâche de réglage et terminer automatiquement la tâche après une période de temps spécifiée définie en secondes.
Comme nous l’avons vu plus haut, nous utilisons un MaxRuntimeInSeconds
Définit le temps de syntonisation en secondes. La définition d’une limite de temps de réglage vous aide à déterminer la durée de la tâche de réglage ainsi que le coût prévu de l’essai.
Le coût total avant toute remise contractuelle peut être estimé par la formule suivante :EstimatedComputeSeconds= MaxRuntimeInSeconds * MaxParallelTrainingJobs * InstanceCost
La disponibilité maximale en secondes peut être utilisée pour établir un lien entre le coût et la disponibilité. En d’autres termes, ce sont les critères de réalisation du contrôle budgétaire.
Cette fonctionnalité fait partie des normes de contrôle des ressources et ne prend pas en compte la convergence des modèles. Comme nous pouvons le voir plus loin dans cet article, ces critères peuvent être utilisés conjointement avec d’autres critères d’arrêt pour contrôler les coûts sans sacrifier la précision.
échelle cible souhaitée
Un autre critère donné à l’avance est de définir l’objectif cible à l’avance. Les repères surveillent les performances du meilleur modèle sur la base d’une mesure objective spécifiée et arrêtent de s’ajuster lorsque les modèles atteignent le seuil spécifié par rapport à une mesure objective spécifiée.
avec le TargetObjectiveMetricValue
critères, nous pouvons dire à SageMaker d’arrêter de régler le modèle après que la mesure objective du meilleur modèle ait atteint la valeur spécifiée :
Dans cet exemple, nous avons demandé à SageMaker d’arrêter le réglage du modèle lorsque la mesure objective du meilleur modèle atteint 0,95.
Cette méthode est utile lorsque vous souhaitez que votre modèle atteigne un objectif spécifique, tel qu’un certain niveau de précision, d’exactitude, de rappel, de score F1, d’AUC, de perte de log, etc.
Un cas d’utilisation typique de ces benchmarks serait pour un utilisateur déjà familiarisé avec les performances du modèle à certains seuils. Dans la phase d’exploration, l’utilisateur peut d’abord ajuster le modèle avec un petit sous-ensemble d’un ensemble de données plus grand pour déterminer un seuil d’évaluation satisfaisant à cibler lors de la formation avec l’ensemble de données complet.
Suivi de l’amélioration
Ces repères surveillent la convergence des modèles après chaque itération et arrêtent le réglage si les modèles ne se sont pas améliorés après un nombre spécifié de tâches de formation. Voir la configuration suivante :
Dans ce cas, nous créons un fichier MaxNumberOfTrainingJobsNotImproving
à 10, ce qui signifie que si la mesure objective cesse de s’améliorer après 10 tâches d’entraînement, l’ajustement sera arrêté et le meilleur modèle et la meilleure jauge seront signalés.
La surveillance de l’optimisation doit être utilisée pour ajuster le compromis entre la qualité du modèle et la durée globale du flux de travail de manière à ce qu’il puisse très probablement être transféré entre différents problèmes d’optimisation.
Détection de convergence
La détection de proximité est un paramètre de réussite qui permet au réglage automatique du modèle de décider quand arrêter le réglage. Généralement, l’ajustement automatique du modèle s’arrête lorsqu’il estime qu’aucune amélioration significative ne peut être obtenue. Voir la configuration suivante :
Les normes sont mieux adaptées lorsque vous ne savez pas initialement quels paramètres d’arrêt définir.
C’est également utile si vous ne savez pas quelle métrique d’objectif cible est appropriée pour une bonne prédiction compte tenu du problème et de l’ensemble de données à portée de main, et que vous préférez terminer la tâche d’ajustement lorsque vous ne vous améliorez pas.
Essayez de comparer les normes de réussite
Dans cette expérience, compte tenu de la tâche de régression, nous exécutons 3 expériences de réglage pour trouver le modèle optimal dans un espace de recherche de deux hyperparamètres avec 200 configurations d’hyperparamètres au total en utilisant l’ensemble de données de marketing direct.
Toutes choses étant égales par ailleurs, le premier modèle a été défini avec BestObjectiveNotImproving
Critères de réalisation, le deuxième modèle a été fixé avec CompleteOnConvergence
Le troisième modèle a été établi sans préciser de critères de réalisation.
Lors de la description de chaque fonction, nous pouvons noter que le réglage BestObjectiveNotImproving
Les normes ont entraîné de meilleures économies de ressources et de temps par rapport à l’échelle cible avec beaucoup moins de travaux exécutés.
le CompleteOnConvergence
Les repères ont également pu arrêter l’ajustement au milieu de l’essai, ce qui a entraîné moins d’emplois de formation et un temps de formation plus court par rapport à l’absence de repères.
Bien que la non-définition des critères de réalisation ait entraîné une expérience coûteuse, la définition MaxRuntimeInSeconds
Dans le cadre de la limite des ressources serait un moyen de réduire les coûts.
Les résultats ci-dessus montrent que lors de la définition des critères de réussite, Amazon SageMaker peut arrêter intelligemment le processus de réglage lorsqu’il détecte que le modèle est moins susceptible de s’améliorer au-delà du score actuel.
Notez que les critères de remplissage pris en charge dans le réglage automatique des formulaires de SageMaker ne s’excluent pas mutuellement et peuvent être utilisés simultanément lors du réglage d’un formulaire.
Lorsque plusieurs critères de réalisation sont spécifiés, la fonction d’ajustement se termine lorsque l’un des critères est satisfait.
Par exemple, une combinaison de critères de limite de ressources tels que le temps de réglage maximal avec des critères de convergence, tels que la surveillance de l’optimisation ou la détection d’affinité, peut entraîner un contrôle optimal des coûts et des métriques objectives optimales.
Conclusion
Dans cet article, nous avons expliqué comment vous pouvez désormais suspendre intelligemment votre tâche de réglage en définissant un ensemble de critères d’achèvement nouvellement introduits dans SageMaker, tels que le temps de réglage maximal, la surveillance de l’optimisation ou la détection de proximité.
Nous avons montré par expérience qu’un arrêt intelligent basé sur une observation d’amélioration à travers l’itération peut entraîner une amélioration significative de la gestion du budget et du temps par rapport à l’absence de critère d’achèvement.
Nous avons également montré que ces critères ne sont pas mutuellement exclusifs et peuvent être utilisés simultanément lors du réglage d’un modèle, pour tirer parti à la fois du contrôle budgétaire et de l’optimisation de la convergence.
Pour plus de détails sur la configuration et l’exécution du réglage automatique du modèle, reportez-vous à la section Définition des paramètres de la tâche de réglage des hyperparamètres.
À propos des auteurs
Doug Mbaya Il est un architecte de solutions partenaire principal spécialisé dans les données et l’analyse. Doug travaille en étroite collaboration avec les partenaires AWS, les aidant à intégrer des solutions de données et d’analyse dans le cloud.
Chitra Mathur Il est architecte principal de solutions chez AWS. Elle guide les clients et les partenaires dans la création de solutions évolutives, fiables, sécurisées et rentables sur AWS. Elle est passionnée par l’apprentissage automatique et aide les clients à traduire leurs besoins ML en solutions à l’aide des services AWS AI/ML. Obtention de 5 certifications dont la certification de spécialité ML. Dans ses temps libres, elle aime lire, faire du yoga et passer du temps avec ses filles.
Iaroslav Chcherbaty Il est ingénieur en apprentissage automatique chez AWS. Il travaille principalement à apporter des améliorations à la plate-forme Amazon SageMaker et à aider les clients à tirer le meilleur parti de ses fonctionnalités. Dans ses temps libres, il aime aller à la salle de sport, pratiquer des sports de plein air comme le snowboard ou la randonnée, et se tenir au courant des nouvelles recherches sur l’IA.