AWS SageMaker : la plateforme de machine learning d'Amazon
AWS SageMaker est une plateforme cloud de machine learning développée par Amazon. SageMaker Autopilot en est l'un des outils phare. Il automatise la création et l'exécution de modèles de machine learning.
AWS SageMaker, qu'est-ce que c'est ?
AWS SageMaker (ou Amazon SageMaker) est un ensemble d'outils accessibles dans le cloud mis à disposition des data scientists et des développeurs, afin de réaliser et de déployer des modèles de machine learning. Ces outils commercialisés sur le cloud d'Amazon recouvrent toutes les étapes du cycle de vie d'un modèle de machine learning, de la préparation de la donnée d'apprentissage jusqu'au déploiement final du modèle.
Amazon revendique plus de 100 milliards de prédiction réalisées chaque mois sur la plateforme SageMaker. La solution prend en charge les les langages R et Python, ainsi que les infrastructures de machine learning Mxnet, PyTorch, TensorFlow et Scikit-learn.
Quelles sont les fonctionnalités d'AWS SageMaker ?
La suite AWS SageMaker propose différents outils, qui couvrent chacun différentes fonctionnalités et étapes du processus de machine learning :
- Préparation de la donnée : étiquetage, agrégation, tri, analyse de données,
- Elaboration du modèle : choix d'algorithmes et configuration des hyperparamètres à partir de zéro ou à l'aide de modèles prédéfinis,
- Entraînement et apprentissage : outils de comparaison, d'analyse et de débogage,
- Déploiement du modèle : automatisation du déploiement, optimisation des pipelines, dashboards de suivi…
Quels sont les principaux services de SageMaker ?
AWS SageMaker regroupe une dizaine de services :
- SageMaker Canvas : outil de machine learning sans code (no code)
- SageMaker Data Wrangler : outil de préparation de données d'entraînement (intégration, sélection, nettoyage, visualisation)
- SageMaker Feature Store : outil de stockage et de gestion des caractéristiques d'apprentissage,
- SageMaker JumpStart : bibliothèque de centaines de modèles de machine learning prépackagés,
- SageMaker Autopilot : outil automatisant la création des modèles de machine learning,
- SageMaker Edge : outil de déploiement des modèles de ML sur des appareils en frontière de réseau,
- SageMaker Pipelines : service de livraison et d'intégration continues (CI/CD) des modèles,
- SageMaker Clarify : outil pour identifier les biais des modèles, liés par exemple à l'âge ou au genre.
AWS SageMaker Studio, c'est quoi ?
AWS SageMaker Studio (ou Amazon SageMaker Studio) est l'interface à partir de laquelle l'utilisateur accède aux différents outils de la suite AWS SageMaker. Il s'agit d'un studio de data science doté d'un environnement graphique orienté développement no code, avec un accès complet au code source.
Qu'est-ce qu'un SageMaker endpoint ?
Au cours de l'étape de l'entraînement, où le modèle de machine learning est testé, afin d'être ajusté et amélioré, SageMaker offre la possibilité de créer des endpoints. Ceux-ci permettent de créer une API REST dédiée au test du modèle. Ils permettent d'exécuter les tests en une seule ligne de commande.
Amazon SageMaker Ground Truth, c'est quoi ?
SageMaker GroundTruth est un outil d'aide à l'étiquetage des données. Il permet de compiler et d'identifier des données, de manière automatique ou manuelle, et ce, quelle qu'en soit la source. L'utilisation de cet outil est payante : la facturation se fait au nombre d'objets étiquetés.
Quel est le prix d'AWS SageMaker ?
AWS SageMaker propose une offre de démarrage gratuite, d'une durée de deux mois (et pour une utilisation limitée en temps, variable en fonction des différents outils). L'interface SageMaker Studio demeure gratuite, même au-delà de l'offre de démarrage.
En revanche, chaque fonctionnalité de SageMaker (Pipelines, Autopilot, Debugger, Model Monitor, JumpStart...) est payante. Le paiement se fait logiciel par logiciel, et le prix varie en fonction du nombre total de services utilisés.
AWS SageMaker : exemples de Jupyter notebooks, tutoriel documentation
Pour faciliter l'appréhension d'AWS SageMaker, il est utile de se référer à un guide sur l'appropriation des langages de programmation (Json, YAML...), à l'instar de ceux que l'on trouve sur le site Internet Project Jupyter. Il existe aussi une documentation officielle ainsi que des ressources pour les développeurs sur le site d'AWS SageMaker.