L’évaluation des modèles est le processus qui permet de mesurer la performance des modèles de machine learning. Ce processus pose la question suivante : lorsque votre modèle émet un jugement sur le monde réel, à quelles fréquence a-t-il raison ? Ou, dans certains cas, à quel point était-il proche de la vérité ?
De plus en plus, des sommes d’argent importantes sont en jeu lorsque les entreprises s’appuient sur les modèles d’IA. En février 2021, les dirigeants de Zillow ont fait un pari important en se basant sur leurs modèles de machine learning qui prédisent la valeur des maisons. En plus de faire ces estimations, il arrivait souvent que Zillow achète les maisons dont le prix était déterminé par son modèle, par l’intermédiaire d’une filiale appelée « Zillow Offers ».
Huit mois plus tard, Zillow a mis fin à Zillow Offers et a connu une dépréciation de 304 millions de dollars sur ses actions. Selon l’entreprise, la cause était l’achat de nombreuses maisons à des prix supérieurs à ceux auxquels elle estimait pouvoir les vendre. Ses actions ont chuté, et Zillow a licencié environ 25 % de son personnel.
À qui la faute ? Son modèle d’IA n’était pas assez précis pour anticiper le marché. Ses prédictions et prévisions ne correspondaient pas à la valeur réelle des logements.1
Alors que les modèles de ML se répandent dans les domaines de la santé, du recrutement et de la justice pénale, le coût d’une mauvaise évaluation peut réellement nuire aux gens. Dans le domaine de la science des données et de l’industrie, évaluer correctement les modèles est désormais important pour déployer l’IA de manière responsable.
Obtenez des informations sur les actualités les plus importantes et les plus intrigantes en matière d’intelligence artificielle. Abonnez-vous à notre newsletter hebdomadaire Think. Lire la Déclaration de confidentialité d’IBM.
Chaque modèle est conçu pour faire des choses différentes.
Les modèles de classification étiquettent les données entrantes comme appartenant à telle ou telle catégorie. (Un modèle qui signale si un patient est atteint ou non de septicémie est un modèle de classification.)
Les modèles de régression produisent plutôt un nombre le long d’un continuum. (Le modèle des prix immobiliers de Zillow était un modèle de régression.)
Les différents types de modèles nécessitent différents types de tests. Souvent, l’idéal est de trianguler la performance à l’aide de plusieurs indicateurs, car aucun indicateur n’est exempt d’incertitude.
Certains modèles résolvent des « problèmes de classification », c’est-à-dire qu’ils divisent le monde en catégories. Les indicateurs de classification sont tout aussi approximatifs. La précision du modèle est assez intuitive : elle se calcule en divisant le nombre de prédictions correctes par le nombre total de prédictions. (En machine learning, le terme « prédiction » désigne les estimations éclairées que font les modèles, même si ces estimations portent sur un événement actuel, et non futur.)
Le problème de la précision des modèles est qu’un nombre élevé peut donner aux parties prenantes un faux sentiment de sécurité. Un modèle destiné à détecter un événement rare, mais catastrophique (par exemple, un certain type de cancer), pourrait par réflexe classer chaque examen comme négatif. La précision du modèle serait élevée, car 99,99 % de ces relevés négatifs seraient corrects. Mais cette précision ne serait pas d’un grand réconfort pour le pauvre patient ayant reçu ce rare faux négatif. Le modèle était précis d’un point de vue technique, mais il n’a pas rempli sa fonction.
Il devient utile de décomposer la performance d’un modèle de classification en types de prédictions, ou suppositions informées, qu’il émet. Dans une tâche de classification binaire, comme la détection d’un cancer, il existe quatre résultats possibles (lorsqu’ils sont présentés dans une grille de 2 x 2, ce cadre est souvent appelé « matrice de confusion ») :
On peut d’ores et déjà comprendre pourquoi il vaut la peine de distinguer ces catégories. Un diagnostic de cancer faussement positif serait sans aucun doute traumatisant, jusqu’à ce que des tests plus poussés révèlent qu’il s’agissait d’une fausse alerte. Cependant, un faux négatif peut être fatal.
Les spécialistes de la science des données ont développé une série de sous-indicateurs pour sonder la performance des classificateurs et évaluer les relations entre les quadrants de la matrice de confusion.
L’indicateur appelé précision demande : « parmi toutes les prédictions positives faites par un classificateur, combien étaient correctes ? »
Un algorithme de reconnaissance d’image monté sur une voiture franchit 10 intersections lors d’un parcours d’essai, dont six sont équipées de panneaux d’arrêt. Or, dire qu’un modèle « a détecté les six panneaux d’arrêt » reviendrait à ignorer les principales différences potentielles en termes de précision. S’il signalait les six avec précision et ne produisait pas de faux positif, il aurait une précision de 6/6, soit 100 %. Cependant, s’il signalait ces six panneaux et hallucinait en signalant quatre panneaux d’arrêt qui n’étaient pas là, sa précision ne serait que de 6/10, soit à peine 60 %.
L’indicateur appelé rappel (ou « taux de vrais positifs ») mesure quelque chose de subtilement différent. Le rappel pose la question suivante : parmi tous les panneaux d’arrêt qui étaient effectivement présents, combien le modèle en a-t-il détecté ?
Imaginez un autre parcours d’essai comportant 100 intersections, dont 50 avec des panneaux d’arrêt. Un modèle détectant 30 de ces panneaux d’arrêt aurait un taux de rappel de 60 % ; 40 d’entre eux, 80 % ; et ainsi de suite. (Le rappel ne se préoccupe pas des fausses alertes. En théorie, on peut donc « jouer » avec le rappel 100 % en apprenant à un modèle à voir des panneaux d’arrêt partout).
Ces deux indicateurs, la précision et le rappel, sont en tension. Un ingénieur cherchant à améliorer le rappel pourrait viser trop haut, créant ainsi un modèle qui donne trop souvent des faux positifs. Souvent, régler un modèle revient à gérer des compromis entre un rappel plus élevé (capter tous les phénomènes que vous cherchez à détecter) et une précision plus faible (viser plus haut et détecter également les faux positifs).
Pour gérer ce compromis, les spécialistes du machine learning utilisent souvent un indicateur appelé score F1, qui est une « moyenne harmonique » de la précision et du rappel. (La moyenne harmonique diffère de la moyenne plus traditionnelle en ce qu’elle est affectée de manière disproportionnée par les valeurs faibles. Le score F1 chute donc rapidement si la précision ou le rappel sont faibles.
Le score F1 parfait est de 1,0, mais malheureusement, il n’existe pas de critères universels pour déterminer ce qui constitue un score F1 suffisamment élevé, le contexte étant primordial.2 Ce qui est clair, c’est qu’un score F1 élevé est préférable. Plus la valeur est proche de 1,0, plus ce modèle est capable de détecter efficacement ce qu’il est censé détecter, tout en minimisant les faux positifs et les faux négatifs.3
Parmi les indicateurs de classification, deux impliquent les notions connexes de confiance et de seuils.
Un modèle ne se contente pas d’indiquer « panneau d’arrêt » ou « pas panneau d’arrêt ». Il s’agit plutôt de dire : « Il y a 98 % de chances qu’il s’agisse d’un panneau d’arrêt » (une prédiction très confiante). Ou il dit : « Il y a 51 % de chances que ce soit un panneau d’arrêt » (une prédiction peu confiante).
L’indicateur connu sous le nom de perte logarithmique vise à évaluer la confiance des modèles. Les erreurs les plus confiantes sont assorties d’une forte pénalité. Le manque de confiance dans les prédictions correctes est également pénalisé, mais dans une moindre mesure. Un modèle parfait obtiendrait un score de 0 pour la perte logarithmique, bien que cela soit rarement le cas. Un « bon » score dépendra là encore de votre modèle et du type de tâche.
Quel que soit le score de confiance du modèle, les utilisateurs humains de modèles ML doivent finalement décider d’un seuil pour transformer les intuitions du modèle en décisions définitives, oui ou non. Un seuil peut établir la règle suivante : « si >75 % de confiance, alors la sortie est « oui, un panneau d’arrêt ». Mais l’utilisateur humain peut tout aussi bien choisir un seuil de confiance de 51 % ou de 98 %. Les sorties du modèle peuvent évidemment varier considérablement en fonction du seuil choisi.
Une courbe ROC (d’après l’expression technique « caractéristique de fonctionnement du récepteur ») et l’indicateur ROC AUC (ou « zone sous la courbe ») sondent la performance du modèle à des seuils différents. Techniquement, une courbe ROC trace le taux de vrais positifs (TPR) par rapport au taux de faux positifs (FPR) au fur et à mesure que le seuil change. Conceptuellement, le ROC AUC met de côté les jugements à un seuil particulier, en observant plutôt globalement si le modèle est bon lors du tri : « indépendamment de l’endroit où nous fixons le seuil, le modèle produit-il au moins systématiquement des scores de confiance plus élevés lorsque des panneaux d’arrêt sont effectivement présents ? Le ROC AUC résume cette capacité globale à distinguer les positifs des négatifs.
La section précédente traite des problèmes de « classification » lorsqu’un phénomène (qu’il s’agisse d’un panneau d’arrêt ou d’un cancer) est clairement présent ou non. Mais de nombreux phénomènes (valeur immobilière, taux de glucose d’un patient) se produisent sur un spectre, nécessitant différents modèles et différentes mesures de performance. Les modèles qui traitent ces phénomènes produisent des chiffres, et non des catégories. Ils sont appelés « modèles de régression » et sont évalués à l’aide d’indicateurs de régression, qui posent la question suivante : « À quel point ce chiffre est-il loin de la réalité ? »
L’erreur absolue moyenne (MAE) pose la question suivante : « en moyenne, à quel point nous sommes-nous trompés ? » Si un modèle pense cette semaine qu’une maison se vendra 500 000 dollars et qu’elle est vendue à 525 000, puis la semaine suivante pense qu’une maison se vendra 400 000 dollars et qu’elle est vendue à 390 000, sa MAE est de 17 500 dollars (25 000 + 10 000, divisé par 2). La MAE ne tient pas compte du fait que les prédictions d’un modèle sont systématiquement supérieures ou inférieures à la réalité. Il s’agit simplement d’évaluer la distance moyenne par rapport à la réalité.
L’erreur quadratique moyenne (RMSE) est similaire, mais elle pénalise plus durement les chiffres très éloignés de la réalité. Elle y parvient en élevant les erreurs au carré, ce qui amplifie les grosses erreurs, avant de prendre la racine carrée de la moyenne résultante. La RMSE de l’exemple précédent est de 19 039 dollars américains. (L’erreur quadratique moyenne, ou MSE, fonctionne de manière similaire, mais sans la racine carrée, ce qui la rend moins interprétable, mais parfois utile sur le plan mathématique). La RMSE est utile lorsque les erreurs importantes sont particulièrement coûteuses.
Un indicateur moins intuitif est le R au carré. Le R au carré ne mesure pas l’écart entre les prévisions du modèle et la réalité, mais la part de variation globale de la variable cible que le modèle est parvenu à expliquer.
Pour vous faire une idée du R au carré, imaginez tout d’abord un modèle simpliste de prix de l’immobilier qui produit la même valeur pour chaque logement : le prix moyen dans la région. La question du R au carré : dans quelle mesure notre modèle est-il meilleur que celui qui évalue simplement la moyenne ? Plus le modèle capte la variance des prix réels, plus son R au carré est élevé. (Un R au carré de 0,85 signifie que le modèle explique environ 85 % de la variation du résultat ; un R au carré de 0 signifie qu’il n’est pas meilleur que le modèle qui débite les moyennes.)
Comme tous les indicateurs, le R au carré est imparfait. Il est particulièrement faible avec des données contenant des valeurs aberrantes.
Tous les étudiants qui réussissent un examen n’ont pas vraiment appris la matière. L’étudiant peut avoir mémorisé des fiches sans avoir assimilé les notions. L’étudiant a peut-être triché en ayant vu le test à l’avance d’une manière ou d’une autre. Il a peut-être simplement eu de la chance. Il en va de même pour les modèles de machine learning.
Une erreur rudimentaire dans l’évaluation des modèles de machine learning serait de les tester sur les mêmes données que celles utilisées pour son entraînement. Le modèle peut être très performant, mais simplement parce qu’il a mémorisé les données. Il n’a pas réussi à généraliser l’apprentissage du phénomène sous-jacent qu’il est censé détecter, et il est susceptible d’échouer lorsqu’il rencontrera de nouvelles données dans le monde réel. Le terme technique désignant ce comportement semblable à la mémorisation est le surapprentissage.
La mesure de protection habituelle est appelée division « entraînement-test ». On divise les données disponibles : un ensemble dont le modèle est autorisé à apprendre (données d’entraînement), et une autre partie qu’il n’est pas autorisé à voir avant l’examen (le jeu de test). Mais cette protection, elle aussi, peut donner des résultats imparfaits car une division malheureuse peut fausser les résultats des tests du modèle. De plus, si les données sont limitées, le compromis entre l’utilisation des données pour l’entraînement et leur conservation pour les tests est pénible.
Les spécialistes du ML résolvent ces problèmes grâce à la validation croisée. Avec la validation croisée, un jeu de données est divisé en ce qu’on appelle des plis. La plupart des plis sont utilisés pour entraîner le modèle, tandis qu’un seul est réservé pour le tester. Ensuite, le processus est répété sur une nouvelle copie du modèle, avec une rotation des plis ; un autre pli est maintenant le jeu de test. La moyenne des résultats de ces différents tests est ensuite calculée. Cette approche permet d’obtenir une estimation plus stable de la performance probable du modèle sur de nouvelles données, tout en tirant un meilleur parti des jeux de données limités (car chaque point de données peut être utilisé pour l’entraînement dans un contexte, et pour le test dans un autre).
Enfin, si aucun des modèles candidats n’est suffisamment performant, les spécialistes peuvent essayer de régler les hyperparamètres, en ajustant les paramètres intégrés tels que la profondeur du modèle ou le taux d’apprentissage, pour voir si la performance s’améliore.
En Python, des bibliothèques comme scikit-learn simplifient la mise en œuvre de la validation croisée. C’est l’une des raisons pour lesquelles c’est devenu une pratique courante.
Parfois, ce que l’on appelle la « vérité de terrain » est sans équivoque : le patient a ou n’a pas de cancer ; la maison s’est vendue à tel ou tel prix. Mais avec l’avènement des grands modèles de langage (LLM), la performance des modèles est souvent moins claire ou facile à mesurer.
Un chatbot alimenté par LLM peut être confronté à des tâches binaires, comme celle de savoir s’il fournit des informations correctes ou incorrectes. Mais son utilisateur peut également l’évaluer en fonction de nombreuses dimensions différentes et difficiles à définir, comme la convivialité ou l’utilité. Dans de tels cas, il n’existe pas de réponse unique correcte, pas de « valeur vraie » de référence. L’annotation humaine est considérée comme la référence absolue en matière d’évaluation des sorties de LLM, mais cette méthode n’est pas évolutive.
En fin de compte, dans de tels cas, l’évaluation finale du modèle peut se faire en lançant un modèle dans la nature et en voyant si les utilisateurs en tirent de la valeur ou non.
Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio d’entreprise nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.
Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.
Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.
1. « Zillow iBuying Home Zestimates »,CNN, 2021.
2. « What is a good F1 score ? » OneModel
3. « Calculating F1 Score », Telnyx.com