Fonctionnement d’AutoML

Il existe un processus général associé au projet d’entraînement machine. Un processus d’entraînement machine standard commence par l’identification du problème métier et la formulation de la question ou de l’énoncé du problème. Vient ensuite une série d’étapes, dont les suivantes : préparation (ou prétraitement) des données, ingénierie des entités, sélection d’un algorithme et d’un entraînement de modèle appropriés, optimisation des hyperparamètres et évaluation du modèle. Il s’agit d’un processus itératif et le modèle idéal n’est souvent obtenu qu’après de multiples itérations et expériences.

Algorithmes d’AutoML

Déterminer le modèle correspondant le mieux aux données nécessite beaucoup de temps, d’efforts et d’expertise dans tout le processus de Machine Learning. L’outil Entraîner à l’aide d’AutoML automatise ce processus entier et identifie le meilleur algorithme avec le meilleur jeu d’hyperparamètres correspondant aux données. Cette mise en œuvre repose sur une mise en œuvre open source appelée mljar-supervised. Les sections ci-après décrivent dans le détail chacune des étapes du processus de Machine Learning.

Entraîner à l’aide du processus AutoML

L’outil Entraîner à l’aide du processus AutoML automatise les éléments suivants :

  1. Prétraitement des données - Les projets de Machine Learning réussis nécessitent de collecter des données en entrée de qualité permettant de résoudre un problème spécifique. Ces données peuvent provenir de sources de données distinctes, et il peut être nécessaire de les combiner. Une fois les données collectées et synthétisées, elles doivent être nettoyées et rendues silencieuses afin de s’assurer que les algorithmes d’entraînement machine puissent être efficacement entraînés sur ces données et apprendre à partir d’elles. Cette étape est généralement longue et fastidieuse et peut nécessiter des connaissances et une expérience détaillées et spécialisées. Le nettoyage des données peut nécessiter d’identifier et de fournir les valeurs manquantes, de détecter les points aberrants, de corriger les données mal étiquetées, entre autres, toutes ces tâches pouvant demander un temps et des efforts considérables de la part du professionnel de Machine Learning. Les étapes de prétraitement sont les suivantes :

    • Élimination des points aberrants : les points aberrants sont des points de données dissemblables par rapport au autres points de données. Ces points aberrants peuvent avoir pour cause des erreurs de saisie de données, des erreurs de mesure de données ou une dissemblance légitime, entre autres. Quelle qu’en soit la cause, il est important de supprimer les points aberrants des données, car ils ont tendance à perturber le modèle pendant la phase d’entraînement. Les méthodes courantes d’élimination des points aberrants consistent à corriger les entrées manuellement ou à les supprimer du jeu de données.
    • Imputation des valeurs manquantes : certaines des colonnes du jeu de données peuvent avoir des valeurs manquantes. Les modèles d’entraînement machine ne peuvent pas être entraînés s’il manque des entrées dans les données d’entraînement. Pour être sûr qu’il ne manque pas d’entrées dans le jeu de données, remplissez les entrées manquantes avec des données valides à l’aide d’un processus nommé imputation de données. Les stratégies de remplissage de ces entrées manquantes comprennent l’ajout de l’occurrence la plus courante de la valeur ou l’ajout d’une nouvelle valeur pour mettre en évidence le fait que les données sont manquantes. Pour les données numériques, les stratégies peuvent également consister à utiliser la moyenne ou la médiane de toutes les entrées dans la colonne des données manquantes. Les stratégies peuvent actuellement être déterminées en exécutant l’outil Remplir les valeurs manquantes. L’outil Remplir les valeurs manquantes permet d’imputer des données non seulement à l’aide d’une statistique globale issue de la colonne, mais aussi en utilisant des stratégies spatiales telles que les voisins locaux et les voisins spatiotemporels ou des stratégies temporelles telles que des valeurs chronologiques.
    • Mise à l’échelle et normalisation de données - L’une des hypothèses principales lors de l’entraînement d’un modèle de Machine Learning de modèle linéaire, tel que OLS (résidus), est que les données entraînées sont distribuées normalement, à savoir qu’elles suivent une courbe en forme de cloche.
      Données distribuées normalement

      Avant d’utiliser un modèle linéaire, assurez-vous que chacune des colonnes du jeu de données est distribuée normalement. Si des colonnes ne sont pas distribuées normalement, les transformations sont généralement appliquées aux données pour les convertir en une distribution normale.

      Vérifiez que toutes les colonnes dans le jeu de données sont à la même échelle afin que le modèle n’accorde pas d’importance aux colonnes dont les valeurs se situent dans l’échelle plus grande. Cela s’effectue en appliquant des techniques de mise à l’échelle au jeu de données.

      Bien que ce qui précède puisse se vérifier pour les modèles linéaires, les autres algorithmes tels que la régression logistique, et en particulier les modèles basés sur un arbre (par exemple, DecisionTree, ExtraTree, RandomForest, XGBoost et LightGBM) ne supposent aucune normalité et sont plus résistants aux différences d’échelle, aux distributions corrigées, et ainsi de suite.

    • Conversion de données catégoriques en données numériques : la plupart des modèles d’entraînement machine nécessitent que les données à utiliser pour l’entraînement soient sous la forme de nombres. Ils ne peuvent pas fonctionner avec d’autres types de données. Convertissez les colonnes non numériques (notamment State, Country, City ou Land cover category, Construction type, Dominant political party, etc.) en nombres. Les techniques utilisées pour convertir les données catégoriques en nombres comprennent le codage d’étiquette et le codage one-hot.

  2. Ingénierie et sélection d’entités : on appelle entités les colonnes utilisées pendant le processus d’entraînement du modèle. L’utilité de ces entités pendant l’entraînement du modèle varie. Certaines d’entre elles ne sont pas nécessairement utiles, et dans ce cas, le modèle s’améliore lorsqu’elles sont supprimées du jeu de données.

    Les approches telles que l’élimination d’entité récursive et les techniques d’entité aléatoire aident à déterminer l’utilité des entités d’un jeu de données, et les entités qui ne sont pas utiles sans ces approches sont généralement supprimées.

    Dans certains cas, combiner plusieurs entités en une seule entité a pour effet d’améliorer le modèle. On appelle ce processus ingénierie d’entité.

    À l’exception des nouvelles entités obtenues en combinant plusieurs entités à partir de l’entrée, l’outil crée également des entités spatiales portant des noms allant de zone3_id à zone7_id lorsque l’option Avancé est utilisée. Ces nouvelles entités sont générées en attribuant l’emplacement des entités d’entraînement en entrée à plusieurs (jusqu’à cinq) grilles spatiales de taille variable et en utilisant les ID de grille comme variables indépendantes nominales (catégorielles) dont les noms vont de zone3_id à zone7_id. Cela fournit des informations spatiales pertinentes aux modèles et leur permet d’apprendre davantage des données disponibles.

  3. Entraînement et sélection des modèles - À l’étape d’entraînement du modèle, le professionnel du Machine Learning choisit l’algorithme de Machine Learning approprié en fonction du problème et des caractéristiques des données. Il commence ensuite le processus itératif d’entraînement des modèles à adapter aux modèles, ce qui implique souvent de tester différents algorithmes d’entraînement machine. Chacun de ces algorithmes peut avoir plusieurs hyperparamètres différents, qui sont des valeurs spécifiées manuellement par le professionnel du Machine Learning et déterminant la manière dont le modèle apprend. Ces hyperparamètres sont ensuite optimisés (autrement dit, ajustés) dans le but d’améliorer les performances de l’algorithme et d’obtenir de meilleurs résultats. Il s’agit d’un processus itératif nécessitant le temps et l’expertise d’un professionnel du Machine Learning. Les divers algorithmes ou les modèles statistiques incluent Régression linéaire et Régression logistique, tandis que les autres modèles de Machine Learning sont de type DecisionTree, RandomForest et des modèles d’optimisation plus récents tels que LightGBM et XGBoost. Bien que LightGBM et XGBoost soient plus performants que la plupart des autres modèles sur pratiquement tous les jeux de données, il est difficile de prévoir quels modèles seront efficaces avec un jeu de données spécifique. Vous devez donc essayer tous les modèles pour en comparer les performances avant de choisir le modèle qui convient le mieux aux données. Cela désigne des modèles qui ajustent les données avec les valeurs faibles MSE, RMSE, MAE et MAPE, tandis que des valeurs élevées R2, Spearman et Pearson correspondent aux problèmes de régression, et la valeur la plus faible Logloss et les valeurs élevées AUC et F1 correspondent à des problèmes de classification.

    Dans la majorité des cas, le fait de combiner plusieurs modèles en un seul modèle et d’extraire la sortie de ce modèle combiné offre de meilleurs résultats qu’avec un seul modèle. On appelle ce processus assemblage de modèle.

  4. Optimisation des hyperparamètres : bien que la plupart des étapes précédentes sont des étapes itératives, l’étape qui est souvent la plus difficile dans l’entraînement de modèles d’entraînement machine est celle de l’optimisation des hyperparamètres.

    On peut considérer les hyperparamètres comme des leviers fournis avec chaque modèle. Les hyperparamètres utilisés pour entraîner un modèle RandomForest sont différents de ceux utilisés pour entraîner un modèle LightGBM. Découvrir ces hyperparamètres vous aidera à comprendre le modèle.

  5. Sélection du modèle : l’étape finale du processus d’entraînement machine réside dans l’évaluation du modèle, où vous vérifiez que l’algorithme d’entraînement machine entraîné et optimisé convient bien aux données en fonction desquelles il n’a pas été adapté. Ces données inaperçues sont souvent nommées jeu de validation ou de test et sont conservées séparément du reste des données utilisées pour entraîner le modèle. L’objectif de cette étape finale est de s’assurer que l’algorithme d’entraînement machine apporte une exactitude prédictive acceptable au nouvelles données.

