Tutoriel : Création d'un flux de travail d'apprentissage end-to-end automatique dans SageMaker Canvas - Amazon SageMaker

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.

Tutoriel : Création d'un flux de travail d'apprentissage end-to-end automatique dans SageMaker Canvas

Ce didacticiel vous guide tout au long d'un flux de travail d'apprentissage end-to-end automatique (ML) à l'aide d'Amazon SageMaker Canvas. SageMaker Canvas est une interface visuelle sans code que vous pouvez utiliser pour préparer des données et pour former et déployer des modèles de machine learning. Dans le cadre du didacticiel, vous utilisez un jeu de données sur les NYC taxis pour entraîner un modèle qui prédit le montant du tarif pour un trajet donné. Vous acquérez une expérience pratique des tâches clés du ML, telles que l'évaluation de la qualité des données et la résolution des problèmes liés aux données, la division des données en ensembles de formation et de test, la formation et l'évaluation de modèles, l'établissement de prédictions et le déploiement de votre modèle entraîné, le tout dans l' SageMaker application Canvas.

Important

Ce didacticiel part du principe que vous ou votre administrateur avez créé un AWS compte. Pour plus d'informations sur la création d'un AWS compte, voir Mise en route : Êtes-vous un AWS utilisateur pour la première fois ?

Configuration

Un SageMaker domaine Amazon est un endroit centralisé permettant de gérer tous vos SageMaker environnements et ressources Amazon. Un domaine agit comme une limite virtuelle pour votre travail SageMaker, en isolant et en contrôlant l'accès à vos ressources d'apprentissage automatique (ML).

Pour commencer à utiliser Amazon SageMaker Canvas, vous ou votre administrateur devez accéder à la SageMaker console et créer un SageMaker domaine Amazon. Un domaine dispose des ressources de stockage et de calcul nécessaires pour exécuter SageMaker Canvas. Au sein du domaine, vous configurez SageMaker Canvas pour accéder à vos compartiments Amazon S3 et déployer des modèles. Utilisez la procédure suivante pour configurer un domaine rapide et créer une application SageMaker Canvas.

Pour configurer SageMaker Canvas
  1. Accédez à la console SageMaker.

  2. Dans le menu de navigation de gauche, choisissez SageMaker Canvas.

  3. Choisissez Créer un SageMaker domaine.

  4. Choisissez Set up (Configurer). La configuration du domaine peut prendre quelques minutes.

La procédure précédente utilisait une configuration rapide du domaine. Vous pouvez effectuer une configuration avancée pour contrôler tous les aspects de la configuration du compte, y compris les autorisations, les intégrations et le chiffrement. Pour plus d'informations sur une configuration personnalisée, consultezUtiliser une configuration personnalisée pour Amazon SageMaker.

Par défaut, la configuration rapide du domaine vous donne les autorisations nécessaires pour déployer des modèles. Si vous avez configuré des autorisations personnalisées via un domaine standard et que vous devez octroyer manuellement des autorisations de déploiement de modèles, consultezGestion des autorisations.

Création de flux

Amazon SageMaker Canvas est une plateforme d'apprentissage automatique qui permet aux utilisateurs de créer, de former et de déployer des modèles d'apprentissage automatique sans expertise approfondie en matière de codage ou d'apprentissage automatique. L'une des fonctionnalités puissantes d'Amazon SageMaker Canvas est la possibilité d'importer et de travailler avec de grands ensembles de données provenant de diverses sources, telles qu'Amazon S3.

Pour ce didacticiel, nous utilisons le jeu de données sur les NYC taxis pour prévoir le montant du tarif pour chaque trajet à l'aide d'un flux de données Amazon SageMaker Canvas Data Wrangler. La procédure suivante décrit les étapes à suivre pour importer une version modifiée du jeu de données sur les NYC taxis dans un flux de données.

Note

Pour améliorer le traitement, SageMaker Canvas importe un échantillon de vos données. Par défaut, il échantillonne 50 000 lignes de manière aléatoire.

Pour importer le jeu de données sur les NYC taxis
  1. Sur la page d'accueil de SageMaker Canvas, choisissez Data Wrangler.

  2. Choisissez Import data (Importer les données).

  3. Sélectionnez Tabulaire.

  4. Choisissez la boîte à outils située à côté de la source de données.

  5. Sélectionnez Amazon S3 dans le menu déroulant.

  6. Pour le point de terminaison S3 en entrée, spécifiez s3://amazon-sagemaker-data-wrangler-documentation-artifacts/canvas-single-file-nyc-taxi-dataset.csv

  7. Choisissez Go.

  8. Cochez la case à côté du jeu de données.

  9. Choisissez Prévisualiser les données.

  10. Choisissez Save (Enregistrer).

