Création

Blocs-notes gérés pour la création de modèles

Amazon SageMaker propose des instances entièrement gérées qui exécutent des blocs-notes Jupyter pour l'exploration et le prétraitement des données de formation. Ces blocs-notes sont équipés de pilotes CUDA et cuDNN pour les plates-formes populaires de deep learning, de packages Anaconda et de bibliothèques pour TensorFlow, Apache MXNet, Chainer et PyTorch.

D'un simple clic, vous avez accès à un environnement de bloc-notes ML entièrement géré qui utilise le format libre de bloc-notes populaire, Jupyter.

Ces espaces de travail sur bloc-notes vous permettent d'explorer et de visualiser vos données et de documenter vos découvertes dans des flux de travail réutilisables, en utilisant virtuellement toutes les bibliothèques, les frameworks et les interfaces populaires. Depuis le bloc-notes, vous pouvez choisir d'importer vos propres données déjà stockées dans Amazon S3. Vous pouvez également utiliser AWS Glue pour transférer facilement vos données depuis Amazon RDS, Amazon DynamoDB et Amazon Redshift vers S3 afin qu'elles soient analysées. Vous pouvez écrire ou importer votre propre bloc-notes, ou utiliser l'un des nombreux bloc-notes déjà préparés et préinstallés dans Amazon SageMaker. Les bloc-notes déjà préparés sont disponibles quel que soit l'algorithme ML intégré. En outre, des modèles de bloc-notes sont disponibles pour vous aider à démarrer avec les applications ML les plus courantes et des fonctionnalités plus avancées d'Amazon SageMaker.

Modèles pour les applications ML courantes

Modèles pour les fonctionnalités avancées d'Amazon SageMaker

Prévision de séries chronologiques

Fournissez vos propres conteneurs TensorFlow, MXNet et Chainer

Marketing direct ciblé

Utilisez votre propre scikit, ou algorithme avec R, ou modèle

Prévision de la perte de clientèle

Partage de données pour la formation partagée

Algorithmes haute performance intégrés

Amazon SageMaker fournit des algorithmes ML haute performance scalables, optimisés en termes de rapidité, d'échelle et de précision. Ces algorithmes peuvent effectuer des formations au niveau d'un ensemble de données en pétaoctets, et offrent une performance jusqu'à 10 x supérieure à celle d'autres réalisations. Vous pouvez sélectionner un algorithme supervisé (les bonnes réponses sont dévoilées pendant la formation) et indiquer la marche à suivre au modèle là où il a commis des erreurs. Amazon SageMaker comprend des algorithmes supervisés tels que XGBoost et la régression ou classification linéaire/logistique, pour faire face aux problèmes de recommandation et de prévision des séries chronologiques. Amazon SageMaker s'occupe également de la prise en charge de l'apprentissage non supervisé (c. à d. que les algorithmes doivent trouver eux-mêmes les bonnes réponses), par exemple avec le partitionnement en k-moyennes et l'analyse des composants principaux (PCA), pour résoudre des problèmes tels que l'identification de groupes de clients en fonction du comportement d'achat.

Amazon SageMaker met automatiquement à votre disposition les algorithmes d'apprentissage automatique les plus courants. Il vous suffit de préciser la source de vos données, et vous pouvez procéder sans attendre à l'exécution du partitionnement en k-moyennes pour la segmentation de vos données, de machines de factorisation pour les recommandations, des prévisions de séries chronologiques, de la régression linéaire ou de l'analyse des composants principaux.

BlazingText Word2Vec Implémentation BlazingText de l'algorithme Word2Vec pour le dimensionnement et l'accélération de la génération de plongements de mots extraits d'une multitude de documents.
DeepAR Un algorithme qui génère des prévisions précises en apprenant des modèles issus de nombreuses séries chronologiques liées à l'aide de réseaux de neurones récurrents.
Machines de factorisation Modèle capable d'estimer toute interaction entre les fonctions, et ce même à partir d'un petit volume de données.
Arborescences de gradients améliorés (XGBoost) Diminutif d'« Extreme Gradient Boosting ». XGBoost est une bibliothèque d'amélioration des gradients optimisée et partagée.
Classification d'images (ResNet) Un réseau neuronal populaire pour le développement de systèmes de classification d'images.
Partitionnement en k-moyennes C'est l'un des algorithmes ML les plus simples. Il est utilisé afin d'identifier des groupes au sein de données non étiquetées.