En examinant le processus d’entraînement machine entier, il est clair qu’il existe à chaque étape des degrés variables de saisie humaine, de prise de décision et de choix.

  • Les données appropriées ont-elles été collectées pour résoudre le problème, et en quantité suffisante ?
  • Qu’est-ce qu’un point aberrant au regard de nos données ?
  • Par quoi remplacer les éventuelles valeurs manquantes ?
  • Quelles entités doivent être incluses dans le modèle de Machine Learning ?
  • Quel algorithme de Machine Learning doit être utilisé ?
  • Qu’est-ce qu’un niveau de performances acceptable pour le modèle ?
  • Quelle est la meilleure combinaison d’hyperparamètres pour un modèle donné ?

Cette dernière décision peut potentiellement impliquer des centaines voire des milliers de combinaisons d'hyperparamètres pouvant être itérés. Il suffit d’ajouter quelques scénarios différents d’ingénierie d’entités, ainsi que l’entraînement et l’optimisation de plusieurs algorithmes de Machine Learning différents, pour que le processus tout entier devienne ingérable et improductif. En outre, plusieurs des étapes du processus d’entraînement machine nécessitent une compréhension technique experte des techniques de la science des données, des statistiques et des algorithmes d’entraînement machine. La conception et l’exécution des projets d’entraînement machine, de par la nature de ces projets, peuvent être longues, fastidieuses, coûteuses et souvent très dépendantes de professionnels de l’entraînement machine et de scientifiques de données formés.

