Entraîner un modèle avec le Concepteur Azure Machine Learning

Le Concepteur Azure Machine Learning offre une interface par glisser-déposer avec laquelle vous pouvez définir un workflow. Vous pouvez créer un workflow pour entraîner un modèle, en testant et en comparant facilement plusieurs algorithmes.

Dans cet exercice, vous allez utiliser le Concepteur pour entraîner et comparer rapidement deux algorithmes de classification.

Avant de commencer

Vous avez besoin d’un abonnement Azure dans lequel vous avez un accès administratif.

Provisionner un espace de travail Azure Machine Learning

Un espace de travail Azure Machine Learning offre un emplacement central pour gérer toutes les ressources et tous les éléments dont vous avez besoin pour entraîner et gérer vos modèles. Vous pouvez interagir avec l’espace de travail Azure Machine Learning via le studio, le SDK Python et Azure CLI.

Vous allez utiliser un script Shell qui utilise Azure CLI pour provisionner l’espace de travail et les ressources nécessaires. Ensuite, vous allez utiliser le Concepteur dans le studio Azure Machine Learning pour entraîner et comparer des modèles.

Créer l’espace de travail et le cluster de calcul

Pour créer l’espace de travail Azure Machine Learning et un cluster de calcul, vous allez utiliser Azure CLI. Toutes les commandes nécessaires sont regroupées dans un script Shell que vous pouvez exécuter.

  1. Dans un navigateur, ouvrez le portail Azure sur https://portal.azure.com/ en vous connectant avec votre compte Microsoft.
  2. Sélectionnez le bouton [>_] (Cloud Shell) en haut de la page, à droite de la zone de recherche. Cela a pour effet d’ouvrir un volet de Cloud Shell au bas du portail.
  3. Sélectionnez Bash si vous y êtes invité. Lorsque vous ouvrez Cloud Shell pour la première fois, vous êtes invité à choisir le type d’interpréteur de commandes que vous souhaitez utiliser (Bash ou PowerShell).
  4. Vérifiez que le bon abonnement est spécifié et que l’option Aucun compte de stockage requis est sélectionnée. Sélectionnez Appliquer.
  5. Dans le terminal, entrez les commandes suivantes pour cloner ce dépôt :

     rm -r azure-ml-labs -f
     git clone https://github.com/MicrosoftLearning/mslearn-azure-ml.git azure-ml-labs
    

    Utilisez SHIFT + INSERT pour coller votre code copié dans Cloud Shell.

  6. Une fois que le dépôt a été cloné, entrez les commandes suivantes pour accéder au dossier de ce labo et exécutez le script setup.sh qu’il contient :

     cd azure-ml-labs/Labs/05
     ./setup.sh
    

    Ignorez les messages (d’erreur) indiquant que les extensions n’ont pas été installées.

  7. Attendez que le script se termine, ce qui prend généralement entre 5 et 10 minutes.

Configurer un nouveau pipeline

Une fois que vous avez créé l’espace de travail et le cluster de calcul nécessaire, vous pouvez ouvrir le studio Azure Machine Learning et créer un pipeline d’entraînement avec le Concepteur.

  1. Dans le portail Azure, accédez à l’espace de travail Azure Machine Learning appelé mlw-dp100-….
  2. Sélectionnez l’espace de travail Azure Machine Learning et, dans sa page Vue d’ensemble, sélectionnez Lancer le studio. Un autre onglet s’ouvre dans votre navigateur pour ouvrir le studio Azure Machine Learning.
  3. Fermez les fenêtres contextuelles qui s’affichent dans le studio.
  4. Dans le studio Azure Machine Learning, accédez à la page Calcul et vérifiez que le cluster de calcul que vous avez créé dans la section précédente existe. Le cluster doit être inactif et avoir 0 nœud en cours d’exécution.
  5. Accédez à la page Concepteur.
  6. Sélectionnez l’onglet Personnalisé en haut de la page.
  7. Créez un pipeline vide à l’aide de composants personnalisés.
  8. Remplacez le nom du pipeline par défaut (Pipeline-Created-on-* date*) Train-Diabetes-Classifier en sélectionnant l’icône du crayon à sa droite.

Créer un pipeline

