Entraînement d’un modèle dans Amazon SageMaker - Amazon SageMaker AI

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.

Entraînement d’un modèle dans Amazon SageMaker

L’entraînement Amazon SageMaker est un service de machine learning (ML) entièrement géré proposé par SageMaker qui vous aide à entraîner efficacement un large éventail de modèles de ML à grande échelle. Le cœur des tâches de SageMaker AI est la conteneurisation des charges de travail ML et la capacité de gérer les ressources de calcul AWS. La plateforme d’entraînement SageMaker prend en charge le gros du travail associé à la mise en place et à la gestion de l’infrastructure pour les charges de travail d’entraînement ML. Avec l’entraînement SageMaker, vous pouvez vous concentrer sur le développement, l’entraînement et le peaufinage de votre modèle. Cette page présente trois méthodes recommandées pour commencer à entraîner un modèle sur SageMaker, suivies des options supplémentaires que vous pouvez envisager.

Astuce

Pour plus d’informations sur les modèles de base d’entraînement pour l’IA générative, consultez Utiliser les modèles de fondation de SageMaker JumpStart dans Amazon SageMaker Studio.

Choix d’une fonctionnalité dans l’entraînement Amazon SageMaker

Il existe trois principaux cas d’utilisation pour l’entraînement de modèles ML dans SageMaker AI. Cette section décrit ces cas d’utilisation, ainsi que les fonctionnalités de SageMaker AI que nous recommandons pour chaque cas d’utilisation.

Que vous formiez des modèles de deep learning complexes ou que vous implémentiez de plus petits algorithmes de machine learning, l’entraînement SageMaker fournit des solutions rationalisées et économiques qui répondent aux exigences de vos cas d’utilisation.

Cas d’utilisation

Voici les principaux cas d’utilisation de l’entraînement de modèles ML dans SageMaker AI.

  • Cas d’utilisation 1 : développer un modèle de machine learning dans un environnement à programmation schématisée ou sans programmation.

  • Cas d’utilisation 2 : utiliser le code pour développer des modèles de machine learning offrant plus de flexibilité et de contrôle.

  • Cas d’utilisation 3 : développer des modèles de machine learning à grande échelle avec un maximum de flexibilité et de contrôle.

Le tableau suivant décrit trois scénarios courants d’entraînement de modèles ML et les options correspondantes pour démarrer avec l’entraînement SageMaker.

Descripteur Cas d’utilisation 1 Cas d’utilisation 2 Cas d’utilisation 3
Caractéristique SageMaker AI Création d’un modèle à l’aide d’Amazon SageMaker Canvas. Entraînez un modèle à l’aide de l’un des algorithmes ML intégrés à SageMaker AI, tels que XGBoost ou Modèles spécifiques aux tâches de SageMaker JumpStart avec le kit SageMaker Python SDK. Entraînez un modèle à grande échelle avec une flexibilité maximale en utilisant le mode script ou les conteneurs personnalisés de SageMaker AI.
Description Apportez vos données. SageMaker AI aide à gérer la création de modèles ML et à configurer l’infrastructure et les ressources d’entraînement.

Apportez vos données et choisissez l’un des algorithmes ML intégrés fournis par SageMaker AI. Configurez les hyperparamètres du modèle, les métriques de sortie et les paramètres d’infrastructure de base à l’aide du kit SageMaker Python SDK. La plateforme de’entraînement SageMaker permet de fournir l’infrastructure et les ressources d’entraînement.

Développez votre propre code ML et apportez-le sous forme de script ou d’ensemble de scripts à SageMaker AI. Pour en savoir plus, consultez Bonnes pratiques d’informatique distribuée avec SageMaker. De plus, vous pouvez apporter votre propre conteneur Docker. La plateforme d’entraînement SageMaker permet de fournir l’infrastructure et les ressources d’entraînement à grande échelle en fonction de vos paramètres personnalisés.

Optimisé pour

Développement de modèles à programmation schématisée ou sans programmation et piloté par l’interface utilisateur avec expérimentation rapide avec un jeu de données d’entraînement. Lorsque vous créez un modèle personnalisé, un algorithme est automatiquement sélectionné en fonction de vos données. Pour les options de personnalisation avancées telles que la sélection d’algorithmes, consultez Configurations avancées de création de modèle.

Entraînement de modèles ML dotés d’une personnalisation de haut niveau pour les hyperparamètres, les paramètres d’infrastructure et la possibilité d’utiliser directement des frameworks ML et des scripts de point d’entrée pour plus de flexibilité. Utilisez des algorithmes intégrés, des modèles pré-entraînés et des modèles JumpStart via le kit Amazon SageMaker Python SDK pour développer des modèles ML. Pour plus d’informations, consultez Déploiement à programmation schématisée avec la classe JumpStart.

