Partager via


Tutoriel 3 : Déployer un modèle de risque de crédit – Machine Learning Studio (classique)

S’APPLIQUE À :C'est une coche, ce qui signifie que cet article s’applique à Machine Learning Studio (classique).Machine Learning Studio (classique) C'est un X, ce qui signifie que cet article ne s’applique pas à Azure Machine Learning.Azure Machine Learning

Important

Le support de Machine Learning Studio (classique) prend fin le 31 août 2024. Nous vous recommandons de passer à Azure Machine Learning à cette date.

À partir du 1er décembre 2021, vous ne pourrez plus créer de nouvelles ressources Machine Learning Studio (classique). Jusqu’au 31 août 2024, vous pouvez continuer à utiliser les ressources Machine Learning Studio (classique) existantes.

La documentation ML Studio (classique) est en cours de retrait et ne sera probablement plus mise à jour.

Dans ce tutoriel, vous étudiez de manière approfondie le processus de développement d’une solution d’analyse prédictive. Vous développez un modèle simple dans Machine Learning Studio (classique). Vous déployez ensuite le modèle en tant que service web Machine Learning. Ce modèle déployé peut effectuer des prédictions à l’aide de nouvelles données. Ce tutoriel fait partie trois d’une série de tutoriels en trois parties.

Supposons que vous deviez prédire le risque lié à l'octroi d'un crédit à un individu sur la base des informations fournies lors d'une demande de crédit.

L’évaluation du risque de crédit est un problème complexe, mais ce tutoriel va le simplifier un peu. Vous allez l’utiliser comme exemple de création d’une solution d’analyse prédictive à l’aide de Machine Learning Studio (classique). Vous allez utiliser Machine Learning Studio (classique) et un service web Machine Learning pour cette solution.

Dans ce tutoriel en trois parties, vous commencez avec des données de risque crédit disponibles publiquement. Ensuite, vous développez et entraînez un modèle prédictif. Enfin, vous déployez le modèle en tant que service web.

Dans la première partie du tutoriel, vous avez créé un espace de travail Machine Learning Studio (classique), chargé des données et créé une expérience.

Dans la deuxième partie du tutoriel, vous avez entraîné et évalué des modèles.

Dans cette partie du tutoriel, vous allez effectuer les opérations suivantes :

  • Préparer le déploiement
  • Déployer le service web
  • Test du service web
  • Gérer le service web
  • Accéder au service web

Prérequis

Terminez la deuxième partie du didacticiel.

Préparer le déploiement

Pour que d’autres personnes puissent utiliser le modèle prédictif que vous avez développé dans ce tutoriel, vous pouvez le déployer en tant que service web sur Azure.

Jusqu'à présent, vous avez expérimenté avec l'entraînement de notre modèle. Mais le service déployé n’effectue plus l’apprentissage ; il va produire de nouvelles prédictions en évaluant l’entrée de l’utilisateur en fonction de notre modèle. Nous allons donc effectuer une préparation pour convertir cette expérience d’une expérience de formation en expérience prédictive .

La préparation pour le déploiement est un processus en trois étapes :

  1. Supprimer l’un des modèles
  2. Convertir l’expérience d’apprentissage que vous avez créée en expérience prédictive
  3. Déploiement de l’expérience prédictive sous la forme d’un service web

Supprimer l’un des modèles

Tout d’abord, vous devez réduire un peu cette expérience. Vous disposez actuellement de deux modèles différents dans l’expérience, mais vous ne voulez utiliser qu’un seul modèle au moment de déployer cette expérience en tant que service web.

Supposons que vous ayez décidé que le modèle d’arbre optimisé est plus adapté que le modèle SVM. Ainsi, la première chose à faire est de supprimer le module Two-Class Support Vector Machine et les modules qui ont été utilisés pour l’entraînement. Vous pouvez commencer par copier l’expérience en cliquant sur Enregistrer sous en bas du canevas de l’expérience.

Vous devez supprimer les modules suivants :

Sélectionnez chaque module et appuyez sur la touche Supprimer, ou cliquez avec le bouton droit sur le module, puis sélectionnez Supprimer.

Met en surbrillance les modules à supprimer pour retirer le modèle de machine à vecteurs de support

Notre modèle doit alors ressembler à ceci :