Rapport sur la qualité et les informations des données 1 (exemple)

Après avoir importé un ensemble de données dans Amazon SageMaker Canvas, vous pouvez générer un rapport Data Quality and Insights à partir d'un échantillon de données. Utilisez-le pour fournir des informations précieuses sur l'ensemble de données. Le rapport effectue les opérations suivantes :

  • Évalue l'exhaustivité de l'ensemble de données

  • Identifie les valeurs manquantes et les valeurs aberrantes

Il peut identifier d'autres problèmes potentiels susceptibles d'avoir un impact sur les performances du modèle. Il évalue également le pouvoir prédictif de chaque caractéristique par rapport à la variable cible, ce qui vous permet d'identifier les caractéristiques les plus pertinentes pour le problème que vous essayez de résoudre.

Nous pouvons utiliser les informations du rapport pour prévoir le montant du tarif. En spécifiant la colonne Montant du tarif comme variable cible et en sélectionnant Régression comme type de problème, le rapport analysera l'aptitude de l'ensemble de données à prévoir des valeurs continues telles que les prix des tarifs. Le rapport doit révéler que des fonctionnalités telles que l'année et l'heure du jour ont un faible pouvoir prédictif pour la variable cible choisie, vous fournissant ainsi des informations précieuses.

Utilisez la procédure suivante pour obtenir un rapport sur la qualité des données et les informations sur un échantillon de 50 000 lignes provenant du jeu de données.

Pour obtenir un rapport sur un échantillon
  1. Choisissez Obtenir des informations sur les données dans la fenêtre contextuelle située à côté du nœud Types de données.

  2. Pour Nom de l'analyse, spécifiez le nom du rapport.

  3. Pour Type de problème, choisissez Régression.

  4. Dans la colonne Target, choisissez le montant du tarif.

  5. Sélectionnez Create (Créer).

Vous pouvez consulter le rapport Data Quality and Insights sur un échantillon de vos données. Le rapport indique que les fonctionnalités relatives à l'année et à l'heure du jour ne permettent pas de prédire la variable cible, le montant du tarif.

En haut de la navigation, choisissez le nom du flux de données pour y revenir.

Diminution de l'année et de l'heure

Nous utilisons les informations du rapport pour supprimer les colonnes année et heure du jour afin de rationaliser l'espace des fonctionnalités et d'améliorer potentiellement les performances du modèle.

Amazon SageMaker Canvas fournit une interface conviviale et des outils permettant d'effectuer de telles transformations de données.

Utilisez la procédure suivante pour supprimer les colonnes year et hour_of_day du jeu de données sur les NYC taxis à l'aide de l'outil Data Wrangler d'Amazon Canvas. SageMaker

  1. Cliquez sur l'icône à côté de Types de données.

  2. Choisissez Add step (Ajouter une étape).

  3. Dans la barre de recherche, saisissez Drop column.

  4. Choisissez Manage Columns (Gérer les colonnes).

  5. Choisissez Supprimer la colonne.

  6. Pour Colonnes à supprimer, sélectionnez les colonnes année et hour_of_day.

  7. Choisissez Aperçu pour voir comment votre transformation modifie vos données.

  8. Choisissez Ajouter.

Vous pouvez utiliser la procédure précédente comme base pour ajouter toutes les autres transformations dans SageMaker Canvas.

Rapport sur la qualité et les informations des données 2 (ensemble de données complet)

Pour le rapport d'analyse précédent, nous avons utilisé un échantillon de l'ensemble de données sur les NYC taxis. Pour notre deuxième rapport, nous effectuons une analyse complète de l'ensemble de données afin d'identifier les problèmes potentiels ayant une incidence sur les performances du modèle.

Utilisez la procédure suivante pour créer un rapport sur la qualité des données et les informations sur un ensemble de données complet.

Pour obtenir un rapport sur l'ensemble de données
  1. Cliquez sur l'icône située à côté du nœud Supprimer les colonnes.

  2. Choisissez Obtenir des informations sur les données.

  3. Pour Nom de l'analyse, spécifiez le nom du rapport.

  4. Pour Type de problème, choisissez Régression.

  5. Dans la colonne Target, choisissez le montant du tarif.

  6. Pour Taille des données, sélectionnez Ensemble de données complet.

  7. Sélectionnez Create (Créer).

Voici une image tirée du rapport Insights :

Les lignes dupliquées, la cible asymétrique et le score de modèle rapide très faible sont répertoriés dans InsightSP

