Développer des algorithmes et des modèles dans Amazon SageMaker - Amazon SageMaker

Développer des algorithmes et des modèles dans Amazon SageMaker

Avant de pouvoir créer des ressources d'algorithme et de package de modèle à utiliser dans Amazon SageMaker ou à répertorier sur AWS Marketplace, vous devez les développer et les packager dans des conteneurs Docker.

Note

Une fois les algorithmes et les packages de modèles créés pour être répertoriés sur AWS Marketplace, SageMaker analyse les conteneurs afin de détecter les failles de sécurité sur les systèmes d'exploitation pris en charge.

Seules les versions de système d'exploitation suivantes sont prises en charge :

  • Debian : 6.0, 7, 8, 9, 10

  • Ubuntu : 12.04, 12.10, 13.04, 14.04, 14.10, 15.04, 15.10, 16.04, 16.10, 17.04, 17.10, 18.04, 18.10

  • CentOS : 5, 6, 7

  • Oracle Linux : 5, 6, 7

  • Alpine : 3.3, 3.4, 3.5

  • Amazon Linux

Développer des algorithmes dans SageMaker

Un algorithme doit être packagé en tant que conteneur Docker et stocké dans Amazon ECR pour être utilisé dans SageMaker. Le conteneur Docker contient le code d'entraînement utilisé pour exécuter des tâches d'entraînement et, le cas échéant, le code d'inférence utilisé pour obtenir des inférences depuis des modèles entraînés grâce à l'algorithme.

Pour obtenir des informations sur le développement d'algorithmes dans SageMaker et leur packaging en tant que conteneurs, veuillez consulter Utilisation de conteneurs Docker avec SageMaker . Pour obtenir un exemple complet sur la création d'un conteneur d'algorithme, consultez l'exemple de bloc-notes à l'adresse https://sagemaker-examples.readthedocs.io/en/latest/advanced_functionality/scikit_bring_your_own/scikit_bring_your_own.html. L'exemple de bloc-notes est également disponible dans une instance de bloc-notes SageMaker. Le bloc-notes se trouve dans la section Advanced Functionality (Fonctionnalités avancées) et s'appelle scikit_bring_your_own.ipynb. Pour obtenir des informations sur l'utilisation d'un exemple de bloc-notes dans une instance de bloc-notes, consultez Exemples de blocs-notes.

Testez toujours soigneusement vos algorithmes avant de créer des ressources d'algorithme à publier sur AWS Marketplace.

Note

Lorsqu'un acheteur s'abonne à votre produit conteneurisé, les conteneurs Docker s'exécutent dans une environnement isolé (sans Internet). Lorsque vous créez vos conteneurs, ne vous attendez pas à effectuer des appels sortants sur Internet. Les appels vers des services AWS ne sont également pas autorisés.

Développer des modèles dans SageMaker

Un modèle déployable dans SageMaker comprend un code d'inférence, des artefacts de modèle, un rôle IAM utilisé pour accéder aux ressources, ainsi que d'autres informations nécessaires au déploiement du modèle dans SageMaker. Les artefacts de modèles sont les résultats de l'entraînement d'un modèle grâce à un algorithme de machine learning. Le code d'inférence doit être packagé dans un conteneur Docker et stocké dans Amazon ECR. Vous pouvez packager les artefacts de modèle dans le même conteneur que l'inférence code, ou les stocker dans Amazon S3.

Vous créez un modèle en exécutant une tâche d'entraînement dans SageMaker, ou en entraînant un algorithme de machine learning en dehors de SageMaker. Si vous exécutez une tâche d'entraînement dans SageMaker, les artefacts de modèle obtenus sont disponibles dans le champ ModelArtifacts de la réponse à un appel à l'opération DescribeTrainingJob. Pour obtenir des informations sur le développement d'un conteneur de modèle SageMaker, veuillez consulter Utilisation de votre propre code d'inférence. Pour obtenir un exemple complet sur la création d'un conteneur de modèle depuis un modèle entraîné en dehors de SageMaker, veuillez consulter l'exemple de bloc-notes à l'adresse https://sagemaker-examples.readthedocs.io/en/latest/advanced_functionality/xgboost_bring_your_own_model/xgboost_bring_your_own_model.html. L'exemple de bloc-notes est également disponible dans une instance de bloc-notes SageMaker. Le bloc-notes se trouve dans la section Advanced Functionality (Fonctionnalités avancées) et s'appelle xgboost_bring_your_own_model.ipynb. Pour obtenir des informations sur l'utilisation d'un exemple de bloc-notes dans une instance de bloc-notes, consultez Exemples de blocs-notes.

Testez toujours soigneusement vos modèles avant de créer des packages de modèles à publier sur AWS Marketplace.

Note

Lorsqu'un acheteur s'abonne à votre produit conteneurisé, les conteneurs Docker s'exécutent dans une environnement isolé (sans Internet). Lorsque vous créez vos conteneurs, ne vous attendez pas à effectuer des appels sortants sur Internet. Les appels vers des services AWS ne sont également pas autorisés.