Expérience résultante lorsque le modèle de machine vectorielle de prise en charge est supprimé

Nous sommes maintenant prêts à déployer ce modèle à l’aide de l’arbre de décisionTwo-Class optimisé.

Convertir l'expérience de formation en expérience prédictive

Pour préparer ce modèle pour le déploiement, vous devez convertir cette expérience d’entraînement en expérience prédictive. Cela implique trois étapes :

  1. Enregistrer le modèle que vous avez entraîné, puis remplacer vos modules d’entraînement
  2. Réduire l’expérience en supprimant les modules uniquement nécessaires à l’apprentissage
  3. Définir où le service web doit accepter l’entrée et où il génère la sortie

vous pouvez le faire manuellement, mais heureusement, les trois étapes peuvent être effectuées en cliquant sur Configurer le service web en bas du canevas d’expérience (et en sélectionnant l’option Service web prédictif ).

Conseil

Si vous souhaitez plus d’informations sur ce qui se passe lorsque vous convertissez une expérience de formation en expérience prédictive, consultez Comment préparer votre modèle pour le déploiement dans Machine Learning Studio (classique).

Lorsque vous cliquez sur Configurer le service web, plusieurs choses se produisent :

  • Le modèle entraîné est converti en un seul module De modèle formé et stocké dans la palette de modules à gauche du canevas de l’expérience (vous pouvez le trouver sous Modèles formés)
  • Les modules utilisés pour l’entraînement sont supprimés ; spécifiquement:
  • Le modèle formé enregistré est rajouté à l’expérience.
  • Les modules d’entrée de service web et de sortie de service web sont ajoutés (ceux-ci identifient où les données de l’utilisateur entrent dans le modèle et les données retournées, lorsque le service web est accessible)

Remarque

Vous constatez que l’expérience est enregistrée en deux parties, sous les onglets ajoutés en haut de la zone de dessin. L’expérience d’entraînement d’origine se trouve sous l’onglet Expérience d’entraînement, et l’expérience prédictive nouvellement créée est sous l’expérience prédictive. L’expérience prédictive est celle que vous déployez sous la forme d’un service web.

Vous devez effectuer une étape supplémentaire avec cette expérience particulière. vous avez ajouté deux modules Execute R Script pour fournir une fonction de pondération aux données. Cette opération n’étant nécessaire que pour l’entraînement et le test, vous pouvez retirer ces modules du modèle final. Machine Learning Studio (classique) a supprimé un module d’exécution de script R lorsqu’il a supprimé le module Split . Vous pouvez maintenant supprimer l’autre éditeur de métadonnées et connecter directement le modèle de score.

Notre expérience doit alors ressembler à cela :

Évaluation du modèle entraîné

Remarque

Vous vous demandez peut-être pourquoi vous avez laissé le jeu de données de cartes de crédit allemandes de l'UCI dans l'expérience de prédiction. Comme ce service va utiliser les données de l’utilisateur et non le jeu de données d’origine, pourquoi conserver ce dernier dans le modèle ?

Il est vrai que ce service n'a pas besoin des données de la carte de crédit d'origine. Mais il a besoin du schéma pour ces données, incluant des informations telles que le nombre de colonnes et lesquelles sont numériques. Ces informations sur le schéma sont indispensables pour interpréter les données de l’utilisateur. Vous laissez ces composants connectés de façon à ce que le module de notation dispose du schéma du jeu de données quand le service est en cours d’exécution. Les données ne sont pas utilisées, uniquement le schéma.

Il est important de noter que si votre jeu de données d’origine contenait l’étiquette, alors le schéma attendu à partir de l’entrée web s’attend aussi à une colonne portant l’étiquette ! Un moyen de contourner ce problème consiste à supprimer l’étiquette et toutes les autres données dans le jeu de données d’apprentissage, mais pas dans les entrées web, avant de connecter l’entrée web et le jeu de données d’apprentissage à un module commun.

Exécutez l’expérience une dernière fois (cliquez sur Exécuter.) Si vous souhaitez vérifier que le modèle fonctionne toujours, cliquez sur la sortie du module Score Model et sélectionnez Afficher les résultats. Vous constatez que les données d’origine sont affichées, ainsi que la valeur du risque sur le crédit (« Étiquettes notées ») et la probabilité de la notation (« Probabilités notées »).