Il présente les problèmes suivants :

  • Lignes dupliquées.

  • Cible biaisée

Les lignes dupliquées peuvent entraîner une fuite de données, le modèle étant exposé aux mêmes données pendant l'entraînement et les tests. Ils peuvent conduire à des indicateurs de performance trop optimistes. La suppression des lignes dupliquées garantit que le modèle est entraîné sur des instances uniques, ce qui réduit le risque de fuite de données et améliore la capacité du modèle à se généraliser.

Une distribution variable cible asymétrique, dans ce cas, la colonne du montant du tarif, peut entraîner un déséquilibre des classes, le modèle pouvant biaisé en faveur de la classe majoritaire. Cela peut entraîner de mauvaises performances pour les classes minoritaires, ce qui est particulièrement problématique dans les scénarios où il est important de prévoir avec précision les cas rares ou sous-représentés.

Résoudre les problèmes de qualité des données

Pour résoudre ces problèmes et préparer le jeu de données pour la modélisation, vous pouvez rechercher les transformations suivantes et les appliquer :

  1. Supprimez les doublons à l'aide de la transformation Gérer les lignes.

  2. Gérez les valeurs aberrantes dans la colonne Montant du tarif en utilisant les valeurs aberrantes numériques de l'écart type robuste.

  3. Gérez les valeurs aberrantes dans les colonnes Distance du trajet et Durée du trajet à l'aide des valeurs aberrantes numériques de l'écart type.

  4. Utilisez la catégorie Encode pour encoder les colonnes ID du code tarifaire, type de paiement, indicateur supplémentaire et drapeau de péage sous forme de flottants.

Si vous ne savez pas comment appliquer une transformation, voir Diminution de l'année et de l'heure

En résolvant ces problèmes de qualité des données et en appliquant les transformations appropriées, vous pouvez améliorer l'adéquation du jeu de données à la modélisation.

Vérification de la qualité des données et de la précision rapide du modèle

Après avoir appliqué les transformations pour résoudre les problèmes de qualité des données, tels que la suppression des lignes dupliquées, nous créons notre rapport final sur la qualité des données et les informations. Ce rapport permet de vérifier que les transformations appliquées ont résolu les problèmes et que le jeu de données est désormais dans un état approprié pour la modélisation.

Lors de l'examen du rapport final sur la qualité des données et les informations, vous devez vous attendre à ce qu'aucun problème majeur de qualité des données ne soit signalé. Le rapport doit indiquer que :

  • La variable cible n'est plus asymétrique

  • Il n'y a pas de valeurs aberrantes ni de lignes dupliquées

En outre, le rapport doit fournir un score de modèle rapide basé sur un modèle de référence entraîné sur le jeu de données transformé. Ce score sert d'indicateur initial de la précision et des performances potentielles du modèle.

Utilisez la procédure suivante pour créer le rapport Data Quality and Insights.

Pour créer le rapport Data Quality and Insights
  1. Cliquez sur l'icône située à côté du nœud Supprimer les colonnes.

  2. Choisissez Obtenir des informations sur les données.

  3. Pour Nom de l'analyse, spécifiez le nom du rapport.

  4. Pour Type de problème, choisissez Régression.

  5. Dans la colonne Target, choisissez le montant du tarif.

  6. Pour Taille des données, sélectionnez Ensemble de données complet.

  7. Sélectionnez Create (Créer).

Divisez les données en ensembles d'entraînement et de test

Pour entraîner un modèle et évaluer ses performances, nous utilisons la transformation de données fractionnée pour diviser les données en ensembles d'entraînement et de test.

Par défaut, SageMaker Canvas utilise une division aléatoire, mais vous pouvez également utiliser les types de divisions suivants :

  • Commandé

  • Stratifié

  • Diviser par clé

Vous pouvez modifier le pourcentage de division ou ajouter des divisions.

Pour ce didacticiel, utilisez tous les paramètres par défaut du split. Vous devez double-cliquer sur le jeu de données pour voir son nom. Le jeu de données d'entraînement porte le nom Dataset (Train).

À côté du nœud d'encodage ordinal, appliquez la transformation de données fractionnée.

Modèle de train

Après avoir divisé vos données, vous pouvez entraîner un modèle. Ce modèle apprend à partir des modèles présents dans vos données. Vous pouvez l'utiliser pour faire des prédictions ou découvrir des informations.

SageMaker Canvas propose à la fois des versions rapides et des versions standard. Utilisez une version standard pour entraîner le modèle le plus performant sur vos données.

Avant de commencer à entraîner un modèle, vous devez d'abord exporter le jeu de données d'apprentissage en tant que jeu de données SageMaker Canvas.