Charges de travail d’entraînement ML à grande échelle, nécessitant plusieurs instances et une flexibilité maximale. Consultez Bonnes pratiques d’informatique distribuée avec SageMaker. SageMaker AI utilise des images Docker pour héberger l’entraînement et le service de tous les modèles. Vous pouvez utiliser n’importe quel algorithme SageMaker AI ou externe et utiliser des conteneurs Docker pour créer des modèles.

Considérations

Flexibilité minimale pour personnaliser le modèle fourni par Amazon SageMaker Canvas.

Le kit SageMaker Python SDK fournit une interface simplifiée et propose moins d’options de configuration par rapport à l’API d’entraînement SageMaker de bas niveau.

Nécessite une connaissance de l’infrastructure AWS et des options d’entraînement distribuées. Consultez également Création de votre propre conteneur d’entraînement à l’aide de la boîte à outils d’entraînement SageMaker.

Environnement recommandé Utilisez Amazon SageMaker Canvas. Pour apprendre à le configurer, consultez Commencer à utiliser SageMaker Canvas. Utilisez SageMaker AI JupyterLab dans Amazon SageMaker Studio. Pour apprendre à le configurer, consultez Lancer Amazon SageMaker Studio. Utilisez SageMaker JupyterLab dans Amazon SageMaker Studio. Pour apprendre à le configurer, consultez Lancer Amazon SageMaker Studio.

Options supplémentaires

SageMaker AI propose les options supplémentaires suivantes pour l’entraînement des modèles ML.

Fonctionnalités de SageMaker AI offrant des fonctionnalités d’entraînement

  • SageMaker JumpStart : SageMaker JumpStart donne accès au hub de modèles publics SageMaker AI qui contient les derniers modèles de fondation (FM) propriétaires et accessibles au public. Vous pouvez optimiser, évaluer et déployer ces modèles dans Amazon SageMaker Studio. SageMaker JumpStart rationalise le processus d’exploitation des modèles de fondation pour vos cas d’utilisation de l’IA générative et vous permet de créer des hubs de modèles privés pour utiliser les modèles de fondation tout en renforçant les barrières de protection de gouvernance et en garantissant que votre organisation ne peut accéder qu’aux modèles approuvés. Pour commencer à utiliser SageMaker JumpStart, consultez Modèles de fondation SageMaker JumpStart.

  • SageMaker HyperPod : SageMaker HyperPod est un service de cluster permanent destiné aux cas d’utilisation nécessitant des clusters résilients pour des charges de travail massives liées au machine learning (ML) et pour le développement de modèles de fondation (FM) de pointe. Il accélère le développement de tels modèles en supprimant les tâches indifférenciées liées à la création et à la maintenance de clusters de calcul à grande échelle alimentés par des milliers d’accélérateurs tels que AWS Trainium ou les processeurs graphiques (GPU) NVIDIA A100 et H100. Vous pouvez utiliser un logiciel de gestion de charge de travail tel que Slurm sur HyperPod.

Autres fonctionnalités de l’entraînement SageMaker

  • Réglage des hyperparamètres : cette fonctionnalité de SageMaker AI permet de définir un ensemble d’hyperparamètres pour un modèle et de lancer de nombreuses tâches d’entraînement sur un jeu de données. En fonction des valeurs des hyperparamètres, les performances d’entraînement des modèles peuvent varier. Cette fonctionnalité fournit l’ensemble d’hyperparamètres le plus performant dans la plage d’hyperparamètres définie pour la recherche.

  • Entraînement distribué : préentraînez ou optimisez les modèles de fondation créés avec PyTorch, NVIDIA CUDA et d’autres frameworks basés sur PyTorch. Pour utiliser efficacement les instances GPU, utilisez les bibliothèques d’entraînement distribué de SageMaker AI qui proposent des opérations de communication collectives et diverses techniques de parallélisme des modèles, telles que le parallélisme expert et le parallélisme des données partagées, optimisées pour l’infrastructure AWS.

  • Fonctionnalités d’observabilité : utilisez les fonctionnalités de profilage et de débogage de l’entraînement SageMaker pour mieux comprendre les charges de travail d’entraînement des modèles, les performances des modèles et l’utilisation des ressources. Pour en savoir plus, consultez Débogage et amélioration des performances du modèle et Profilage et optimisation des performances de calcul.

  • Options d’instance économiques et efficaces : pour optimiser les coûts de calcul et l’efficacité du provisionnement des instances d’entraînement, utilisez les Clusters hétérogènes, les Instances Spot gérées ou les Groupes d’instances pré-initialisées gérés.