Pour entraîner un modèle, vous avez besoin de données. Vous pouvez utiliser toutes les données stockées dans un magasin de données ou utiliser une URL accessible publiquement.

  1. Dans le menu de gauche, sélectionnez l’onglet Données.
  2. Glissez-déposez le composant diabetes-folder dans le canevas.

    Maintenant que vous avez vos données, vous pouvez continuer en créant un pipeline à l’aide de composants personnalisés qui existent déjà dans l’espace de travail (qui ont été créés pour vous pendant la configuration).

  3. Dans le menu de gauche, sélectionnez l’onglet Composants.
  4. Glissez-déposez le composant Supprimer les lignes vides dans le canevas, sous diabetes-folder.
  5. Connectez la sortie des données à l’entrée du nouveau composant.
  6. Glissez-déposez le composant Normaliser les colonnes numériques dans le canevas, sous Supprimer les lignes vides.
  7. Connectez la sortie du composant précédent à l’entrée du nouveau composant.
  8. Glissez-déposez le composant Entraîner un modèle de classifieur d’arbre de décision dans le canevas, sous Normaliser les colonnes numériques.
  9. Connectez la sortie du composant précédent à l’entrée du nouveau composant.
  10. Sélectionnez Configurer & soumettre et, dans la page Configurer la tâche de pipeline, créez une expérience et appelez-la diabetes-designer-pipeline, puis sélectionnez Suivant.
  11. Dans Entrées & Sorties, n’apportez aucune modification et sélectionnez Suivant.
  12. Dans Paramètres d’exécution, sélectionnez Cluster de calcul, puis sous Sélectionner un cluster de calcul Azure ML, sélectionnez votre aml-cluster.
  13. Sélectionnez Vérifier + envoyer, puis Envoyer pour démarrer l’exécution du pipeline.
  14. Vous pouvez vérifier l’état de l’exécution en accédant à la page Pipelines et en sélectionnant le pipeline Train-Diabetes-Classifier.
  15. Attendez que tous les composants soient correctement terminés.

    La soumission du travail initialise le cluster de calcul. Comme le cluster de calcul était jusqu’à présent inactif, il peut mettre un certain temps à revenir à une taille qui dépasse 0 nœud. Une fois le cluster redimensionné, il commence automatiquement à exécuter le pipeline.

Vous pourrez suivre l’exécution de chaque composant. Lorsque le pipeline échoue, vous pouvez regarder quel composant a échoué et pourquoi il a échoué. Les messages d’erreur s’affichent sous l’onglet Sorties + journaux de la vue d’ensemble du travail.

Entraîner un deuxième modèle à comparer

Pour comparer les algorithmes et évaluer ceux qui sont les plus performants, vous pouvez entraîner deux modèles au sein d’un même pipeline et les comparer.

  1. Revenez au Concepteur et sélectionnez le brouillon de pipeline Train-Diabetes-Classifier.
  2. ajoutez le composant Entraîner un modèle de classifieur de régression logistique au canevas, à côté de l’autre composant d’entraînement.
  3. Connectez la sortie du composant Normaliser les colonnes numériques à l’entrée du nouveau composant d’entraînement.
  4. En haut, sélectionnez Configurer & soumettre.
  5. Dans la page Informations de base, créez une expérience appelée designer-compare-classification, puis exécutez-la.
  6. Sélectionnez Vérifier + envoyer, puis Envoyer pour démarrer l’exécution du pipeline.
  7. Vous pouvez vérifier l’état de l’exécution en accédant à la page Pipelines et en sélectionnant le pipeline Train-Diabetes-Classifier avec l’expérience designer-compare-classification.
  8. Attendez que tous les composants soient correctement terminés.
  9. Sélectionnez Aperçu du travail, puis sélectionnez l’onglet Métriques pour consulter les résultats des deux composants d’entraînement.
  10. Essayez de déterminer quel modèle a été le plus performant.

Supprimer les ressources Azure

Une fois que vous avez fini d’explorer Azure Machine Learning, vous devriez supprimer les ressources que vous avez créées afin d’éviter des coûts Azure superflus.

  1. Fermez l’onglet du studio Azure Machine Learning et revenez au portail Azure.
  2. Dans le portail Azure, dans la page Accueil, sélectionnez Groupes de ressources.
  3. Sélectionnez le groupe de ressources rg-dp100-….
  4. Au sommet de la page Vue d’ensemble de votre groupe de ressources, sélectionnez Supprimer le groupe de ressources.
  5. Entrez le nom du groupe de ressources pour confirmer que vous souhaitez le supprimer, puis sélectionnez Supprimer.