Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide avec le nouveau mode de formation d'ensemble optimisé par AutoGluon

Pilote automatique Amazon SageMaker a ajouté un nouveau mode de formation qui prend en charge l'assemblage de modèles alimenté par AutoGluon. Le mode d'entraînement d'ensemble dans Autopilot entraîne plusieurs modèles de base et combine leurs prédictions à l'aide de l'empilement de modèles. Pour les ensembles de données de moins de 100 Mo, le mode d'entraînement d'ensemble crée rapidement des modèles d'apprentissage automatique (ML) avec une grande précision : jusqu'à huit fois plus rapidement que le mode d'entraînement d'optimisation des hyperparamètres (HPO) avec 250 essais, et jusqu'à 5.8 fois plus rapidement que le mode d'entraînement HPO avec 100 essais. Il prend en charge un large éventail d'algorithmes, notamment LightGBM, CatBoost, XGBoost, Random Forest, Extra Trees, des modèles linéaires et des réseaux de neurones basés sur PyTorch et FastAI.

Comment AutoGluon construit des modèles d'ensemble

AutoGluon-Tableau (AGT) est un framework AutoML open source populaire qui forme des modèles ML très précis sur des ensembles de données tabulaires. Contrairement aux frameworks AutoML existants, qui se concentrent principalement sur la sélection de modèles et d'hyperparamètres, AGT réussit en assemblant plusieurs modèles et en les empilant sur plusieurs couches. Le comportement par défaut d'AGT peut être résumé comme suit : étant donné un ensemble de données, AGT forme divers modèles de base allant des arbres boostés prêts à l'emploi aux réseaux de neurones personnalisés sur l'ensemble de données. Les prédictions des modèles de base sont utilisées comme caractéristiques pour construire un modèle d'empilement, qui apprend le poids approprié de chaque modèle de base. Avec ces pondérations apprises, le modèle d'empilement combine ensuite les prédictions du modèle de base et renvoie les prédictions combinées comme ensemble final de prédictions.

Fonctionnement du mode d'entraînement d'ensemble du pilote automatique

Différents ensembles de données ont des caractéristiques qui conviennent à différents algorithmes. Étant donné un ensemble de données aux caractéristiques inconnues, il est difficile de savoir à l'avance quels algorithmes fonctionneront le mieux sur un ensemble de données. Dans cet esprit, les scientifiques des données utilisant AGT créent souvent plusieurs configurations personnalisées avec un sous-ensemble d'algorithmes et de paramètres. Ils exécutent ces configurations sur un jeu de données donné pour trouver la meilleure configuration en termes de performances et de latence d'inférence.

Autopilot est un produit ML low-code qui crée automatiquement les meilleurs modèles ML pour vos données. Dans le nouveau mode de formation d'ensemble, le pilote automatique sélectionne un ensemble optimal de configurations AGT et exécute plusieurs essais pour renvoyer le meilleur modèle. Ces essais sont menés en parallèle pour évaluer si les performances d'AGT peuvent encore être améliorées, en termes de mesures objectives ou de latence d'inférence.

Résultats observés à l'aide des benchmarks OpenML

Pour évaluer les améliorations de performances, nous avons utilisé des ensembles de données de référence OpenML avec des tailles variant de 0.5 à 100 Mo et effectué 10 essais AGT avec différentes combinaisons d'algorithmes et de configurations d'hyperparamètres. Les tests ont comparé le mode d'entraînement d'ensemble au mode HPO avec 250 essais et le mode HPO avec 100 essais. Le tableau suivant compare la durée d'exécution globale de l'expérience Autopilot (en minutes) entre les deux modes d'entraînement pour différentes tailles d'ensembles de données.

Taille de l'ensemble de données Mode HPO (250 essais) Mode HPO (100 essais) Mode Ensemble (10 essais) Amélioration de l'exécution avec HPO 250 Amélioration de l'exécution avec HPO 100
< 1 Mo 121.5 mins 88.0 mins 15.0 mins 8.1x 5.9x
1–10 Mo 136.1 mins 76.5 mins 25.8 mins 5.3x 3.0x
10–100 Mo 152.7 mins 103.1 mins 60.9 mins 2.5x 1.7x

