Modes d'entraînement et prise en charge des algorithmes - Amazon SageMaker

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Modes d'entraînement et prise en charge des algorithmes

Autopilot prend en charge différents modes et algorithmes d'entraînement pour résoudre les problèmes de machine learning, établir des rapports sur la qualité et les métriques d'objectif, et utiliser automatiquement la validation croisée, si nécessaire.

Modes d'entraînement

SageMaker Le pilote automatique peut sélectionner automatiquement la méthode d'entraînement en fonction de la taille du jeu de données, ou vous pouvez la sélectionner manuellement. Les options sont les suivantes :

  • Assemblage — Le pilote automatique utilise la AutoGluonbibliothèque pour entraîner plusieurs modèles de base. Pour trouver la meilleure combinaison pour votre jeu de données, le mode Assemblage exécute 10 essais avec différentes valeurs de modèle et de méta-paramètres. Autopilot combine ensuite ces modèles à l'aide d'une méthode d'assemblage par empilement pour créer un modèle prédictif optimal. Pour obtenir la liste des algorithmes pris en charge par Autopilot en mode ensembliste pour les données tabulaires, consultez la section Prise en charge des algorithmes suivante.

  • Hyperparameter optimization (HPO) (Optimisation des hyperparamètres (HPO)) : Autopilot identifie la meilleure version d'un modèle en ajustant les hyperparamètres à l'aide de l'optimisation bayésienne ou de l'optimisation multifidélité tout en exécutant des tâches d'entraînement sur votre jeu de données. Le mode HPO sélectionne les algorithmes les plus pertinents pour votre jeu de données et la meilleure gamme d'hyperparamètres pour ajuster vos modèles. Pour ajuster vos modèles, le mode HPO exécute jusqu'à 100 essais (par défaut) afin de trouver les valeurs d'hyperparamètres optimales dans la plage sélectionnée. Si la taille de votre jeu de données est inférieure à 100 Mo, Autopilot utilise l'optimisation bayésienne. Autopilot choisit l'optimisation multifidélité si la taille de votre jeu de données est supérieure à 100 Mo.

    Dans le cadre de l'optimisation multifidélité, des métriques sont émises en continu à partir des conteneurs d'entraînement. Un essai dont les performances sont médiocres par rapport à une métrique objective sélectionnée est arrêté prématurément. Plus de ressources sont allouées à un essai dont les performances sont bonnes.

    Pour obtenir la liste des algorithmes pris en charge par Autopilot en mode HPO, consultez la section Prise en charge des algorithmes suivante.

  • Auto (Automatique) : Autopilot choisit automatiquement le mode Ensembling (Assemblage) ou le mode HPO en fonction de la taille de votre jeu de données. Si la taille de votre jeu de données est supérieure à 100 Mo, Autopilot choisit HPO. Dans le cas contraire, il choisit le mode Assemblage. Autopilot peut ne pas parvenir à lire la taille de votre jeu de données dans les cas suivants.

    • Si vous activez le mode cloud privé virtuel (VPC) pour une tâche AutoML, le compartiment S3 contenant le jeu de données autorise uniquement l'accès à partir du VPC.

    • L'entrée S3 DataType de votre ensemble de données est unManifestFile.

    • L'entrée S3Uri contient plus de 1 000 éléments.

    Si Autopilot ne parvient pas à lire la taille de votre jeu de données, il choisit par défaut le mode HPO.

Note

Pour une exécution et des performances optimales, utilisez le mode d'entraînement par assemblage pour les jeux de données de moins de 100 Mo.

Prise en charge des algorithmes

En mode HPO, Autopilot prend en charge les types d'algorithmes de machine learning suivants :

  • Apprentissage linéaire : algorithme d'apprentissage supervisé pouvant résoudre des problèmes de classification ou de régression.

  • XGBoost : algorithme d'apprentissage supervisé qui tente de prédire avec précision une variable cible en combinant un ensemble d'estimations à partir d'un jeu de modèles plus simples et plus faibles.

  • Algorithme de deep learning : perceptron multicouche (MLP) et réseau neuronal artificiel à action directe. Cet algorithme traite les données qui ne sont pas linéairement séparables.

Note

Vous ne devez pas nécessairement spécifier un algorithme pour résoudre votre problème de machine learning. Autopilot sélectionne automatiquement l'algorithme qu'il convient d'entraîner.

En mode ensembliste, Autopilot prend en charge les types d'algorithmes de machine learning suivants :

  • LightGBM : framework optimisé qui utilise des algorithmes arborescents avec renforcement de gradient. Cet algorithme utilise des arborescences qui se développent en largeur plutôt qu'en profondeur, et est hautement optimisé en termes de vitesse.

  • CatBoost— Un framework qui utilise des algorithmes basés sur des arbres avec augmentation du gradient. Optimisé pour la gestion des variables catégorielles.

  • XGBoost : framework qui utilise des algorithmes arborescents avec renforcement de gradient qui se développent en largeur plutôt qu'en profondeur.

  • Random Forest (Forêt aléatoire) : algorithme arborescent qui utilise plusieurs arbres de décision sur des sous-échantillons aléatoires des données avec remplacement. Les arbres sont divisés en nœuds optimaux à chaque niveau. La moyenne des décisions de chaque arbre est calculée afin d'éviter tout surajustement et d'améliorer les prédictions.

  • Extra Trees (Arbres supplémentaires) : algorithme arborescent qui utilise plusieurs arbres de décision sur l'ensemble du jeu de données. Les arbres sont divisés aléatoirement à chaque niveau. La moyenne des décisions de chaque arbre est calculée afin d'éviter tout surajustement et d'améliorer les prédictions. Les arbres supplémentaires ajoutent un degré de randomisation par rapport à l'algorithme Random Forest (Forêt aléatoire).

  • Linear Models (Modèles linéaires) : framework qui utilise une équation linéaire pour modéliser la relation entre deux variables dans les données observées.

  • Neural network torch (Réseau neuronal torch) : modèle de réseau neuronal implémenté à l'aide de Pytorch.

  • Neural network fast.ai (Réseau neuronal fast.ai) : modèle de réseau neuronal implémenté à l'aide de fast.ai.