Votre modèle est-il bon? Une plongée approfondie dans les métriques avancées de Amazon SageMaker Canvas
Évaluation du modèle métriques avancées de Amazon SageMaker Canvas
Si vous êtes un analyste commercial, comprendre le comportement des clients est probablement l’une des choses les plus importantes qui vous préoccupe. Comprendre les raisons et les mécanismes derrière les décisions d’achat des clients peut faciliter la croissance des revenus. Cependant, la perte de clients (communément appelée churn des clients) représente toujours un risque. Comprendre pourquoi les clients partent peut être tout aussi crucial pour maintenir les profits et les revenus.
Bien que l’apprentissage automatique (ML) puisse fournir des informations précieuses, des experts en ML étaient nécessaires pour construire des modèles de prédiction de churn des clients jusqu’à l’introduction de Amazon SageMaker Canvas.
SageMaker Canvas est un service géré à faible code/sans code qui vous permet de créer des modèles de ML qui peuvent résoudre de nombreux problèmes commerciaux sans écrire une seule ligne de code. Il vous permet également d’évaluer les modèles en utilisant des métriques avancées comme si vous étiez un data scientist.
Dans cet article, nous montrons comment un analyste commercial peut évaluer et comprendre un modèle de churn de classification créé avec SageMaker Canvas en utilisant l’onglet Métriques avancées. Nous expliquons les métriques et montrons des techniques pour traiter les données afin d’obtenir de meilleures performances du modèle.
- Une nouvelle recherche en IA propose le modèle PanGu-Coder2 et le cadre RRTF qui améliorent efficacement les modèles de langage pré-entraînés de grande taille pour la génération de code.
- Créez des flux de travail de repliement des protéines pour accélérer la découverte de médicaments sur Amazon SageMaker
- Qu’est-ce que snowChat?
Prérequis
Si vous souhaitez mettre en œuvre toutes ou certaines des tâches décrites dans cet article, vous avez besoin d’un compte AWS avec accès à SageMaker Canvas. Référez-vous à Prédire le churn des clients avec l’apprentissage automatique sans code en utilisant Amazon SageMaker Canvas pour comprendre les bases de SageMaker Canvas, du modèle de churn et de l’ensemble de données.
Introduction à l’évaluation des performances du modèle
En général, lorsque vous devez évaluer les performances d’un modèle, vous essayez de mesurer à quel point le modèle prédira quelque chose lorsqu’il verra de nouvelles données. Cette prédiction est appelée inférence. Vous commencez par entraîner le modèle en utilisant des données existantes, puis vous demandez au modèle de prédire le résultat sur des données qu’il n’a pas encore vues. La précision avec laquelle le modèle prédit ce résultat est ce que vous regardez pour comprendre les performances du modèle.
Si le modèle n’a pas vu les nouvelles données, comment saurait-on si la prédiction est bonne ou mauvaise ? Eh bien, l’idée est en fait d’utiliser des données historiques où les résultats sont déjà connus et de comparer ces valeurs avec les valeurs prédites par le modèle. Cela est rendu possible en mettant de côté une partie des données d’entraînement historiques afin de pouvoir les comparer à ce que le modèle prédit pour ces valeurs.
Dans l’exemple du churn des clients (qui est un problème de classification catégorique), vous partez d’un ensemble de données historiques qui décrit les clients avec de nombreuses attributs (un dans chaque enregistrement). L’un des attributs, appelé Churn, peut être Vrai ou Faux, décrivant si le client a quitté le service ou non. Pour évaluer l’exactitude du modèle, nous divisons cet ensemble de données et entraînons le modèle en utilisant une partie (l’ensemble de données d’entraînement), puis demandons au modèle de prédire le résultat (classer le client comme Churn ou non) avec l’autre partie (l’ensemble de données de test). Nous comparons ensuite la prédiction du modèle à la vérité terrain contenue dans l’ensemble de données de test.
Interprétation des métriques avancées
Dans cette section, nous discutons des métriques avancées dans SageMaker Canvas qui peuvent vous aider à comprendre les performances du modèle.
Matrice de confusion
SageMaker Canvas utilise des matrices de confusion pour vous aider à visualiser quand un modèle génère correctement des prédictions. Dans une matrice de confusion, vos résultats sont disposés pour comparer les valeurs prédites aux valeurs historiques réelles (connues). L’exemple suivant explique comment fonctionne une matrice de confusion pour un modèle de prédiction à deux catégories qui prédit des étiquettes positives et négatives :
- Vrai positif – Le modèle a correctement prédit du positif lorsque l’étiquette réelle était positive
- Vrai négatif – Le modèle a correctement prédit du négatif lorsque l’étiquette réelle était négative
- Faux positif – Le modèle a incorrectement prédit du positif lorsque l’étiquette réelle était négative
- Faux négatif – Le modèle a incorrectement prédit du négatif lorsque l’étiquette réelle était positive
L’image suivante est un exemple de matrice de confusion pour deux catégories. Dans notre modèle de churn, les valeurs réelles proviennent de l’ensemble de données de test, et les valeurs prédites proviennent de notre modèle.
Exactitude
L’exactitude est le pourcentage de prédictions correctes parmi toutes les lignes ou échantillons de l’ensemble de test. Il s’agit des échantillons vrais qui ont été prédits comme Vrai, plus les échantillons faux qui ont été correctement prédits comme Faux, divisé par le nombre total d’échantillons dans l’ensemble de données.
C’est l’une des métriques les plus importantes à comprendre car elle vous indiquera dans quelle mesure le modèle a correctement prédit, mais cela peut être trompeur dans certains cas. Par exemple:
- Déséquilibre de classe – Lorsque les classes de votre ensemble de données ne sont pas réparties uniformément (vous avez un nombre disproportionné d’échantillons d’une classe et très peu des autres), l’exactitude peut être trompeuse. Dans de tels cas, même un modèle qui prédit simplement la classe majoritaire pour chaque instance peut obtenir une grande précision.
- Classification pondérée par les coûts – Dans certaines applications, le coût de la mauvaise classification peut être différent pour différentes classes. Par exemple, si nous prédisions si un médicament peut aggraver une condition, un faux négatif (par exemple, prédire que le médicament pourrait ne pas aggraver alors qu’il le fait réellement) peut être plus coûteux qu’un faux positif (par exemple, prédire que le médicament pourrait aggraver alors qu’il ne le fait pas).
Précision, rappel et score F1
La précision est la fraction de vrais positifs (VP) parmi tous les positifs prédits (VP + FP). Elle mesure la proportion de prédictions positives qui sont réellement correctes.
Le rappel est la fraction de vrais positifs (VP) parmi tous les positifs réels (VP + FN). Il mesure la proportion d’instances positives qui ont été correctement prédites comme positives par le modèle.
Le score F1 combine la précision et le rappel pour fournir un seul score qui équilibre le compromis entre eux. Il est défini comme la moyenne harmonique de la précision et du rappel:
Score F1 = 2 * (précision * rappel) / (précision + rappel)
Le score F1 varie de 0 à 1, un score plus élevé indiquant de meilleures performances. Un score F1 parfait de 1 indique que le modèle a atteint à la fois une précision parfaite et un rappel parfait, et un score de 0 indique que les prédictions du modèle sont complètement fausses.
Le score F1 fournit une évaluation équilibrée des performances du modèle. Il prend en compte la précision et le rappel, fournissant une mesure d’évaluation plus informative qui reflète la capacité du modèle à classer correctement les instances positives et à éviter les faux positifs et les faux négatifs.
Par exemple, dans le diagnostic médical, la détection de fraude et l’analyse de sentiment, le score F1 est particulièrement pertinent. Dans le diagnostic médical, l’identification précise de la présence d’une maladie ou d’une condition spécifique est cruciale, et les faux négatifs ou les faux positifs peuvent avoir des conséquences importantes. Le score F1 prend en compte à la fois la précision (la capacité à identifier correctement les cas positifs) et le rappel (la capacité à trouver tous les cas positifs), fournissant une évaluation équilibrée des performances du modèle dans la détection de la maladie. De même, dans la détection de fraude, où le nombre de cas réels de fraude est relativement faible par rapport aux cas non frauduleux (classes déséquilibrées), la précision seule peut être trompeuse en raison d’un grand nombre de vrais négatifs. Le score F1 fournit une mesure globale de la capacité du modèle à détecter à la fois les cas frauduleux et non frauduleux, en tenant compte à la fois de la précision et du rappel. Et dans l’analyse de sentiment, si l’ensemble de données est déséquilibré, l’exactitude peut ne pas refléter avec précision les performances du modèle dans la classification des instances de la classe de sentiment positif.
AUC (aire sous la courbe)
La métrique AUC évalue la capacité d’un modèle de classification binaire à distinguer entre les classes positives et négatives pour tous les seuils de classification. Un seuil est une valeur utilisée par le modèle pour prendre une décision entre les deux classes possibles, convertissant la probabilité qu’un échantillon fasse partie d’une classe en une décision binaire. Pour calculer l’AUC, le taux de vrais positifs (TVP) et le taux de faux positifs (TFP) sont tracés pour différentes configurations de seuils. Le TVP mesure la proportion de vrais positifs parmi tous les positifs réels, tandis que le TFP mesure la proportion de faux positifs parmi tous les négatifs réels. La courbe résultante, appelée courbe de fonctionnement du récepteur (ROC), offre une représentation visuelle du TVP et du TFP pour différentes configurations de seuils. La valeur AUC, qui varie de 0 à 1, représente l’aire sous la courbe ROC. Des valeurs AUC plus élevées indiquent de meilleures performances, avec un classificateur parfait atteignant une AUC de 1.
Le graphique suivant montre la courbe ROC, avec le TVP comme axe Y et le TFP comme axe X. Plus la courbe se rapproche du coin supérieur gauche du graphique, meilleur est le modèle pour classifier les données en catégories.
Pour clarifier, examinons un exemple. Prenons un modèle de détection de fraude. Habituellement, ces modèles sont entraînés à partir d’ensembles de données déséquilibrés. Cela est dû au fait que, généralement, presque toutes les transactions de l’ensemble de données ne sont pas frauduleuses, seules quelques-unes sont étiquetées comme fraudes. Dans ce cas, la précision seule peut ne pas capturer adéquatement les performances du modèle car elle est probablement fortement influencée par l’abondance des cas non frauduleux, ce qui entraîne des scores de précision faussement élevés.
Dans ce cas, l’AUC serait une meilleure mesure pour évaluer les performances du modèle car elle fournit une évaluation complète de la capacité d’un modèle à distinguer les transactions frauduleuses des transactions non frauduleuses. Elle offre une évaluation plus nuancée, en tenant compte du compromis entre le taux de vrais positifs et le taux de faux positifs à différents seuils de classification.
Tout comme le score F1, il est particulièrement utile lorsque l’ensemble de données est déséquilibré. Il mesure le compromis entre le taux de vrais positifs et le taux de faux positifs et montre à quel point le modèle peut différencier les deux classes, indépendamment de leur distribution. Cela signifie que même si une classe est considérablement plus petite que l’autre, la courbe ROC évalue les performances du modèle de manière équilibrée en considérant les deux classes de manière égale.
Autres sujets clés
Les métriques avancées ne sont pas les seuls outils importants disponibles pour évaluer et améliorer les performances des modèles d’apprentissage automatique. La préparation des données, l’ingénierie des caractéristiques et l’analyse de l’impact des caractéristiques sont des techniques essentielles à la construction des modèles. Ces activités jouent un rôle crucial dans l’extraction d’informations significatives à partir des données brutes et l’amélioration des performances du modèle, ce qui conduit à des résultats plus robustes et éclairants.
Préparation des données et ingénierie des caractéristiques
L’ingénierie des caractéristiques est le processus de sélection, de transformation et de création de nouvelles variables (caractéristiques) à partir des données brutes, et joue un rôle clé dans l’amélioration des performances d’un modèle d’apprentissage automatique. La sélection des variables ou caractéristiques les plus pertinentes parmi les données disponibles consiste à supprimer les caractéristiques non pertinentes ou redondantes qui ne contribuent pas à la puissance prédictive du modèle. La transformation des caractéristiques des données dans un format approprié comprend la mise à l’échelle, la normalisation et la gestion des valeurs manquantes. Enfin, la création de nouvelles caractéristiques à partir des données existantes se fait par des transformations mathématiques, la combinaison ou l’interaction de différentes caractéristiques, ou la création de nouvelles caractéristiques à partir de connaissances spécifiques au domaine.
Analyse de l’importance des caractéristiques
SageMaker Canvas génère une analyse de l’importance des caractéristiques qui explique l’impact de chaque colonne de votre ensemble de données sur le modèle. Lorsque vous générez des prédictions, vous pouvez voir l’impact des colonnes qui identifie les colonnes ayant le plus d’impact sur chaque prédiction. Cela vous donnera des informations sur les caractéristiques qui méritent d’être incluses dans votre modèle final et celles qui devraient être écartées. L’impact des colonnes est un score en pourcentage qui indique combien de poids une colonne a dans la prise de prédictions par rapport aux autres colonnes. Pour un impact de colonne de 25 %, Canvas pondère la prédiction à 25 % pour la colonne et à 75 % pour les autres colonnes.
Approches pour améliorer la précision du modèle
Bien qu’il existe plusieurs méthodes pour améliorer la précision d’un modèle, les scientifiques des données et les praticiens de l’apprentissage automatique suivent généralement l’une des deux approches discutées dans cette section, en utilisant les outils et les métriques décrites précédemment.
Approche centrée sur le modèle
Dans cette approche, les données restent toujours les mêmes et sont utilisées pour améliorer itérativement le modèle afin d’obtenir les résultats souhaités. Les outils utilisés dans cette approche comprennent :
- Essayer plusieurs algorithmes d’apprentissage automatique pertinents
- Optimisation des algorithmes et des hyperparamètres
- Différentes méthodes d’ensemble de modèles
- Utilisation de modèles pré-entraînés (SageMaker fournit différents modèles intégrés ou pré-entraînés pour aider les praticiens de l’apprentissage automatique)
- AutoML, qui est ce que fait SageMaker Canvas en arrière-plan (en utilisant Amazon SageMaker Autopilot), qui englobe tout ce qui précède
Approche centrée sur les données
Dans cette approche, l’accent est mis sur la préparation des données, l’amélioration de la qualité des données et la modification itérative des données pour améliorer les performances :
- Exploration des statistiques de l’ensemble de données utilisé pour entraîner le modèle, également connue sous le nom d’analyse exploratoire des données (EDA)
- Amélioration de la qualité des données (nettoyage des données, imputation des valeurs manquantes, détection et gestion des valeurs aberrantes)
- Sélection des caractéristiques
- Ingénierie des caractéristiques
- Augmentation des données
Améliorer les performances du modèle avec Canvas
Nous commençons par l’approche centrée sur les données. Nous utilisons la fonctionnalité d’aperçu du modèle pour effectuer une analyse exploratoire des données initiale. Cela nous fournit une base que nous pouvons utiliser pour effectuer une augmentation des données, générer une nouvelle base, et enfin obtenir le meilleur modèle avec une approche centrée sur le modèle en utilisant la fonctionnalité de construction standard.
Nous utilisons l’ensemble de données synthétique d’un opérateur de télécommunications mobile. Cet échantillon de données contient 5 000 enregistrements, où chaque enregistrement utilise 21 attributs pour décrire le profil du client. Consultez Prévoir la résiliation des clients avec l’apprentissage automatique sans code en utilisant Amazon SageMaker Canvas pour une description complète.
Aperçu du modèle dans une approche axée sur les données
Comme première étape, nous ouvrons l’ensemble de données, sélectionnons la colonne à prédire comme Churn? et générons un modèle d’aperçu en choisissant Aperçu du modèle.
Le volet Aperçu du modèle affiche la progression jusqu’à ce que le modèle d’aperçu soit prêt.
Lorsque le modèle est prêt, SageMaker Canvas génère une analyse de l’importance des caractéristiques.
Enfin, lorsque c’est terminé, le volet affiche une liste de colonnes avec leur impact sur le modèle. Celles-ci sont utiles pour comprendre la pertinence des caractéristiques sur nos prédictions. L’impact de la colonne est un score en pourcentage qui indique combien de poids une colonne a dans les prédictions par rapport aux autres colonnes. Dans l’exemple suivant, pour la colonne des appels nocturnes, SageMaker Canvas pondère la prédiction à 4,04% pour la colonne et à 95,9% pour les autres colonnes. Plus la valeur est élevée, plus l’impact est élevé.
Comme nous pouvons le voir, le modèle d’aperçu a une précision de 95,6%. Essayons maintenant d’améliorer les performances du modèle en utilisant une approche axée sur les données. Nous effectuons la préparation des données et utilisons des techniques d’ingénierie des caractéristiques pour améliorer les performances.
Comme le montre la capture d’écran suivante, nous pouvons observer que les colonnes Phone et State ont beaucoup moins d’impact sur notre prédiction. Par conséquent, nous utiliserons ces informations comme entrée pour notre prochaine phase, la préparation des données.
SageMaker Canvas fournit des transformations de données ML avec lesquelles vous pouvez nettoyer, transformer et préparer vos données pour la construction du modèle. Vous pouvez utiliser ces transformations sur vos ensembles de données sans aucun code, et elles seront ajoutées à la recette du modèle, qui est un enregistrement de la préparation des données effectuée sur vos données avant la construction du modèle.
Notez que toutes les transformations de données que vous utilisez ne modifient que les données d’entrée lors de la construction d’un modèle et ne modifient pas votre ensemble de données ou votre source de données d’origine.
Les transformations suivantes sont disponibles dans SageMaker Canvas pour vous permettre de préparer vos données pour la construction :
- Extraction de dates et heures
- Supprimer des colonnes
- Filtrer des lignes
- Fonctions et opérateurs
- Gérer des lignes
- Renommer des colonnes
- Supprimer des lignes
- Remplacer des valeurs
- Rééchantillonner des données de séries temporelles
Commençons par supprimer les colonnes que nous avons trouvées qui ont peu d’impact sur notre prédiction.
Par exemple, dans cet ensemble de données, le numéro de téléphone est simplement l’équivalent d’un numéro de compte – il est inutile voire préjudiciable pour prédire la probabilité de résiliation des autres comptes. De même, l’état du client n’a pas beaucoup d’impact sur notre modèle. Supprimons donc les colonnes Phone et State en déselectionnant ces caractéristiques sous Nom de la colonne.
Maintenant, effectuons quelques transformations supplémentaires des données et de l’ingénierie des caractéristiques.
Par exemple, nous avons remarqué dans notre analyse précédente que le montant facturé aux clients a un impact direct sur la résiliation. Créons donc une nouvelle colonne qui calcule les charges totales pour nos clients en combinant les charges, les minutes et les appels pour le jour, le soir, la nuit et l’international. Pour ce faire, nous utilisons les formules personnalisées dans SageMaker Canvas.
Commençons par choisir Fonctions, puis ajoutons le texte suivant à la zone de formule :
(Jour Appels*Jour Tarif*Jour Durée)+(Soir Appels*Soir Tarif*Soir Durée)+(Nuit Appels*Nuit Tarif*Nuit Durée)+(Intl Appels*Intl Tarif*Intl Durée)
Donnez un nom à la nouvelle colonne (par exemple, Total Charges), puis choisissez Ajouter après la génération de l’aperçu. La recette du modèle devrait maintenant ressembler à la capture d’écran suivante.
Lorsque cette préparation des données est terminée, nous entraînons un nouveau modèle d’aperçu pour voir si le modèle s’est amélioré. Choisissez à nouveau Aperçu du modèle, et la fenêtre inférieure droite montrera la progression.
Lorsque l’entraînement est terminé, il procédera à la recomputation de la précision prévue et créera également une nouvelle analyse de l’impact des colonnes.
Et enfin, lorsque tout le processus est terminé, nous pouvons voir la même fenêtre que celle que nous avons vue précédemment, mais avec la nouvelle précision du modèle d’aperçu. Vous pouvez remarquer que la précision du modèle a augmenté de 0,4 % (de 95,6 % à 96 %).
Les chiffres dans les images précédentes peuvent différer des vôtres car l’apprentissage automatique introduit une certaine stochasticité dans le processus de formation des modèles, ce qui peut conduire à des résultats différents dans différentes constructions.
Approche centrée sur le modèle pour créer le modèle
Canvas offre deux options pour construire vos modèles :
- Construction standard – Construit le meilleur modèle à partir d’un processus optimisé où la vitesse est échangée contre une meilleure précision. Il utilise l’Auto-ML, qui automatise diverses tâches de ML, y compris la sélection du modèle, l’essai de divers algorithmes pertinents pour votre cas d’utilisation de ML, l’ajustement des hyperparamètres et la création de rapports d’explicabilité du modèle.
- Construction rapide – Construit un modèle simple en une fraction du temps par rapport à une construction standard, mais la précision est échangée contre la vitesse. Le modèle rapide est utile lorsque vous itérez pour comprendre plus rapidement l’impact des modifications des données sur la précision de votre modèle.
Poursuivons en utilisant une approche de construction standard.
Construction standard
Comme nous l’avons vu précédemment, la construction standard construit le meilleur modèle à partir d’un processus optimisé pour maximiser la précision.
Le processus de construction de notre modèle de résiliation prend environ 45 minutes. Pendant ce temps, Canvas teste des centaines de pipelines candidats, en sélectionnant le meilleur modèle. Dans la capture d’écran suivante, nous pouvons voir le temps de construction attendu et la progression.
Avec le processus de construction standard, notre modèle d’apprentissage automatique a amélioré notre précision du modèle à 96,903 %, ce qui est une amélioration significative.
Explorez les métriques avancées
Explorons le modèle en utilisant l’onglet Métriques avancées. Sur l’onglet Scoring, choisissez Métriques avancées.
Cette page affichera la matrice de confusion suivante ainsi que les métriques avancées : score F1, précision, rappel, score F1 et AUC.
Générer des prédictions
Maintenant que les métriques sont bonnes, nous pouvons effectuer une prédiction interactive sur l’onglet Prédire, soit en lot, soit en prédiction unique (en temps réel).
Nous avons deux options :
- Utiliser ce modèle pour exécuter des prédictions en lot ou en prédiction unique
- Envoyer le modèle à Amazon Sagemaker Studio pour le partager avec les data scientists
Nettoyer
Pour éviter de futures charges de session, déconnectez-vous de SageMaker Canvas.
Conclusion
SageMaker Canvas offre des outils puissants qui vous permettent de construire et d’évaluer l’exactitude des modèles, améliorant leurs performances sans avoir besoin de coder ni d’une expertise spécialisée en sciences des données et en apprentissage automatique. Comme nous l’avons vu dans l’exemple à travers la création d’un modèle de désabonnement client, en combinant ces outils avec une approche centrée sur les données et une approche centrée sur le modèle en utilisant des métriques avancées, les analystes d’affaires peuvent créer et évaluer des modèles de prédiction. Avec une interface visuelle, vous êtes également capable de générer vos propres prédictions d’apprentissage automatique précises. Nous vous encourageons à consulter les références et à voir comment bon nombre de ces concepts peuvent s’appliquer à d’autres types de problèmes d’apprentissage automatique.
Références
- Prédire le taux de désabonnement des clients avec l’apprentissage automatique sans code en utilisant Amazon SageMaker Canvas
- Construire, partager, déployer : comment les analystes d’affaires et les data scientists atteignent une mise sur le marché plus rapide en utilisant l’apprentissage automatique sans code et Amazon SageMaker Canvas
- Personnaliser et réutiliser les modèles générés par Amazon SageMaker Autopilot
- Atelier d’immersion Amazon SageMaker Canvas
- Gérer les flux de travail AutoML avec AWS Step Functions et AutoGluon sur Amazon SageMaker
We will continue to update IPGirl; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- L’intelligence artificielle aidant dans la lutte contre les incendies de forêt
- Deep Learning Démystifié Démêler les Secrets de l’Architecture CNN avec l’Ensemble de Données CIFAR-10
- Cette semaine en IA, 31 juillet 2023
- Les bagages IA pour les personnes ayant une déficience visuelle reçoivent des critiques élogieuses
- Vous pouvez maintenant regarder le sommet de l’IA générative à la demande ici!
- Un guide en langage simple pour inverser l’algorithme de Twitter avec LangChain, Activeloop et DeepInfra
- Apprentissage double simplifié Partie 2 – Ciblage et le CATE