Pour comparer les performances des problèmes de classification multiclasses, nous utilisons la précision, pour les problèmes de classification binaire, nous utilisons le score F1 et pour les problèmes de régression, nous utilisons R2. Les gains en mesures objectives sont présentés dans les tableaux suivants. Nous avons observé que le mode d'entraînement d'ensemble fonctionnait mieux que le mode d'entraînement HPO (100 et 250 essais).

Notez que le mode ensemble montre une amélioration constante par rapport au mode HPO avec 250 essais, quels que soient la taille de l'ensemble de données et les types de problèmes.

Le tableau suivant compare la précision des problèmes de classification multi-classes (plus c'est élevé, mieux c'est).

Taille de l'ensemble de données Mode HPO (250 essais) Mode HPO (100 essais) Mode Ensemble (10 essais) Pourcentage d'amélioration par rapport à HPO 250
< 1 Mo 0.759 0.761 0.771 1.46%
1–5 Mo 0.941 0.935 0.957 1.64%
5–10 Mo 0.639 0.633 0.671 4.92%
10–50 Mo 0.998 0.999 0.999 0.11%
51–100 Mo 0.853 0.852 0.875 2.56%

Le tableau suivant compare les scores F1 pour les problèmes de classification binaire (plus c'est élevé, mieux c'est).

Taille de l'ensemble de données Mode HPO (250 essais) Mode HPO (100 essais) Mode Ensemble (10 essais) Pourcentage d'amélioration par rapport à HPO 250
< 1 Mo 0.801 0.807 0.826 3.14%
1–5 Mo 0.59 0.587 0.629 6.60%
5–10 Mo 0.886 0.889 0.898 1.32%
10–50 Mo 0.731 0.736 0.754 3.12%
51–100 Mo 0.503 0.493 0.541 7.58%

Le tableau suivant compare R2 pour les problèmes de régression (plus c'est élevé, mieux c'est).

Taille de l'ensemble de données Mode HPO (250 essais) Mode HPO (100 essais) Mode Ensemble (10 essais) Pourcentage d'amélioration par rapport à HPO 250
< 1 Mo 0.717 0.718 0.716 0%
1–5 Mo 0.803 0.803 0.817 2%
5–10 Mo 0.590 0.586 0.614 4%
10–50 Mo 0.686 0.688 0.684 0%
51–100 Mo 0.623 0.626 0.631 1%

Dans les sections suivantes, nous montrons comment utiliser le nouveau mode de formation d'ensemble dans Autopilot pour analyser des ensembles de données et créer facilement des modèles ML de haute qualité.

Aperçu de l'ensemble de données

Nous utilisons les Jeu de données Titanic pour prédire si un passager donné a survécu ou non. Il s'agit d'un problème de classification binaire. Nous nous concentrons sur la création d'une expérience de pilote automatique à l'aide du nouveau mode d'entraînement d'ensemble et comparons les résultats du score F1 et de la durée d'exécution globale avec une expérience de pilote automatique utilisant le mode d'entraînement HPO (100 essais).

Nom de colonne Description
ID passager Numéro d'identification
Survécu Survival
Pclasse Classe de billets
Nom Nom du passager
Relations sexuelles Relations sexuelles
Âge Age en années
Sibsp Nombre de frères et sœurs ou de conjoints à bord du Titanic
Dessécher Nombre de parents ou d'enfants à bord du Titanic
Ticket Numéro de billet
Réussir Tarif passager
Cabane Numéro de cabine
Embarqué Port d'Embarquation

Le jeu de données comporte 890 lignes et 12 colonnes. Il contient des informations démographiques sur les passagers (âge, sexe, classe de billet, etc.) et la colonne cible Survived (oui/non).

Pré-requis

Effectuez les étapes préalables suivantes :

  1. Assurez-vous d'avoir un compte AWS, un accès sécurisé pour vous connecter au compte via le Console de gestion AWSet une Gestion des identités et des accès AWS (IAM) autorisations à utiliser Amazon Sage Maker ainsi que Service de stockage simple Amazon (Amazon S3).
  2. Télécharger Jeu de données Titanic ainsi que chargez-le dans un compartiment S3 à votre compte.
  3. Intégration à un domaine SageMaker et accès Amazon SageMakerStudio pour utiliser le pilote automatique. Pour obtenir des instructions, reportez-vous Intégration au domaine Amazon SageMaker. Si vous utilisez Studio existant, effectuez une mise à niveau vers la dernière version de Studio pour utiliser le nouveau mode d'entraînement d'ensemble.