La dernière décennie a vu l’essor rapide de la technologie de Machine Learning, qu’il s’agisse de ses applications diverses ou des nombreuses recherches qu’elle suscite. Certains des moteurs les plus forts sous-jacents à cette croissance résident dans la maturité des algorithmes de Machine Learning et des méthodes mêmes, dans la génération et la prolifération de volumes massifs de données à partir desquelles les algorithmes apprennent, dans l’abondance de ressources informatiques abordables pour exécuter les algorithmes et dans la compréhension croissante des entreprises qui réalisent que les algorithmes de Machine Learning sont adaptés à des structures de données et problèmes complexes.

De nombreuses entreprises souhaitent adopter la technologie de Machine Learning pour tirer parti de leurs données et en retirer des informations nouvelles exploitables. Il existe pourtant un déséquilibre entre le nombre des applications potentielles de Machine Learning et le nombre des professionnels spécialisés et qualifiés dans ce domaine qui sont capables de les traiter. C’est pourquoi il y a une demande croissante de « démocratisation » de la technologie de Machine Learning dans les entreprises, en créant des outils qui la rendent largement accessible au sein de l’entreprise et peuvent être utilisés clé en main par des non-experts et des spécialistes du domaine.

Récemment, AutoML (Automated Machine Learning) a émergé comme un moyen de satisfaire la très forte demande de mise en place du Machine Learning à tous les niveaux d’expérience et de compétence des entreprises. AutoML vise à créer un système unique pour automatiser (autrement dit, éliminer l’intervention humaine) au maximum le processus de Machine Learning, y compris la préparation des données, l’ingénierie des entités, la sélection des modèles, l’optimisation des hyperparamètres et l’évaluation des modèles. Cette approche peut bénéficier aux non-experts en abaissant leur niveau d’accès au Machine Learning, mais aussi aux professionnels formés au Machine Learning en éliminant certaines des tâches les plus fastidieuses et longues du processus de Machine Learning.

