En décembre 2020, AWS a annoncé la disponibilité générale of Amazon SageMaker JumpStart, une capacité de Amazon Sage Maker qui vous aide à démarrer rapidement et facilement avec l'apprentissage automatique (ML). JumpStart permet d'ajuster et de déployer en un clic une grande variété de modèles pré-formés pour les tâches ML courantes, ainsi qu'une sélection de solutions de bout en bout qui résolvent les problèmes commerciaux courants. Ces fonctionnalités simplifient chaque étape du processus de ML, ce qui facilite le développement de modèles de haute qualité et réduit le temps de déploiement.
Auparavant, tout le contenu JumpStart n'était disponible que via Amazon SageMakerStudio, qui fournit un interface graphique conviviale pour interagir avec la fonction. Aujourd'hui, nous sommes ravis d'annoncer le lancement de API JumpStart en tant qu'extension du SDK SageMaker Python. Ces API vous permettent de déployer et d'affiner par programmation une vaste sélection de modèles pré-formés pris en charge par JumpStart sur vos propres ensembles de données. Ce lancement déverrouille l'utilisation des fonctionnalités JumpStart dans vos workflows de code, vos pipelines MLOps et partout où vous interagissez avec SageMaker via le SDK.
Dans cet article, nous fournissons une mise à jour sur l'état actuel des capacités de JumpStart et vous guidons à travers le flux d'utilisation de l'API JumpStart avec un exemple de cas d'utilisation.
Présentation de JumpStart
JumpStart est un produit à multiples facettes qui comprend différentes fonctionnalités pour vous aider à démarrer rapidement avec ML sur SageMaker. Au moment de la rédaction, JumpStart vous permet d'effectuer les opérations suivantes :
- Déployer des modèles pré-formés pour les tâches ML courantes – JumpStart vous permet de résoudre des tâches ML courantes sans effort de développement en fournissant un déploiement facile de modèles pré-formés sur de grands ensembles de données accessibles au public. La communauté des chercheurs en ML a déployé des efforts considérables pour rendre la majorité des modèles récemment développés accessibles au public. JumpStart héberge une collection de plus de 300 modèles, couvrant les 15 tâches ML les plus populaires telles que la détection d'objets, la classification de texte et la génération de texte, ce qui facilite leur utilisation par les débutants. Ces modèles sont tirés de hubs de modèles populaires, tels que TensorFlow, PyTorch, Hugging Face et MXNet Hub.
- Affiner les modèles pré-formés – JumpStart vous permet d'affiner les modèles pré-formés sans avoir besoin d'écrire votre propre algorithme de formation. En ML, la capacité de transférer les connaissances acquises dans un domaine vers un autre domaine est appelée transférer l'apprentissage. Vous pouvez utiliser l'apprentissage par transfert pour produire des modèles précis sur vos ensembles de données plus petits, avec des coûts de formation bien inférieurs à ceux impliqués dans la formation du modèle d'origine à partir de zéro. JumpStart comprend également des algorithmes de formation populaires basés sur LightGBM, CatBoost, XGBoost et Scikit-learn que vous pouvez former à partir de zéro pour la régression et la classification des données tabulaires.
- Utiliser des solutions prédéfinies – JumpStart fournit un ensemble de 17 solutions pré-construites pour les cas d'utilisation courants du ML, tels que la prévision de la demande et les applications industrielles et financières, que vous pouvez déployer en quelques clics. Les solutions sont des applications ML de bout en bout qui relient divers services AWS pour résoudre un cas d'utilisation métier particulier. Ils utilisent AWS CloudFormation modèles et architectures de référence pour un déploiement rapide, ce qui signifie qu'ils sont entièrement personnalisables.
- Utiliser des exemples de bloc-notes pour les algorithmes SageMaker – SageMaker fournit une suite de algorithmes intégrés pour aider les scientifiques des données et les praticiens du ML à démarrer rapidement la formation et le déploiement de modèles de ML. JumpStart fournit des exemples de blocs-notes que vous pouvez utiliser pour utiliser rapidement ces algorithmes.
- Profitez des vidéos de formation et des blogs – JumpStart propose également de nombreux articles de blog et vidéos qui vous apprennent à utiliser différentes fonctionnalités dans SageMaker.
JumpStart accepte les paramètres VPC personnalisés et les clés de chiffrement KMS, afin que vous puissiez utiliser les modèles et solutions disponibles en toute sécurité dans votre environnement d'entreprise. Vous pouvez transmettre vos paramètres de sécurité à JumpStart dans SageMaker Studio ou via le SDK SageMaker Python.
Tâches de ML prises en charge par JumpStart et exemples d'API
JumpStart prend actuellement en charge 15 des tâches ML les plus populaires ; 13 d'entre eux sont des tâches basées sur la vision et la PNL, dont 8 prennent en charge le réglage fin sans code. Il prend également en charge quatre algorithmes populaires pour la modélisation de données tabulaires. Les tâches et les liens vers leurs exemples de blocs-notes sont résumés dans le tableau suivant.
Tâche | Inférence avec des modèles pré-entraînés | Formation sur un jeu de données personnalisé | Cadres pris en charge | Exemples de cahiers |
Classification d'image | Oui | Oui | PyTorch, TensorFlow | Introduction à JumpStart - Classification des images |
Détection d'objet | Oui | Oui | PyTorch, TensorFlow, MXNet | Introduction à JumpStart - Détection d'objets |
Segmentation Sémantique | Oui | Oui | MXNet | Introduction à JumpStart – Segmentation sémantique |
Segmentation d'instance | Oui | aucune | MXNet | Introduction à JumpStart - Segmentation d'instance |
Incorporation d'images | Oui | aucune | TensorFlow, MXNet | Introduction à JumpStart – Incorporation d'images |
Classification du texte | Oui | Oui | TensorFlow | Introduction à JumpStart – Classification de texte |
Classification des paires de phrases | Oui | Oui | TensorFlow, visage étreignant | Introduction à JumpStart – Classification des paires de phrases |
Question Répondant | Oui | Oui | PyTorch | Introduction à JumpStart - Réponse aux questions |
Reconnaissance d'entité nommée | Oui | aucune | Étreindre le visage | Introduction à JumpStart - Reconnaissance d'entité nommée |
Synthèse de texte | Oui | aucune | Étreindre le visage | Introduction à JumpStart - Résumé de texte |
Génération de texte | Oui | aucune | Étreindre le visage | Introduction à JumpStart - Génération de texte |
Traduction automatique | Oui | aucune | Étreindre le visage | Introduction à JumpStart – Traduction automatique |
Incorporation de texte | Oui | aucune | TensorFlow, MXNet | Introduction à JumpStart – Incorporation de texte |
Classification tabulaire | Oui | Oui | LightGBM, CatBoost, XGBoost, apprenant linéaire | Introduction à JumpStart - Classification tabulaire - LightGBM, CatBoost Introduction à JumpStart - Classification tabulaire - XGBoost, apprenant linéaire |
Régression tabulaire | Oui | Oui | LightGBM, CatBoost, XGBoost, apprenant linéaire | Introduction à JumpStart - Régression tabulaire - LightGBM, CatBoost Introduction à JumpStart - Régression tabulaire - XGBoost, apprenant linéaire |
Selon la tâche, les exemples de notebooks liés dans le tableau précédent peuvent vous guider sur tout ou partie des processus suivants :
- Sélectionnez un modèle préformé pris en charge par JumpStart pour votre tâche spécifique.
- Hébergez un modèle pré-entraîné, obtenez-en des prédictions en temps réel et affichez correctement les résultats.
- Affinez un modèle pré-formé avec votre propre sélection d'hyperparamètres et déployez-le pour l'inférence.
Affinez et déployez un modèle de détection d'objets avec les API JumpStart
Dans les sections suivantes, nous expliquons étape par étape comment utiliser les nouvelles API JumpStart sur la tâche représentative de détection d'objets. Nous montrons comment utiliser un modèle de détection d'objets pré-formé pour identifier des objets à partir d'un ensemble prédéfini de classes dans une image avec des boîtes englobantes. Enfin, nous montrons comment affiner un modèle pré-formé sur votre propre ensemble de données pour détecter des objets dans des images spécifiques aux besoins de votre entreprise, simplement en apportant vos propres données. Nous fournissons un cahier d'accompagnement pour cette procédure pas à pas.
Nous suivons les étapes de haut niveau suivantes :
- Exécutez l'inférence sur le modèle pré-entraîné.
- Récupérez les artefacts JumpStart et déployez un point de terminaison.
- Interrogez le point de terminaison, analysez la réponse et affichez les prédictions du modèle.
- Ajustez le modèle pré-entraîné sur votre propre jeu de données.
- Récupérer des artefacts de formation.
- Exécutez la formation.
Exécuter l'inférence sur le modèle pré-entraîné
Dans cette section, nous choisissons un modèle pré-formé approprié dans JumpStart, déployons ce modèle sur un point de terminaison SageMaker et montrons comment exécuter l'inférence sur le point de terminaison déployé. Toutes les étapes sont disponibles dans le accompagnant le cahier Jupyter.
Récupérer les artefacts JumpStart et déployer un point de terminaison
SageMaker est une plateforme basée sur des conteneurs Docker. JumpStart utilise le framework spécifique disponible Conteneurs d'apprentissage en profondeur SageMaker (DLC). Nous récupérons tous les packages supplémentaires, ainsi que les scripts pour gérer la formation et l'inférence pour la tâche sélectionnée. Enfin, les artefacts de modèle pré-formés sont récupérés séparément avec model_uris
, qui offre de la flexibilité à la plate-forme. Vous pouvez utiliser n'importe quel nombre de modèles pré-formés pour la même tâche avec un seul script de formation ou d'inférence. Voir le code suivant :
Ensuite, nous introduisons les ressources dans un Modèle Sage Maker instance et déployer un point de terminaison :
Le déploiement du point de terminaison peut prendre quelques minutes.
Interroger le point de terminaison, analyser la réponse et afficher les prédictions
Pour obtenir des inférences à partir d'un modèle déployé, une image d'entrée doit être fournie au format binaire avec un type d'acceptation. Dans JumpStart, vous pouvez définir le nombre de cadres de délimitation renvoyés. Dans l'extrait de code suivant, nous prévoyons dix cadres de délimitation par image en ajoutant ;n_predictions=10
à Accept
. Pour prédire xx cases, vous pouvez le changer en ;n_predictions=xx
, ou obtenir toutes les cases prédites en omettant ;n_predictions=xx
entièrement.
L'extrait de code suivant vous donne un aperçu de ce à quoi ressemble la détection d'objet. La probabilité prédite pour chaque classe d'objets est visualisée, ainsi que sa boîte englobante. Nous utilisons le parse_response
ainsi que le display_predictions
fonctions d'assistance, qui sont définies dans les cahier.
La capture d'écran suivante montre la sortie d'une image avec des étiquettes de prédiction et des cadres de délimitation.
Affiner un modèle pré-formé sur votre propre jeu de données
Les modèles de détection d'objets existants dans JumpStart sont pré-formés sur les ensembles de données COCO ou VOC. Toutefois, si vous devez identifier des classes d'objets qui n'existent pas dans le jeu de données de pré-formation d'origine, vous devez affiner le modèle sur un nouveau jeu de données qui inclut ces nouveaux types d'objets. Par exemple, si vous devez identifier des ustensiles de cuisine et exécuter une inférence sur un modèle SSD pré-entraîné déployé, le modèle ne reconnaît aucune caractéristique des nouveaux types d'images et, par conséquent, la sortie est incorrecte.
Dans cette section, nous montrons à quel point il est facile d'affiner un modèle pré-formé pour détecter de nouvelles classes d'objets à l'aide des API JumpStart. L'exemple de code complet avec plus de détails est disponible dans le carnet d'accompagnement.
Récupérer des artefacts de formation
Les artefacts de formation sont similaires aux artefacts d'inférence abordés dans la section précédente. La formation nécessite un conteneur Docker de base, à savoir le conteneur MXNet dans l'exemple de code suivant. Tous les packages supplémentaires requis pour la formation sont inclus avec les scripts de formation dans train_sourcer_uri
. Le modèle pré-entraîné et ses paramètres sont emballés séparément.
Entraînement à la course
Pour exécuter la formation, nous transmettons simplement les artefacts requis ainsi que certains paramètres supplémentaires à un Estimateur SageMaker et appelez le .fit
fonction:
Pendant que l'algorithme s'entraîne, vous pouvez surveiller sa progression soit dans le bloc-notes SageMaker où vous exécutez le code lui-même, soit sur Amazon Cloud Watch. Lorsque la formation est terminée, les artefacts du modèle affiné sont téléchargés vers le Service de stockage simple Amazon (Amazon S3) emplacement de sortie spécifié dans la configuration de la formation. Vous pouvez maintenant déployer le modèle de la même manière que le modèle pré-entraîné. Vous pouvez suivre le reste du processus dans le carnet d'accompagnement.
Conclusion
Dans cet article, nous avons décrit la valeur des API JumpStart nouvellement publiées et comment les utiliser. Nous avons fourni des liens vers 17 exemples de blocs-notes pour les différentes tâches de ML prises en charge dans JumpStart et vous avons présenté le bloc-notes de détection d'objets.
Nous attendons avec impatience d'avoir de vos nouvelles pendant que vous expérimentez JumpStart.
À propos des auteurs
Dr Vivek Madan est un scientifique appliqué au sein de l'équipe Amazon SageMaker JumpStart. Il a obtenu son doctorat à l'Université de l'Illinois à Urbana-Champaign et a été chercheur postdoctoral à Georgia Tech. Il est un chercheur actif en apprentissage automatique et en conception d'algorithmes, et a publié des articles dans les conférences EMNLP, ICLR, COLT, FOCS et SODA.
Joao Moura est architecte de solutions spécialisées en IA/ML chez Amazon Web Services. Il se concentre principalement sur les cas d'utilisation du NLP et aide les clients à optimiser la formation et le déploiement des modèles de Deep Learning.
Dr Ashish Khetan est un scientifique appliqué senior avec Amazon SageMaker JumpStart ainsi que le Algorithmes intégrés d'Amazon SageMaker et aide à développer des algorithmes d'apprentissage automatique. Il est un chercheur actif en apprentissage automatique et en inférence statistique et a publié de nombreux articles dans les conférences NeurIPS, ICML, ICLR, JMLR et ACL.
- Coinsmart. Le meilleur échange Bitcoin et Crypto d'Europe.
- Platoblockchain. Intelligence métaverse Web3. Connaissance amplifiée. ACCÈS LIBRE.
- CryptoHawk. Radar Altcoins. Essai gratuit.
- Source : https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-jumpstart-models-and-algorithms-now-available-via-api/
- "
- 100
- 2020
- Avec cette connaissance vient le pouvoir de prendre
- à travers
- infection
- Supplémentaire
- Avantage
- algorithme
- algorithmes
- Tous
- Amazon
- Amazon Web Services
- montant
- Annoncer
- annoncé
- Une autre
- de n'importe où
- api
- Apis
- applications
- disponibles
- AWS
- va
- Blog
- Blogue
- Box
- intégré
- la performance des entreprises
- Appelez-nous
- capacités
- cas
- Change
- classification
- code
- collection
- Commun
- Communautés
- conférences
- configuration
- Contenant
- Conteneurs
- contient
- contenu
- Costs
- Courant
- État actuel
- Clients
- données
- informatique
- Demande
- déployer
- déployer
- déploiement
- Conception
- Détection
- développer
- développé
- Développement
- différent
- Commande
- Docker
- Ne fait pas
- domaine
- même
- chiffrement
- Endpoint
- Entreprise
- Environment
- exemple
- expérience
- Visage
- Fonctionnalité
- Fonctionnalités:
- finalement
- la traduction de documents financiers
- Flexibilité
- flux
- concentré
- suivre
- Abonnement
- le format
- Avant
- plein
- fonction
- Général
- génération
- État de la Georgie
- guide
- Maniabilité
- vous aider
- aide
- Comment
- How To
- HTTPS
- identifier
- Illinois
- image
- inclus
- Y compris
- industriel
- impliqué
- IT
- lui-même
- Emploi
- clés
- spécialisées
- Etiquettes
- gros
- lancer
- savant
- apprentissage
- Gauche
- emplacement
- click
- machine learning
- Majorité
- Fabrication
- ML
- modèle
- numériques jumeaux (digital twin models)
- (en fait, presque toutes)
- Le Plus Populaire
- à savoir
- cahier
- nombre
- nombreux
- plateforme
- Populaire
- Poteaux
- prédiction
- Prédictions
- représentent
- d'ouvrabilité
- processus
- les process
- produire
- Produit
- fournir
- fournit
- question
- vite.
- en temps réel
- reconnaître
- réduire
- conditions
- un article
- Resources
- réponse
- REST
- Résultats
- Courir
- pour le running
- Scientifique
- scientifiques
- Sdk
- en toute sécurité
- sécurité
- choisi
- Services
- set
- similaires
- étapes
- So
- Solutions
- RÉSOUDRE
- j'ai commencé
- Région
- statistique
- storage
- studio
- Support
- Appareils
- Les soutiens
- tâches
- équipe
- technologie
- Avec
- fiable
- aujourd'hui
- ensemble
- Formation
- les trains
- université
- déverrouille
- Mises à jour
- utilisé
- cas d'utilisation
- Plus-value
- Vidéos
- vision
- web
- services Web
- Quoi
- dans les
- écriture