Créer une expérience de pilote automatique avec le mode d'entraînement d'ensemble

Lorsque l'ensemble de données est prêt, vous pouvez initialiser une expérience AutoPilot dans Studio. Pour des instructions complètes, reportez-vous à Créer une expérience Amazon SageMaker Autopilot. Créez une expérience de pilote automatique en fournissant un nom d'expérience, l'entrée de données et en spécifiant les données cibles à prédire dans le Détails de l'expérience et des données section. Si vous le souhaitez, vous pouvez spécifier le taux de déversement de données et la création automatique de l'emplacement de sortie Amazon S3.

Pour notre cas d'utilisation, nous fournissons un nom d'expérience, saisissons l'emplacement Amazon S3 et choisissons Survécu comme cible. Nous gardons le fractionnement automatique activé et remplaçons l'emplacement de sortie Amazon S3 par défaut.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Ensuite, nous spécifions la méthode de formation dans le Méthode de formation section. Vous pouvez soit laisser le pilote automatique sélectionner automatiquement le mode d'entraînement à l'aide de Automatique en fonction de la taille de l'ensemble de données, ou sélectionnez manuellement le mode de formation pour l'assemblage ou le HPO. Les détails de chaque option sont les suivants :

  • Automatique – Le pilote automatique choisit automatiquement le mode d'assemblage ou le mode HPO en fonction de la taille de votre jeu de données. Si votre jeu de données est supérieur à 100 Mo, Autopilot choisit HPO, sinon il choisit l'assemblage.
  • Assemblage – Utilisations du pilote automatique AutoGluonLa technique d'assemblage de permet d'entraîner plusieurs modèles de base et de combiner leurs prédictions à l'aide de l'empilement de modèles dans un modèle prédictif optimal.
  • Optimisation hyperparamétrique – Le pilote automatique trouve la meilleure version d'un modèle en réglant les hyperparamètres à l'aide de la technique d'optimisation bayésienne et en exécutant des tâches de formation sur votre jeu de données. HPO sélectionne les algorithmes les plus pertinents pour votre ensemble de données et sélectionne la meilleure gamme d'hyperparamètres pour ajuster les modèles.

Pour notre cas d'utilisation, nous sélectionnons Assemblage comme mode d'entraînement.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Après cela, nous procédons à la Déploiement et paramètres avancés section. Ici, on désélectionne le Déploiement automatique option. En dessous de paramètres avancés, vous pouvez spécifier le type de problème de ML que vous souhaitez résoudre. Si rien n'est fourni, Autopilot détermine automatiquement le modèle en fonction des données que vous fournissez. Parce que notre problème est un problème de classification binaire, nous choisissons Classement binaire comme type de problème et F1 comme notre mesure objective.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Enfin, nous passons en revue nos sélections et choisissons Créer une expérience.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

À ce stade, vous pouvez quitter Studio en toute sécurité et revenir plus tard pour vérifier le résultat, que vous pouvez trouver sur le Expériences menu.

La capture d'écran suivante montre les résultats finaux de notre travail de pilote automatique en mode de formation d'ensemble titanic-ens.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez voir les multiples essais qui ont été tentés par le pilote automatique en mode d'entraînement d'ensemble. Chaque essai renvoie le meilleur modèle à partir du pool d'exécutions de modèles individuels et d'exécutions de modèles d'ensemble d'empilement.

Pour expliquer cela un peu plus loin, supposons que l'essai 1 ait pris en compte les huit algorithmes pris en charge et utilisé le niveau d'empilement 2. Il créera en interne les modèles individuels pour chaque algorithme ainsi que les modèles d'ensemble pondérés avec les niveaux de pile 0, niveau 1 et niveau 2. Cependant, la sortie de l'essai 1 sera le meilleur modèle du pool de modèles créés.

De même, considérons que l'essai 2 n'a sélectionné que des algorithmes de renforcement basés sur des arbres. Dans ce cas, l'essai 2 créera en interne trois modèles individuels pour chacun des trois algorithmes ainsi que les modèles d'ensemble pondérés, et renverra le meilleur modèle de son exécution.

Le modèle final renvoyé par un essai peut ou non être un modèle d'ensemble pondéré, mais la majorité des essais renverront très probablement leur meilleur modèle d'ensemble pondéré. Enfin, sur la base de la métrique objective sélectionnée, le meilleur modèle parmi les 10 essais sera identifié.