AutoML pour les non-experts en Machine Learning (analystes du SIG/analystes en informatique de gestion ou analystes des données qui sont spécialisés dans un domaine) - L’utilisation d’AutoML a pour principal avantage d’éliminer certaines des étapes du processus de Machine Learning qui demandent le plus d’expertise et de compréhension techniques. Les analystes spécialisés dans un domaine peuvent définir leur problème métier et collecter les données appropriées, laissant alors l’ordinateur apprendre à faire le reste. Ils n’ont pas besoin d’avoir des connaissances approfondies sur les techniques de la science des données pour le nettoyage des données et l’ingénierie des entités, ni de savoir ce que font tous les algorithmes de Machine Learning, ni de consacrer du temps à explorer différents algorithmes et configurations d’hyperparamètres. Ces analystes peuvent exploiter leurs connaissances techniques dans le cadre d’un problème métier ou scénario précis, plutôt que porter leur action sur le processus de Machine Learning proprement dit. En outre, dans leur organisation, ils peuvent être moins dépendants des scientifiques des données et des ingénieurs en Machine Learning formés, car ils peuvent créer et utiliser des modèles avancés par eux-mêmes, souvent sans qu’aucune expérience dans le codage ne soit nécessaire.

AutoML pour les experts en Machine Learning (scientifiques des données ou ingénieurs en Machine Learning) - AutoML peut être extrêmement utile aux experts en Machine Learning, bien que les raisons puissent être moins évidentes. Par exemple, les experts de l’entraînement machine n’ont pas besoin de consacrer autant de temps à assister les spécialistes dans leur entreprise et peuvent ainsi se concentrer sur leur propre travail d’entraînement machine plus avancé. Concernant les projets de Machine Learning des experts en la matière, AutoML peut permettre d’économiser un temps considérable et de décupler la productivité. Il est possible d’automatiser une grande partie des étapes chronophages du processus de Machine Learning (par exemple, le nettoyage des données, l’ingénierie des entités, la sélection des modèles et l’optimisation des hyperparamètres). Le temps gagné grâce à l’automatisation d’un grand nombre de ces étapes exploratrices répétitives peut être consacré à des tâches techniques plus avancées ou à des tâches nécessitant une plus grande implication de la part de l’être humain (par exemple, collaboration avec d’autres spécialistes, compréhension du problème métier ou interprétation des résultats du Machine Learning).