Allocation de Dirichlet latente (LDA)

Modèle idéal pour l'identification automatique des principales rubriques présentes dans un ensemble de fichiers texte.
Linear Learner (classification) La classification linéaire se sert des caractéristiques d'un objet pour identifier le groupe auquel il appartient.
Linear Learner (régression) La régression linéaire est utilisée pour estimer la relation linéaire entre deux variables.
Modélisation de rubriques par réseau neuronal (NTM) Approche basée sur un réseau neuronal qui identifie des rubriques au sein d'ensembles de données texte ou image.
Analyse des composants principaux (PCA) Souvent utilisé pour le prétraitement des données, cet algorithme s'attaque à une table ou un tableau contenant de nombreuses caractéristiques pour les réduire à seulement quelques fonctions essentielles.
Random Cut Forest Un algorithme d'apprentissage automatique non supervisé permettant de détecter les anomalies.
Seqence2Sequence Encodeur-décodeur à usage général pour du texte, souvent utilisé dans la traduction automatique, la synthèse de textes, etc.
k-Nearest-Neighbor (kNN) Un modèle non paramétrique conçu pour résoudre les problèmes de classification et de régression.
Détection d'objet
Détecte, classe et place des boîtes de délimitation autour d'objets multiples dans une image.

Ces algorithmes ont été optimisés pour que leur performance soit jusqu'à 10 x plus rapide que celle obtenue lors de réalisations traditionnelles. Nous avons notamment mis en œuvre ces algorithmes de manière à ce qu'ils n'aient pas à revenir en arrière pour analyser des données déjà traitées. Généralement, les algorithmes repassent de nombreuses fois sur votre ensemble de données afin d'en répertorier les données antérieures. Cela fonctionne bien sur de petits ensembles de données, mais le résultat de performance obtenu sur d'importants ensembles de données peut considérablement ralentir la formation. Si vous configurez un passage unique, vous pouvez former de manière efficace et rentable des ensembles de données à l'échelle du pétaoctet.

Prise en charge étendue des frameworks

Amazon SageMaker configure et optimise automatiquement TensorFlow, Apache MXNet, Chainer et PyTorch pour que vous n'ayez rien à configurer pour commencer à utiliser ces frameworks, et nous comptons intégrer d'autres frameworks importants dans les mois à venir. Cependant, vous êtes toujours libre d'ajouter le framework de votre choix dans Amazon SageMaker : il vous suffit de le développer sur un conteneur Docker et de stocker celui-ci dans Amazon EC2 Container Registry.

Test et prototype locaux

Les conteneurs Docker open source Apache MXNet et Tensorflow utilisés dans Amazon SageMaker sont disponibles sur Github. Vous pouvez télécharger ces conteneurs dans votre environnement local et utiliser le kit SDK Amazon SageMaker Python pour tester vos scripts avant de les déployer dans des environnements d'entraînement ou d'hébergement Amazon SageMaker. Lorsque vous êtes prêt à passer du test local à la production, la formation et l'hébergement, la modification d'une seule ligne de code suffit. 

Formation

Formation en un clic

Lorsque vous êtes prêt à former dans Amazon SageMaker, indiquez simplement l'emplacement de vos données dans Amazon S3, ainsi que le type et la quantité d'instances ML Amazon SageMaker dont vous avez besoin, et démarrez dans la console en un seul clic. Amazon SageMaker configure un cluster de calcul partagé, effectue la formation, transmet le résultat à Amazon S3, puis supprime le cluster.

Il est facile de former des modèles avec Amazon SageMaker : vous devez simplement indiquer l'emplacement de vos données dans S3, et Amazon SageMaker exécute votre algorithme dans un cluster de formation isolé au sein de son propre réseau défini par logiciel, configuré selon vos besoins. Vous n'avez qu'à choisir le type d'instance (y compris les instances GPU P3, qui sont idéales pour une formation rapide et efficace), et Amazon SageMaker s'occupe de créer votre cluster dans un groupe à scalabilité automatique, d'attacher des volumes EBS à chaque nœud, de configurer les pipelines de données et de démarrer la formation avec votre script TensorFlow, MXNet, Chainer ou PyTorch, avec les algorithmes propres d'Amazon ou avec les algorithmes fournis par votre propre conteneur. Une fois le processus terminé, il transmet les résultats à S3 et détruit automatiquement le cluster.