Pour exporter votre jeu de données
  1. À côté du nœud du jeu de données d'entraînement, choisissez l'icône et sélectionnez Exporter.

  2. Sélectionnez le jeu de données SageMaker Canvas.

  3. Choisissez Exporter pour exporter le jeu de données.

Après avoir créé un jeu de données, vous pouvez entraîner un modèle sur le jeu de données SageMaker Canvas que vous avez créé. Pour plus d’informations sur l’entraînement d’un modèle, consultez Création d'un modèle de prédiction numérique ou catégorielle personnalisé.

Évaluez le modèle et faites des prédictions

Après avoir entraîné votre modèle d'apprentissage automatique, il est essentiel d'évaluer ses performances pour vous assurer qu'il répond à vos exigences et qu'il fonctionne correctement sur des données invisibles. Amazon SageMaker Canvas fournit une interface conviviale permettant d'évaluer la précision de votre modèle, de revoir ses prévisions et de mieux comprendre ses forces et ses faiblesses. Vous pouvez utiliser ces informations pour prendre des décisions éclairées concernant son déploiement et les domaines potentiels d'amélioration.

Utilisez la procédure suivante pour évaluer un modèle avant de le déployer.

Pour évaluer un modèle
  1. Choisissez Mes modèles.

  2. Choisissez le modèle que vous avez créé.

  3. Sous Versions, sélectionnez la version correspondant au modèle.

Vous pouvez désormais consulter les métriques d'évaluation du modèle.

Après avoir évalué le modèle, vous pouvez faire des prédictions sur les nouvelles données. Nous utilisons l'ensemble de données de test que nous avons créé.

Pour utiliser l'ensemble de données de test pour les prédictions, nous devons le convertir en un ensemble de données SageMaker Canvas. Le jeu de données SageMaker Canvas est dans un format que le modèle peut interpréter.

Utilisez la procédure suivante pour créer un jeu de données SageMaker Canvas à partir du jeu de données de test.

Pour créer un jeu de données SageMaker Canvas
  1. À côté du jeu de données (test), cliquez sur l'icône radio.

  2. Sélectionnez Exporter.

  3. Sélectionnez le jeu de données SageMaker Canvas.

  4. Pour Nom du jeu de données, spécifiez un nom pour le jeu de données.

  5. Cliquez sur Exporter.

Pour faire des prédictions, procédez comme suit. Cela suppose que vous êtes toujours sur la page Analyser.

Pour faire des prédictions sur l'ensemble de données de test
  1. Choisissez Predict.

  2. Choisissez Manuel.

  3. Sélectionnez le jeu de données que vous avez exporté.

  4. Choisissez Générer des prédictions.

  5. Lorsque SageMaker Canvas a fini de générer des prédictions, sélectionnez l'icône à droite du jeu de données.

  6. Choisissez Aperçu pour afficher les prévisions.

Déployer un modèle

Après avoir évalué votre modèle, vous pouvez le déployer sur un terminal. Vous pouvez envoyer des demandes au point de terminaison pour obtenir des prévisions.

Utilisez la procédure suivante pour déployer un modèle. Cela suppose que vous êtes toujours sur la page Predict.

Pour déployer un modèle
  1. Choisissez Deploy (Déployer).

  2. Choisissez Créer un déploiement.

  3. Choisissez Deploy (Déployer).

Nettoyage

Vous avez terminé le didacticiel avec succès. Pour éviter d'encourir des frais supplémentaires, supprimez les ressources que vous n'utilisez pas.

Utilisez la procédure suivante pour supprimer le point de terminaison que vous avez créé. Cela suppose que vous êtes toujours sur la page de déploiement.

Supprimer un point de terminaison
  1. Cliquez sur le bouton radio situé à droite de votre déploiement.

  2. Sélectionnez Supprimer le déploiement.

  3. Sélectionnez Delete (Supprimer).

Après avoir supprimé le déploiement, supprimez les ensembles de données que vous avez créés dans SageMaker Canvas. Pour supprimer les ensembles de données, procédez comme suit.

Pour supprimer les ensembles de données
  1. Choisissez Datasets dans le menu de navigation de gauche.

  2. Sélectionnez le jeu de données que vous avez analysé et le jeu de données synthétique utilisé pour les prédictions.

  3. Sélectionnez Delete (Supprimer).

Pour éviter d'encourir des frais supplémentaires, vous devez vous déconnecter de SageMaker Canvas. Pour de plus amples informations, veuillez consulter Déconnexion d'Amazon SageMaker Canvas.