Outre le gain de temps apporté, AutoML peut également décupler la productivité des professionnels du Machine Learning, car il élimine certains des choix et des expériences subjectifs impliqués dans le processus de Machine Learning. Par exemple, un professionnel du Machine Learning approchant un nouveau projet peut disposer de la formation et de l’expertise qui l’aideront à choisir les nouvelles fonctionnalités à concevoir, et à déterminer le meilleur algorithme de Machine Learning pour un problème spécifique et les hyperparamètres les plus efficaces. Toutefois, il se peut qu’il néglige la conception de certaines nouvelles fonctionnalités ou qu’il ne teste pas toutes les combinaisons possibles d’hyperparamètres pendant qu’il exécute le processus de Machine Learning. De plus, le professionnel de l’entraînement machine peut influencer le processus de sélection d’entité ou le choix d’algorithme car il préfèrera un algorithme d’entraînement machine spécifique en fonction de son travail précédent ou de ses résultats dans d’autres scénarios d’entraînement machine. En réalité, aucun algorithme de Machine Learning n’est optimal avec tous les jeux de données. Certains algorithmes de Machine Learning sont plus sensibles que d’autres à la sélection d’hyperparamètres, et de nombreux problèmes métier présentent des degrés variables de complexité et des besoins variables d’interprétabilité par les algorithmes de Machine Learning utilisés pour les résoudre. AutoML peut aider à réduire certaines de ces erreurs humaines en appliquant de nombreux algorithmes d’entraînement machine différents au même jeu de données puis en déterminant lequel est le plus efficace.

Un professionnel de l’entraînement machine peut également se servir d’AutoML comme référence ou point de départ initial dans un projet d’entraînement machine. Il peut l’utiliser afin de développer automatiquement un modèle de ligne de base pour un jeu de données, ce qui peut lui apporter des informations préliminaires sur un problème spécifique. De là, il peut décider d’ajouter ou de supprimer certaines entités dans un jeu de données en entrée ou de s’intéresser à un algorithme de Machine Learning particulier pour en optimiser les paramètres. En ce sens, un professionnel de l’entraînement peut percevoir AutoML comme un moyen d’affiner ses choix initiaux afin de pouvoir se concentrer sur l’amélioration des performances du système d’entraînement machine dans son ensemble. Il s’agit d’un processus très courant dans la pratique, au cours duquel les experts en Machine Learning développent une référence orientée sur les données avec AutoML, puis exploitent cette référence en intégrant leur expertise pour affiner les résultats.

En définitive, démocratiser le Machine Learning via AutoML dans une entreprise permet aux spécialistes de se concentrer sur le problème métier et d’obtenir des résultats exploitables, permet à davantage d’analystes de créer de meilleurs modèles et peut limiter le nombre d’experts en Machine Learning que l’entreprise doit recruter. Cela peut également décupler la productivité des professionnels de l’entraînement machine et des scientifiques des données formés, leur permettant de concentrer leur expertise sur la multitude des autres tâches qui en ont le plus besoin.