Pour faciliter la formation à l'échelle, nous avons optimisé le flux des données qui proviennent de S3. Par l'intermédiaire de l'API, vous pouvez préciser si vous préférez que toutes les données soient envoyées à chaque nœud dans le cluster, ou qu'Amazon SageMaker gère la distribution des données aux nœuds en fonction des besoins de votre algorithme.

Associée aux algorithmes intégrés, la scalabilité de la formation rendue possible par Amazon SageMaker peut considérablement réduire le temps et les frais de ces formations.

Automatic Model Tuning

Amazon SageMaker peut régler automatiquement votre modèle en configurant des milliers de combinaisons de paramètres d'algorithmes différentes, afin de parvenir aux prévisions les plus précises que le modèle soit capable de produire.

Lorsque vous réglez votre modèle pour qu'il soit plus précis, deux étapes sont essentielles : modifier les données entrantes que vous fournissez au modèle (en prenant par exemple le journal d'un nombre), et ajuster les paramètres de l'algorithme. Ceux-ci sont appelés hyperparamètres, et il est parfois difficile de trouver les bonnes valeurs. Généralement, vous commencez par une valeur aléatoire, et vous répétez l'opération au fur et à mesure des ajustements lorsque vous commencez à mesurer l'impact des modifications. En fonction du nombre d'hyperparamètres de votre modèle, ce cycle peut être long.

Amazon SageMaker simplifie tout cela en proposant Automatic Model Tuning sous forme d'option pendant la formation. Amazon SageMaker va en fait utiliser le Machine Learning pour ajuster votre modèle de Machine Learning. Elle fonctionne en identifiant les éléments susceptibles d’avoir une influence sur les différents types de données d’un modèle, puis en appliquant cette connaissance à plusieurs copies de ce modèle afin de rechercher rapidement le meilleur résultat possible. Cela signifie qu'en tant que développeur ou spécialiste des données, vous n'avez qu'une seule véritable préoccupation : les ajustements que vous souhaitez apporter aux données avec lesquelles vous alimentez le modèle, ce qui réduit considérablement le nombre de sujets qui pourraient vous inquiéter pendant la formation.

Lors de l'initiation d'Automatic Model Tuning, vous spécifiez simplement le nombre de tâches de formation par l'intermédiaire de l'API et Amazon Sagemaker gère le reste.

Déploiement

Déploiement en un clic

Vous pouvez déployer vos modèles en un clic sur des instances ML Amazon à scalabilité automatique dans de nombreuses zones de disponibilité, pour obtenir une forte redondance. Spécifiez simplement le type d'instances et le nombre minimum et maximum souhaité. Amazon SageMaker s'occupe du reste. Il lance les instances, déploie votre modèle et configure le point de terminaison HTTPS sécurisé pour votre application. Votre application doit simplement inclure un appel d'API à ce point de terminaison pour obtenir une inférence à faible latence et haut débit. Cette architecture vous permet d'intégrer en quelques minutes vos nouveaux modèles dans votre application, car pour modifier le modèle, il n'est plus nécessaire de changer le code de l'application.

Test A/B automatique

Amazon SageMaker peut également gérer pour vous le test d'un modèle A/B. Vous pouvez configurer le point de terminaison afin de répartir le trafic sur un maximum de cinq modèles, et fixer pour chacun d'entre eux le pourcentage d'appels d'inférence que vous souhaitez qu'ils gèrent. Vous pouvez modifier ces paramètres à tout moment, ce qui vous offre la flexibilité nécessaire pour effectuer des expériences et identifier le modèle qui donne les résultats les plus précis en réalité.

Hébergement entièrement géré avec Auto Scaling

Amazon SageMaker gère votre infrastructure de calcul de la production à votre place et réalise des vérifications de l'état, applique des correctifs de sécurité et effectue d'autres tâches courantes d'entretien grâce à la surveillance et à la journalisation intégrées d'Amazon CloudWatch.

Batch Transform

Batch Transform vous permet d'exécuter des prédictions sur des données de lots de grande ou de petite taille. Il n'est pas nécessaire de décomposer l'ensemble de données en plusieurs morceaux ou de gérer les points de terminaison en temps réel. Avec une API simple, vous pouvez demander des prédictions pour un grand nombre d'enregistrements de données et transformer ces données rapidement et facilement.

 

En savoir plus sur la tarification d'Amazon SageMaker

Visiter la page de tarification
Prêt à vous lancer ?
S'inscrire
D'autres questions ?
Contactez-nous