Déployer le service web

Vous pouvez déployer l’expérience en tant que service web classique ou nouveau service web basé sur Azure Resource Manager.

Déployer comme un service web classique

Pour déployer un service web classique dérivé de notre expérience, cliquez sur Déployer le service web sous le canevas et sélectionnez Déployer le service web [Classique]. Machine Learning Studio (classique) déploie l’expérience en tant que service web et vous amène au tableau de bord associé à ce service web. À partir de cette page, vous pouvez revenir à l’expérience (Afficher l’instantané ou afficher la dernière version) et exécuter un test simple du service web (voir Tester le service web ci-dessous). Vous y trouverez également des informations sur la création d’applications pouvant accéder au service web (l’étape suivante de ce tutoriel aborde ce point plus en détail).

Tableau de bord du service web

Vous pouvez configurer le service en cliquant sur l’onglet CONFIGURATION . Ici, vous pouvez modifier le nom du service (il reçoit le nom de l’expérience par défaut) et lui donner une description. Vous pouvez également attribuer des étiquettes plus significatives aux données d’entrée et de sortie.

Configurer le service web

Déployer comme un nouveau service web

Remarque

Pour déployer un nouveau service web, vous devez disposer d’autorisations suffisantes dans l’abonnement dans lequel vous déployez le service web. Pour plus d’informations, consultez Gérer un service web à l’aide du portail des services web Machine Learning.

Pour déployer un nouveau service web dérivé de notre expérience :

  1. Cliquez sur Déployer le service web sous le canevas, puis sélectionnez Déployer le service web [Nouveau]. Machine Learning Studio (classique) vous transfère vers la page Déployer l’expérience des services web Machine Learning.

  2. Entrez un nom pour le service Web.

  3. Pour le plan de prix, vous pouvez sélectionner un plan tarifaire existant, ou sélectionner « Créer » et attribuer un nom au nouveau plan et sélectionner l’option de plan mensuel. Les niveaux de plan s’appliquent par défaut aux plans de votre région par défaut et votre service web est déployé dans cette région.

  4. Cliquez sur Déployer.

Après quelques minutes, la page démarrage rapide de votre service web s’ouvre.

Vous pouvez configurer le service en cliquant sur l’onglet Configurer . Ici, vous pouvez modifier le titre du service et lui donner une description.

Pour tester le service web, cliquez sur l’onglet Test (consultez Tester le service web ci-dessous). Pour plus d’informations sur la création d’applications qui peuvent accéder au service web, cliquez sur l’onglet Consommer (l’étape suivante de ce didacticiel sera plus détaillée).

Conseil

Vous pouvez mettre à jour le service web après l’avoir déployé. Par exemple, si vous souhaitez modifier votre modèle, vous pouvez modifier l’expérience d’entraînement, ajuster les paramètres du modèle, puis cliquer sur Déployer le service web, sélectionner Déployer le service web [classique] ou déployer le service web [Nouveau]. Lorsque vous redéployez l’expérience, le service web est remplacé par votre modèle mis à jour.

Test du service web

Lorsque le service web est accessible, les données de l’utilisateur entrent via le module d’entrée du service web où elles sont passées au module Score Model et notées. Selon votre configuration de l’expérience prédictive, le modèle attend des données du même format que le jeu de données de risque de crédit d’origine. Les résultats sont retournés à l’utilisateur à partir du service web via le module de sortie du service web .

Conseil

La façon dont vous avez configuré l'expérience prédictive fait que l'ensemble des résultats du module Score Model sont affichés. Ces résultats incluent toutes les données d’entrée, ainsi que la valeur du risque de crédit et la probabilité de la notation. Mais vous pouvez renvoyer quelque chose de différent si vous le souhaitez. Par exemple, vous pouvez retourner simplement la valeur du risque de crédit. Pour ce faire, insérez un module Sélectionner des colonnes entre le modèle de score et la sortie du service web pour éliminer les colonnes que vous ne souhaitez pas que le service web retourne.

Vous pouvez tester un service web classique dans Machine Learning Studio (classique) ou dans le portail des services web Azure Machine Learning . Vous pouvez tester un nouveau service web uniquement dans le portail des services web Machine Learning .