Dans l'exemple précédent, notre meilleur modèle était celui avec le score F1 le plus élevé (notre métrique objective). Plusieurs autres mesures utiles, notamment l'exactitude, l'exactitude équilibrée, la précision et le rappel, sont également présentées. Dans notre environnement, la durée d'exécution de bout en bout de cette expérience de pilote automatique était de 10 minutes.

Créer une expérience de pilote automatique avec le mode d'entraînement HPO

Effectuons maintenant toutes les étapes susmentionnées pour créer une deuxième expérience de pilote automatique avec la méthode de formation HPO (100 essais par défaut). Outre le choix de la méthode de formation, qui est désormais Optimisation hyperparamétrique, Tout le reste demeure inchangé. En mode HPO, vous pouvez spécifier le nombre d'essais en réglant Candidats maximum sous paramètres avancés en Runtime, mais nous vous recommandons de laisser cette valeur par défaut. Ne fournissant aucune valeur dans Candidats maximum effectuera 100 essais HPO. Dans notre environnement, la durée d'exécution de bout en bout de cette expérience de pilote automatique était de 2 heures.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Comparaison des métriques d'exécution et de performance

Nous constatons que pour notre ensemble de données (moins de 1 Mo), non seulement le mode d'entraînement d'ensemble a fonctionné 12 fois plus rapidement que le mode d'entraînement HPO (120 minutes à 10 minutes), mais il a également produit des scores F1 améliorés et d'autres mesures de performance.

Mode entraînement Score F1 Précision Précision équilibrée ASC La précision Rappeler Perte de journal Runtime
Mode Ensemble - Ensemble pondéré 0.844 0.878 0.865 0.89 0.912 0.785 0.394 10 mins
Mode HPO – XGBoost 0.784 0.843 0.824 0.867 0.831 0.743 0.428 120 mins

Inférence

Maintenant que nous avons un modèle gagnant, nous pouvons soit déployez-le sur un point de terminaison pour une inférence en temps réel or utiliser des transformations par lots pour faire des prédictions sur l'ensemble de données non étiqueté que nous avons téléchargé plus tôt.

Résumé

Vous pouvez exécuter vos expériences Autopilot plus rapidement sans aucun impact sur les performances grâce au nouveau mode d'entraînement d'ensemble pour les ensembles de données inférieurs à 100 Mo. Pour commencer, créer une expérience SageMaker Autopilot sur la console Studio et sélectionnez Assemblage comme mode d'entraînement ou laissez Autopilot déduire automatiquement le mode d'entraînement en fonction de la taille de l'ensemble de données. Vous pouvez vous référer au Guide de référence de l'API CreateAutoMLJob pour les mises à jour de l'API et mise à niveau vers dernière version de Studio pour utiliser le nouveau mode d'entraînement d'ensemble. Pour plus d'informations sur cette fonctionnalité, voir Prise en charge, métriques et validation des modèles avec Amazon SageMaker Autopilot et pour en savoir plus sur le pilote automatique, visitez le page produit.


À propos des auteurs

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Janisha Anand est chef de produit senior au sein de l'équipe SageMaker Low/No Code ML, qui comprend SageMaker Autopilot. Elle aime le café, rester active et passer du temps avec sa famille.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Saket Sathé est Senior Applied Scientist dans l'équipe SageMaker Autopilot. Il est passionné par la construction de la prochaine génération d'algorithmes et de systèmes d'apprentissage automatique. En plus du travail, il aime lire, cuisiner, siroter des ramen et jouer au badminton.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Abhishek Singh est ingénieur logiciel pour l'équipe Autopilot d'AWS. Il a plus de 8 ans d'expérience en tant que développeur de logiciels et est passionné par la création de solutions logicielles évolutives qui résolvent les problèmes des clients. Pendant son temps libre, Abhishek aime rester actif en faisant des randonnées ou en participant à des matchs de football.

Amazon SageMaker Autopilot est jusqu'à huit fois plus rapide grâce au nouveau mode de formation d'ensemble optimisé par AutoGluon PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Vadim Omeltchenko est un architecte principal de solutions AI/ML qui se passionne pour aider les clients AWS à innover dans le cloud. Son expérience informatique antérieure était principalement sur le terrain.

Horodatage:

Plus de Apprentissage automatique AWS