Vertex AI : prédire les risques liés à un prêt avec AutoML
- Présentation
- Préparation
- Présentation de Vertex AI
- Tâche 1 : Préparer les données d'entraînement
- Tâche 2 : Entraîner le modèle
- Tâche 3 : Évaluer les performances du modèle (démonstration uniquement)
- Tâche 4 : Déployer le modèle (démonstration uniquement)
- Tâche 5 : Jeton de support SML
- Tâche 6 : Obtenir des prédictions
- Félicitations !
- Terminer l'atelier
Présentation
Dans cet atelier, vous allez utiliser Vertex AI pour entraîner et déployer un modèle de machine learning pour prédire les risques liés à un prêt à l'aide d'un ensemble de données tabulaires.
Objectifs
Vous allez apprendre à :
- importer un ensemble de données dans Vertex AI ;
- entraîner un modèle de machine learning à l'aide d'AutoML ;
- évaluer les performances du modèle ;
- déployer le modèle sur un point de terminaison ;
- obtenir des prédictions.
Préparation
Avant de cliquer sur le bouton Start Lab (Démarrer l'atelier)
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur le bouton "Start Lab" (Démarrer l'atelier), indique combien de temps les ressources cloud resteront accessibles.
Cet atelier pratique Qwiklabs vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud Platform le temps de l'atelier.
Conditions requises
Pour réaliser cet atelier, vous devez remplir les conditions suivantes :
- Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
- Vous devez disposer de suffisamment de temps pour réaliser l'atelier en une fois.
Remarque : Si vous possédez déjà un compte ou un projet GCP, veillez à ne pas l'utiliser pour réaliser cet atelier.
Démarrer votre atelier et vous connecter à la console
-
Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous verrez un panneau contenant les identifiants temporaires à utiliser pour cet atelier.
-
Copiez le nom d'utilisateur, puis cliquez sur Ouvrir la console Google. L'atelier lance les ressources, puis la page Sélectionner un compte dans un nouvel onglet.
Remarque : Ouvrez les onglets dans des fenêtres distinctes, placées côte à côte. -
Sur la page "Sélectionner un compte", cliquez sur Utiliser un autre compte. La page de connexion s'affiche.
-
Collez le nom d'utilisateur que vous avez copié dans le panneau "Détails de connexion". Copiez et collez ensuite le mot de passe.
- Accédez aux pages suivantes :
- Acceptez les conditions d'utilisation.
- N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
- Ne vous inscrivez pas aux essais offerts.
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Présentation de Vertex AI
Cet atelier utilise Vertex AI, la plate-forme d'IA unifiée de Google Cloud, pour entraîner et déployer un modèle de ML. La plate-forme Vertex AI regroupe deux options permettant de créer un modèle de ML : une solution sans code utilisant AutoML, et une autre basée sur du code et l'entraînement personnalisé utilisant Vertex Workbench. Cet atelier utilise AutoML.
Dans cet atelier, vous allez créer un modèle de ML pour déterminer si un client spécifique remboursera ou non un crédit.
Tâche 1 : Préparer les données d'entraînement
Le tableau de bord Vertex AI affiche initialement les grandes étapes à suivre pour entraîner et déployer un modèle de ML : préparer les données d'entraînement, entraîner le modèle et obtenir des prédictions. Il affichera ensuite vos activités récentes, telles que les derniers ensembles de données, modèles, prédictions, points de terminaison et instances de notebooks.
Créer un ensemble de données
- Dans la console Google Cloud, accédez au menu de navigation et cliquez sur Vertex AI > Ensembles de données.
- Cliquez sur Créer un ensemble de données.
- Nommez l'ensemble de données LoanRisk.
- Cliquez sur Tabulaire et Régression/Classification pour choisir respectivement le type de données et l'objectif.
- Cliquez sur Créer.
Importer des données
Vous disposez de trois options pour importer des données dans Vertex AI :
- Importer des fichiers CSV depuis votre ordinateur
- Sélectionner des fichiers CSV depuis Cloud Storage
- Sélectionner une table ou une vue à partir de BigQuery
Pour plus de commodité, l'ensemble de données est déjà importé dans Cloud Storage.
-
Pour la source de données, sélectionnez Sélectionner des fichiers CSV depuis Cloud Storage.
-
Dans le champ Chemin du fichier d'importation, saisissez :
- Cliquez sur Continuer.
(Facultatif) Générer des statistiques
-
Pour consulter les statistiques descriptives de chaque colonne de votre ensemble de données, cliquez sur Générer des statistiques.
Cette opération peut prendre quelques minutes, en particulier la première fois. -
Lorsque les statistiques sont prêtes, cliquez sur le nom de chaque colonne pour afficher des graphiques analytiques.
Tâche 2 : Entraîner le modèle
Maintenant que vous avez importé un ensemble de données, vous êtes en mesure d'entraîner un modèle pour prédire si un client remboursera ou non un crédit.
- Cliquez sur Entraîner le nouveau modèle, puis sélectionnez Autre.
Méthode d'entraînement
-
L'ensemble de données est déjà nommé LoanRisk.
-
Dans le champ Objectif, sélectionnez Classification.
Vous devez sélectionner "Classification" plutôt que "Régression", car vous allez prédire un nombre distinct (pour déterminer si un client remboursera un crédit, avec 0 pour oui et 1 pour non) plutôt qu'un nombre continu.
- Cliquez sur Continuer.
Informations sur le modèle
Spécifiez le nom du modèle et la colonne cible.
-
Donnez un nom au modèle, par exemple LoanRisk.
-
Pour Colonne cible, sélectionnez Par défaut.
-
(Facultatif) Explorez la section Options avancées pour déterminer comment attribuer les données d'entraînement et de test, et spécifier le chiffrement.
-
Cliquez sur Continuer.
-
Pour "Ajouter des caractéristiques", cliquez sur Continuer.
Options d'entraînement
Indiquez les colonnes que vous souhaitez inclure au modèle d'entraînement. Par exemple, l'ID client n'est pas forcément pertinent pour prédire les risques liés à un crédit.
-
Cliquez sur le signe moins de la ligne ClientID (ID client) pour l'exclure du modèle d'entraînement.
-
(Facultatif) Explorez la section Options avancées pour sélectionner différents objectifs d'optimisation.
Pour en savoir plus sur les objectifs d'optimisation des modèles AutoML tabulaires, consultez le guide sur les objectifs d'optimisation pour les modèles AutoML tabulaires. -
Cliquez sur Continuer.
Options de calcul et tarifs
-
Dans le champ Budget, qui représente le nombre d'heures-nœud pour l'entraînement, saisissez 1.
Entraîner votre modèle AutoML pendant une heure de calcul est généralement un bon point de départ pour comprendre s'il existe une relation entre les caractéristiques et l'étiquette que vous avez sélectionnées. À partir de là, vous pouvez modifier vos caractéristiques et entraîner votre modèle plus longtemps pour améliorer ses performances. -
Laissez l'option d'arrêt prématuré activée.
-
Cliquez sur Démarrer l'entraînement.
En fonction de la taille des données et de la méthode d'entraînement, l'opération peut durer de quelques minutes à environ deux heures. En temps normal, vous devriez recevoir un e-mail de Google Cloud une fois le job d'entraînement terminé. Cependant, dans l'environnement Qwiklabs, vous ne recevrez pas d'e-mail.
Afin de ne pas perdre de temps à entraîner le modèle, vous allez télécharger un modèle pré-entraîné à la tâche 5 pour obtenir des prédictions à la tâche 6. Ce modèle pré-entraîné correspond au résultat de l'entraînement effectué après avoir suivi les étapes de la tâche 1 et de la tâche 2.
Tâche 3 : Évaluer les performances du modèle (démonstration uniquement)
Vertex AI offre de nombreuses métriques permettant d'évaluer les performances du modèle. Vous allez en utiliser trois :
- Courbe de précision/rappel
- Matrice de confusion
- Importance des caractéristiques
Courbe de précision/rappel
Le seuil de confiance détermine la façon dont un modèle de ML compte les cas positifs. Avec un seuil élevé, la précision augmente, mais le rappel diminue. Avec un seuil bas, la précision diminue, mais le rappel augmente.
Vous pouvez ajuster manuellement le seuil pour observer son impact sur la précision et le rappel. Vous pourrez ainsi trouver le meilleur compromis entre les deux pour répondre aux besoins de votre entreprise.
Matrice de confusion
Une matrice de confusion vous indique, pour chaque classe de l'ensemble de test, le pourcentage d'exemples pour lesquels votre modèle a effectué des prédictions correctes.
La matrice de confusion indique que votre modèle initial peut prédire correctement 100 % des exemples de remboursement et 87 % des exemples de défaut de paiement pour votre ensemble de test. Ce résultat est plutôt satisfaisant.
Pour améliorer les pourcentages, vous pouvez ajouter plus d'exemples (plus de données), extraire davantage de caractéristiques, modifier la méthode d'entraînement, etc.
Importance des caractéristiques
Dans Vertex AI, l'importance des caractéristiques est illustrée par un graphique à barres montrant la contribution de chaque caractéristique pour une prédiction. Plus la barre est longue ou plus la valeur numérique associée à une caractéristique est élevée, plus celle-ci est importante.
Les valeurs de l'importance des caractéristiques pourraient vous aider à améliorer votre modèle et renforcer votre confiance dans ses prédictions. La prochaine fois que vous entraînerez un modèle, vous pourrez choisir d'exclure les caractéristiques les moins importantes ou de combiner deux des plus importantes pour effectuer un croisement de caractéristiques, et ainsi déterminer si cela améliore les performances du modèle.
L'importance des caractéristiques n'est qu'un exemple de la fonctionnalité complète de machine learning de Vertex AI, appelée Explainable AI. Explainable AI est un ensemble d'outils et de frameworks permettant de comprendre et d'interpréter les prédictions effectuées par les modèles de machine learning.
Tâche 4 : Déployer le modèle (démonstration uniquement)
Maintenant que vous disposez d'un modèle entraîné, l'étape suivante consiste à créer un point de terminaison dans Vertex, où une ressource de modèle peut être associée à plusieurs points de terminaison entre lesquels vous pouvez répartir le trafic.
Créer et définir un point de terminaison
-
Sur la page de votre modèle, cliquez sur Déployer et tester, puis sur Déployer sur un point de terminaison.
-
Dans le champ Nom du point de terminaison, saisissez LoanRisk.
-
Cliquez sur Continuer.
Surveillance et paramètres du modèle
-
Laissez les paramètres de répartition du trafic tels quels.
-
Dans le champ Type de machine, sélectionnez e2-standard-8, 8 vCPU, 32 Gio de mémoire.
-
Dans le champ Options d'explicabilité, cliquez sur Attribution des caractéristiques.
-
Cliquez sur OK.
-
Cliquez sur Continuer.
-
Dans Surveillance des modèles, cliquez sur Continuer.
-
Dans Objectif du modèle > Source des données d'entraînement, sélectionnez Ensemble de données Vertex AI.
-
Sélectionnez votre ensemble de données dans le menu déroulant.
-
Dans Colonne cible, saisissez Par défaut.
-
Laissez le reste des paramètres tels quels, puis cliquez sur Déployer.
Le déploiement de votre point de terminaison va prendre quelques minutes. Quand ce sera terminé, une coche verte apparaîtra à côté du nom.
Vous pouvez maintenant obtenir des prédictions à partir de votre modèle déployé.
Tâche 5 : Jeton de support SML
Récupérer votre jeton de support
Pour autoriser l'authentification du pipeline et pour pouvoir appeler le point de terminaison afin d'obtenir les prédictions, vous devez fournir votre jeton de support.
Suivez les instructions ci-dessous pour obtenir votre jeton. Si vous rencontrez des difficultés pour obtenir le jeton de support, cela peut être dû au blocage des cookies dans la fenêtre de navigation privée. Dans ce cas, suivez cette étape dans une fenêtre non privée.
-
Connectez-vous à https://gsp-auth-kjyo252taq-uc.a.run.app/.
-
Pour vous connecter, utilisez votre adresse e-mail d'élève et votre mot de passe.
-
Cliquez sur le bouton Copier. Un jeton très long est alors copié dans votre presse-papiers.
Ce jeton ne sera disponible que 60 secondes environ. Copiez-le et passez aux étapes suivantes.
Tâche 6 : Obtenir des prédictions
Dans cette section, nous allons utiliser le service de machine learning partagé (Shared Machine Learning, SML) pour travailler avec un modèle d'entraînement existant.
VARIABLE D'ENVIRONNEMENT | VALEUR |
---|---|
AUTH_TOKEN | Utilisez la valeur mentionnée à la section précédente. |
ENDPOINT | https://sml-api-vertex-kjyo252taq-uc.a.run.app/vertex/predict/tabular_classification |
INPUT_DATA_FILE | INPUT-JSON |
Pour utiliser le modèle entraîné, vous avez besoin de créer des variables d'environnement.
-
Ouvrez une fenêtre Cloud Shell.
-
Remplacez
INSERT_SML_BEARER_TOKEN
par la valeur du jeton de support mentionnée à la section précédente :
- Téléchargez les éléments de l'atelier :
- Extrayez les éléments de l'atelier :
- Créez une variable d'environnement ENDPOINT :
- Créez une variable d'environnement
INPUT_DATA_FILE
:
Le fichier INPUT-JSON
contient les valeurs suivantes :
age | ClientID | income | loan |
---|---|---|---|
40.77 | 997 | 44964.01 | 3944.22 |
-
Testez le service SML en transmettant les paramètres spécifiés dans les variables d'environnement.
-
Effectuez une requête sur le service SML :
Cette requête doit renvoyer une réponse semblable à celle ci-dessous :
- Modifiez le fichier
INPUT-JSON
pour tester un nouveau scénario :
age | ClientID | income | loan |
---|---|---|---|
30.00 | 998 | 50000.00 | 20000.00 |
-
Modifiez le fichier
INPUT-JSON
pour remplacer les valeurs d'origine. Vous pouvez utiliser l'éditeur de votre choix (vim
,nano
,emacs
) ou l'éditeur de code Cloud Shell. -
Testez le service SML en transmettant les paramètres spécifiés dans les variables d'environnement.
-
Effectuez une requête sur le service SML :
Dans ce cas, en partant du principe que la personne a 30 ans, que la valeur de ses revenus s'élève à 50 000 et que celle de l'emprunt s'élève à 20 000, le modèle prédit qu'elle remboursera le crédit.
Cette requête doit renvoyer une réponse semblable à celle ci-dessous :
L'image ci-dessous montre comment effectuer la même action dans la console Google Cloud :
Félicitations !
Vous savez maintenant utiliser Vertex AI pour :
- importer un ensemble de données ;
- entraîner un modèle à l'aide d'AutoML ;
- évaluer les performances du modèle ;
- déployer le modèle AutoML entraîné sur un point de terminaison ;
- obtenir des prédictions.
Pour en savoir plus sur les différents composants de Vertex AI, consultez la documentation Vertex AI.
Terminer l'atelier
Une fois l'atelier terminé, cliquez sur Terminer l'atelier. Google Cloud Skills Boost supprime les ressources que vous avez utilisées, puis efface le compte.
Si vous le souhaitez, vous pouvez noter l'atelier. Sélectionnez un nombre d'étoiles, saisissez un commentaire, puis cliquez sur Envoyer.
Le nombre d'étoiles correspond à votre degré de satisfaction :
- 1 étoile = très insatisfait(e)
- 2 étoiles = insatisfait(e)
- 3 étoiles = ni insatisfait(e), ni satisfait(e)
- 4 étoiles = satisfait(e)
- 5 étoiles = très satisfait(e)
Si vous ne souhaitez pas donner votre avis, vous pouvez fermer la boîte de dialogue.
Pour soumettre des commentaires, suggestions ou corrections, veuillez accéder à l'onglet Assistance.
Copyright 2020 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.