Conseil

Lors du test dans le portail des services web Machine Learning, vous pouvez demander au portail de créer un échantillon de données pour tester le service Requête-réponse. Dans la page Configurer, sélectionnez « Oui » pour Les données d'exemple activées ?. Lorsque vous ouvrez l’onglet Request-Response sur la page Test , le portail renseigne des exemples de données extraits du jeu de données à risque de crédit d’origine.

Tester un service web classique

Vous pouvez tester un service web Classic dans Machine Learning Studio (classic) ou dans le portail des services web Machine Learning.

Test dans Machine Learning Studio (classique)

  1. Dans la page TABLEAU de bord du service web, cliquez sur le bouton Tester sous Point de terminaison par défaut. La boîte de dialogue qui s’affiche vous demande les données d’entrée du service. Les colonnes sont identiques à celles du jeu de données d’origine (Risque de crédit).

  2. Entrez un jeu de données, puis cliquez sur OK.

Tester dans le portail des services web d'apprentissage automatique

  1. Dans la page TABLEAU de bord du service web, cliquez sur le lien Aperçu de test sous Point de terminaison par défaut. La page de test dans le portail des services web Machine Learning pour le point de terminaison de service web s’ouvre en vous invitant à entrer les données du service. Les colonnes sont identiques à celles du jeu de données d’origine (Risque de crédit).

  2. Cliquez sur Tester la demande-réponse.

Tester un nouveau service web

Vous pouvez tester un nouveau service web uniquement dans le portail des services web Machine Learning.

  1. Dans le portail des services web Machine Learning , cliquez sur Tester en haut de la page. La page Test s’ouvre et vous pouvez entrer des données pour le service. Les champs d’entrée affichés correspondent à ceux du jeu de données d’origine (Risque de crédit).

  2. Entrez un jeu de données, puis cliquez sur Test Request-Response.

Les résultats du test apparaissent sur le côté droit de la page, dans la colonne de sortie.

Gérer le service web

Une fois que vous avez déployé votre service web, qu’il soit classique ou nouveau, vous pouvez le gérer à partir du portail des services web Machine Learning .

Pour surveiller les performances de votre service web :

  1. Connectez-vous au portail des services web Machine Learning
  2. Cliquez sur Services web
  3. Cliquer sur votre service web
  4. Cliquez sur le tableau de bord

Accéder au service web

Dans l’étape précédente de ce tutoriel, vous avez déployé un service web qui utilise votre modèle prédictif de risque de crédit. Désormais, les utilisateurs peuvent lui envoyer des données et recevoir des résultats.

Il s’agit d’un service web Azure qui peut recevoir et renvoyer des données de deux manières à l’aide d’API REST :

  • Requête/réponse : l’utilisateur envoie une ou plusieurs lignes de données de crédit au service à l’aide d’un protocole HTTP, et le service répond avec un ou plusieurs ensembles de résultats.
  • Exécution par lots : l’utilisateur stocke une ou plusieurs lignes de données de crédit dans un objet blob Azure, puis envoie l’emplacement de l’objet blob au service. Le service évalue toutes les lignes de données dans l'objet blob d'entrée, enregistre les résultats dans un autre objet blob et renvoie l'URL de ce conteneur.

Remarque

Les noms des colonnes de caractéristiques dans Studio (classique) respectent la casse. Assurez-vous que les noms de colonnes dans vos données d’entrée pour l’appel du service web sont les mêmes que dans le jeu de données d’apprentissage.

Pour plus d’informations sur l’accès et la consommation du service web, consultez Utiliser un service web Machine Learning avec un modèle d’application web.

Nettoyer les ressources

Si vous n’avez plus besoin des ressources que vous avez créées dans le cadre de cet article, supprimez-les pour éviter des frais inutiles. Découvrez comment dans l’article, exporter et supprimer des données utilisateur dans le produit.

Étapes suivantes

Dans ce tutoriel, vous avez effectué les étapes suivantes :

  • Préparer le déploiement
  • Déployer le service web
  • Test du service web
  • Gérer le service web
  • Accéder au service web

Vous pouvez également développer une application personnalisée pour accéder au service web à l'aide du code de démarrage fourni dans R, C# et les langages de programmation Python.