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.
Compilateur SageMaker de formation Amazon
Important
Amazon Web Services (AWS) annonce qu'il n'y aura aucune nouvelle version ou version de SageMaker Training Compiler. Vous pouvez continuer à utiliser SageMaker Training Compiler via les AWS Deep Learning Containers (DLCs) for SageMaker Training existants. Il est important de noter que tant que les versions existantes DLCs resteront accessibles, elles ne recevront plus de correctifs ni de mises à jour AWS, conformément à la politique de support du AWS Deep Learning Containers Framework.
Utilisez Amazon SageMaker Training Compiler pour entraîner des modèles d'apprentissage profond (DL) plus rapidement sur des instances de GPU évolutives gérées par l' SageMaker IA.
Qu'est-ce que SageMaker Training Compiler ?
State-of-the-art les modèles d'apprentissage profond (DL) sont constitués de réseaux neuronaux multicouches complexes comportant des milliards de paramètres dont l'entraînement peut prendre des milliers d'heures de GPU. L'optimisation de tels modèles sur l'infrastructure d'entraînement nécessite une connaissance approfondie de la DL et de l'ingénierie des systèmes. Cela relève même du défi pour certains cas d'utilisation. Bien qu'il existe des implémentations open source de compilateurs qui optimisent le processus d'entraînement DL, ils peuvent manquer de flexibilité pour intégrer les frameworks DL avec certains matériels tels que les instances GPU.
SageMaker Le compilateur d'entraînement est une fonctionnalité de l' SageMaker IA qui effectue ces hard-to-implement optimisations afin de réduire le temps d'entraînement sur les instances GPU. Le compilateur optimise les modèles DL pour accélérer l'entraînement en utilisant plus efficacement les instances de GPU d'apprentissage automatique (ML) basées sur l' SageMaker IA. SageMaker Le compilateur de formation est disponible sans frais supplémentaires dans SageMaker AI et peut aider à réduire le temps total facturable en accélérant la formation.

SageMaker Training Compiler est intégré aux AWS Deep Learning Containers (DLCs). À l'aide du compilateur d' SageMaker entraînement activé AWS DLCs, vous pouvez compiler et optimiser les tâches d'entraînement sur des instances de GPU en modifiant le moins possible votre code. Intégrez vos modèles d'apprentissage profond à l' SageMaker IA et permettez à SageMaker Training Compiler d'accélérer votre travail de formation sur des instances SageMaker AI ML pour accélérer le calcul.
Comment ça marche
SageMaker Training Compiler convertit les modèles DL de leur représentation linguistique de haut niveau en instructions optimisées pour le matériel. Plus précisément, SageMaker Training Compiler applique des optimisations au niveau du graphe, des optimisations au niveau du flux de données et des optimisations du backend pour produire un modèle optimisé qui utilise efficacement les ressources matérielles. Par conséquent, vous pouvez entraîner vos modèles plus rapidement que lorsque vous les entraînez sans compilation.
Il s'agit d'un processus en deux étapes pour activer SageMaker Training Compiler pour votre tâche de formation :
-
Apportez votre propre script DL et, si nécessaire, adaptez-le pour compiler et entraîner avec SageMaker Training Compiler. Pour en savoir plus, consultez Apporter votre propre modèle de deep learning.
-
Créez un objet estimateur SageMaker AI avec le paramètre de configuration du compilateur à l'aide du SDK SageMaker Python.
-
Activez le compilateur d' SageMaker entraînement en l'ajoutant
compiler_config=TrainingCompilerConfig()
à la classe d'estimateur SageMaker AI. -
Ajustez les hyperparamètres (
batch_size
etlearning_rate
) pour optimiser les avantages fournis par SageMaker Training Compiler.La compilation via SageMaker Training Compiler modifie l'empreinte mémoire du modèle. Le plus souvent, cela se traduit par une réduction de l'utilisation de la mémoire et par une augmentation consécutive de la plus grande taille de lot pouvant être stockée sur le GPU. Dans certains cas, le compilateur favorise intelligemment la mise en cache, ce qui entraîne une diminution de la plus grande taille de lot pouvant être stockée sur le GPU. Notez que si vous souhaitez modifier la taille du lot, vous devez ajuster le taux d'entraînement de manière appropriée.
Pour connaître une référence de test de
batch_size
pour les modèles les plus populaires, consultez Modèles testés.Lorsque vous ajustez la taille du lot, vous devez également ajuster le
learning_rate
de manière appropriée. Pour connaître les bonnes pratiques d'ajustement du taux d'apprentissage en fonction de la modification de la taille du lot, consultez SageMaker Bonnes pratiques et considérations relatives à la formation des compilateurs. -
En exécutant la méthode
estimator.fit()
de classe, l' SageMaker IA compile votre modèle et lance le travail de formation.
Pour savoir comment lancer une tâche d'entraînement, consultez Activer le compilateur SageMaker d'entraînement.
-
SageMaker Training Compiler ne modifie pas le modèle entraîné final, tout en vous permettant d'accélérer le travail d'entraînement en utilisant plus efficacement la mémoire du GPU et en adaptant une taille de lot plus importante par itération. Le modèle entraîné final de la tâche d'entraînement accélérée par le compilateur est identique à celui de la tâche d'entraînement ordinaire.
Astuce
SageMaker Training Compiler compile uniquement les modèles DL pour l'entraînement sur des instances GPU prises en charge et gérées par l' SageMaker IA. Pour compiler votre modèle à des fins d'inférence et le déployer pour qu'il s'exécute n'importe où dans le cloud et à la périphérie, utilisez le compilateur SageMaker Neo.