En résumé, les étapes suivantes sont nécessaires pour identifier le meilleur modèle avec l’outil Entraîner à l’aide d’AutoML :

  1. Les algorithmes simples, comme les modèles DecisionTree (un arbre simple présentant une profondeur maximale de 4) et linéaires, sont testés. Cela permet d’examiner rapidement les données et les résultats auxquels s’attendre.
  2. Les modèles sélectionnés au lancement d’AutoML (étape 1 ci-dessus) sont entraînés avec les paramètres par défaut et, à cette étape, vous exécutez vos données via un jeu d’algorithmes beaucoup plus complexes, en n’utilisant que les hyperparamètres par défaut. Un ajustement de modèle est essayé pour chaque algorithme et pour tous les algorithmes disponibles. Les algorithmes disponibles sont Linear, RandomForest, XGBoost, LightGBM, DecisionTree et ExtraTree.
  3. Effectuez une recherche aléatoire sur l’espace d’hyperparamètre de chaque algorithme pour obtenir le jeu optimal d’hyperparamètres.
  4. Construction de nouvelles entités à l’aide d’entités finalisées. Déterminez lesquelles des nouvelles entités offrent la plus grande capacité de prévision et ajoutez-les au jeu de données initial. Le meilleur jeu d’hyperparamètres identifié à l’étape précédente est utilisé à cette étape.
  5. Il s’agit de l’étape de sélection des entités. Utilisez le jeu optimal d’hyperparamètres déterminé à l’étape 4 afin d’entraîner le modèle le plus efficace pour chaque algorithme, puis déterminez les entités les moins importantes et supprimez-les.
  6. Les résultats issus des meilleurs modèles entraînés à ce jour sont rassemblés.
  7. Les modèles sont empilés et les résultats des meilleurs modèles (y compris ceux empilés) sont combinés.

Ensemble de modèles - Un ensemble est une collection de modèles dont les prévisions sont combinées par le calcul de la moyenne pondérée ou le vote.

Ensemble de modèles

Les stratégies les plus courantes utilisées pour l’assemblage sont le « bagging » (RandomForest est un exemple classique de bagging) et l’optimisation (XGBoost est un exemple d’optimisation), qui combinent les sorties des modèles appartenant aux mêmes algorithmes. Les techniques récentes, telles que celles mentionnées dans Ensemble Selection from Libraries of Models par Caruana et. al, combinent divers modèles. Procédez comme suit pour créer un ensemble :

  1. Commencez par l’ensemble vide.
  2. Ajoutez le modèle dans la bibliothèque qui maximise les performances de l’ensemble à la mesure d’erreur sur un jeu de validation.
  3. Répétez l’étape précédente pour un nombre fixe d’itérations ou jusqu’à ce que tous les modèles aient été utilisés.
  4. Renvoyez l’ensemble du jeu imbriqué d’ensembles qui offre les performances maximales sur le jeu de validation.

Empilage de modèles : l’empilage de modèles implique également de combiner les résultats de plusieurs modèles et d’en retirer le meilleur résultat.

Empilage de modèles

Alors que les approches orientées sur un ensemble combinent les résultats de divers modèles en attribuant différentes pondérations aux sorties, l’empilage utilise les sorties de chacun des modèles de base en tant qu’entités et les ajoute à un modèle de niveau supérieur, un métamodèle. La sortie du métamodèle de niveau supérieur est utilisée comme sortie finale.

Pile d’ensembles : pour améliorer les performances, des piles de modèles sont créées et leurs sorties sont combinées pour former une pile d’ensembles.

Interpréter les rapports en sortie

L’outil Entraîner à l’aide du processus AutoML peut générer un rapport HTML en sortie.

La page principale du rapport affiche le tableau de classement. Les mêmes informations sont également disponibles dans la fenêtre en sortie de l’outil.

Tableau de classement

Le tableau de classement affiche les modèles évalués et leur valeur de mesure. Dans le cas du problème de régression, le modèle présentant le moins d’EQM est considéré comme le meilleur modèle (en l’occurrence, l’ensemble). Ce sera toutefois différent (par exemple, Logloss) pour les problèmes de classification.

AutoML Performance Boxplot compare la mesure d’évaluation de différents modèles avec la mesure d’évaluation (EQM) sur l’axe y et les modèles sur l’axe x, comme indiqué ci-dessous. La boîte à moustaches montre que le meilleur modèle est le modèle d’ensemble dont le nombre d’erreurs quadratiques moyennes (RMSE) est le plus faible.

Performances d’AutoML de tous les modèles

Ce diagramme des performances d’AutoML montre comment la mesure d’évaluation du modèle le plus performant, en l’occurrence le modèle d’ensemble, varie selon les différentes itérations. Le diagramme d’itération vous aide à comprendre la cohérence du modèle dans ses différentes exécutions.

Performances d’AutoML du meilleur modèle
Corrélation de Spearman des modèles

Ensuite, la corrélation de Spearman est générée pour tous les modèles ayant été évalués, et les modèles associés plus étroitement sont affichés dans des tons plus foncés de bleu. Par exemple, les sorties issues des modèles LightGBM et LightGBM sont les plus étroitement associées (cela étant normal puisque les deux sont des algorithmes d’optimisation). La sortie issue de LightGBM ressemble à celle issue de RandomForest par rapport à la sortie d’ExtraTrees.

Dans le tableau de classement, cliquer sur le lien de l’un des modèles dans la colonne Nom a pour effet d’afficher une page qui montre les hyperparamètres ayant été finalisés pour l’entraînement du modèle après l’optimisation des hyperparamètres. Dans cet exemple, l’arbre de décision a été entraîné avec la valeur max_depth égale à 3.

Hyperparamètres de modèle

La même page affiche également d’autres mesures, outre celle ayant été utilisée pour l’évaluation. Dans l’exemple ci-dessous, qui consiste en une tâche de régression, vous pouvez voir les mesures MAE, MSE, R2 et MAPE, ainsi que la mesure EQM qui a été utilisée pour évaluer le modèle.

Mesures

On aperçoit également le nuage de points des sorties réelles et prédites (ici pour un échantillon de 5 000 points de données).

Nuage de points des valeurs réelles et prédites : modèle 1

Nuage de points des valeurs réelles et prédites : modèle 2

Vous pouvez utiliser ce diagramme pour déterminer les performances du modèle. Les chiffres ci-dessus correspondent à la comparaison des nuages de points de deux modèles obtenus à partir du rapport. Le second modèle est plus performant que le premier, dont les valeurs prédites et réelles divergent davantage.

Enfin, pour rendre les modèles plus faciles à expliquer, l’importance de chaque variable dans le modèle final est également incluse dans le rapport (comparable à l’importance des entités dans sklearn). Contrairement à sklearn, ce diagramme peut être généré pour les modèles autres que des arbres de sklearn également. Shapley Additive Explanations (SHAP) propose cette fonction d’explicabilité de modèle pour les modèles non basés sur des arbres également.

SHAP est une approche basée sur la théorie des jeux qui permet d’expliquer la sortie d’un modèle de Machine Learning. Elle établit une relation entre l’allocation optimale de crédits et les explications locales, en utilisant les valeurs Shapley classiques selon la théorie des jeux et leur extensions associées. Vous trouverez d’autres informations complémentaires sur SHAP et son implémentation ici. La sortie SHAP est disponible uniquement avec l’option Standard.

Dans le diagramme ci-dessous, vous pouvez voir l’impact global de chaque variable du jeu de données de logement sur le modèle entraîné. C’est la démonstration que l’entité sqft_living influence le plus le modèle et qu’il s’agit de l’entité la plus importante, suivie du nombre de bathrooms et de bedrooms dans la prédiction des prix de l’immobilier.

Diagramme de l’importance des entités SHAP

Avec l’option Standard, vous avez la possibilité de consulter le rapport EDA (Exploratory Data Analysis) automatique, qui produit des résumés statistiques pour la variable cible et les facteurs de prédiction utilisés dans l’entraînement du modèle. Voici un exemple de rapport EDA pour une variable nommée altclip.tif :

Résumés statistiques d’un exemple de variable

Distribution de la variable

Bibliographie

Caruana, Rich et al. « Ensemble Selection from Libraries of Models » Proceedings of the 21st International Conference on Machine Learning. Banff, Canada (2004). http://www.cs.cornell.edu/~alexn/papers/shotgun.icml04.revised.rev2.pdf.