Aller au contenu
Kudos AI
Read in English
Apprentissage supervisé

Comparer les classifieurs, et ce que l’exactitude dissimule

Le classifieur de Bayes que rien ne peut battre et le plancher d’erreur qu’il laisse, les k plus proches voisins comme imitation non paramétrique avec k pour bouton de flexibilité, l’analyse discriminante et pourquoi une covariance partagée impose une droite, et la matrice de confusion, les seuils et la courbe ROC qu’un unique chiffre d’exactitude dissimule - chaque nombre calculé sur des données simulées où l’optimum est connu.

11 min de lectureKudos AI

Prérequis : Régression logistique et classification

Deux densités gaussiennes se croisant à la frontière de Bayes, le recouvrement ombré comme plancher d’erreur, la frontière glissant à mesure que changent les a priori, et une frontière KNN passant de déchiquetée à plate quand k dépasse sa meilleure valeur.

Comparer des classifieurs sur des données réelles a une propriété gênante : on ne sait jamais combien de marge il restait. Une méthode à 12 % d’erreur peut être quasi optimale comme elle peut laisser la moitié de l’exactitude disponible sur la table, et rien dans les données ne dit laquelle. Cet article travaille plutôt sur des données simulées, où le meilleur classifieur possible se calcule exactement - ce qui transforme des comparaisons vagues en mesures.

A. Le classifieur qu’on ne peut pas battre

Si vous connaissiez P(Y=j∣X=x)P(Y = j \mid X = x) pour chaque xx, le mieux à faire serait d’affecter chaque point à la classe de plus grande probabilité. C’est le classifieur de Bayes, optimal pour une raison presque trop courte pour être une preuve : en chaque xx, la chance de se tromper vaut 1−max⁡jP(Y=j∣X=x)1 - \max_j P(Y = j \mid X = x), et aucune règle ne la rend plus petite en ce point. Optimal partout signifie optimal en moyenne.

Ce qu’il laisse derrière lui,

1−E[max⁡jP(Y=j∣X)],1 - E\left[\max_j P(Y = j \mid X)\right],

est le taux d’erreur de Bayes - le pendant en classification de l’erreur irréductible, non nul parce que les classes se recouvrent véritablement.

Deux classes gaussiennes sur la droite, N(−1,25,1)N(-1{,}25, 1) et N(1,25,1)N(1{,}25, 1), également probables. Les densités étant symétriques, la frontière est le milieu x=0x = 0 et le taux d’erreur vaut Φ(−1,25)=0,105650\Phi(-1{,}25) = 0{,}105650. Intégrer le mélange sur quatre millions de points de grille concorde à six décimales.

Interactif : la frontière que rien ne peut battre

Le recouvrement ombré est le plancher d’erreur.

classe 0classe 1x*
Erreur de Bayes (le plancher)
0.105650
Frontière x*
0.000000
Coût du point milieu
0.000000

À a priori égaux, la frontière est au point milieu et le plancher est le recouvrement des deux courbes. Rien ne passe dessous : les classes occupent véritablement le même terrain. Déplacez maintenant l’a priori. Élargissez σ et le plancher monte, car le plancher n’est rien d’autre que le recouvrement.

B. Les a priori déplacent la frontière - dans quel sens ?

Rendons la classe 1 plus fréquente, π1=0,7\pi_1 = 0{,}7. La frontière résout π1f1(x)=π2f2(x)\pi_1 f_1(x) = \pi_2 f_2(x) :

x=σ2log⁡(π1/π2)+(μ22−μ12)/2μ2−μ1=+0,338919.x = \frac{\sigma^2 \log(\pi_1/\pi_2) + (\mu_2^2 - \mu_1^2)/2}{\mu_2 - \mu_1} = +0{,}338919 .

Elle se déplace vers la classe la plus rare, agrandissant la région de la classe fréquente. Le contraire est une supposition tentante - la classe abondante n’a-t-elle pas besoin de moins de place ? - et elle est fausse : un point proche de zéro a désormais plus de chances d’être de classe 1 précisément parce qu’il y a davantage de classe 1 d’où venir.

a priorifrontièreerreur de Bayeserreur en gardant la frontière à 0
0,5 / 0,50,0000000,1056500,105650
0,7 / 0,3+0,3389190,0935650,105650
0,9 / 0,1+0,8788900,0504960,105650

Ignorer l’a priori coûte 0,0120840{,}012084 à 0,7 et fait plus que doubler l’erreur à 0,9. Cela vaut d’être vérifié numériquement plutôt que d’accorder confiance à l’algèbre : la frontière dérivée a été confirmée optimale contre une grille de 240 001 seuils, ce qui est exactement le contrôle qui attrape une erreur de signe - et l’a attrapée, à la première tentative de cet article.

C. L’imiter en comptant

Les données réelles n’ont pas P(Y∣X)P(Y \mid X). Les k plus proches voisins l’estiment aussi directement que possible - prendre les kk points d’entraînement les plus proches et utiliser leurs proportions - puis appliquent la règle de Bayes à cette estimation. Rien n’est ajusté à l’avance ; le jeu d’entraînement est le modèle.

Sur un problème bidimensionnel d’erreur de Bayes 0,0927080{,}092708, ajusté sur 200 points d’entraînement et évalué sur 20 000 :

kk135915254575125199
erreur de test0,13820,11550,10300,09760,09720,09770,09770,10360,12310,5049

Les extrémités sont la leçon. À k=1k = 1, l’erreur d’entraînement est exactement nulle tandis que l’erreur de test, 0,1382000{,}138200, est la pire du tableau hormis le k=199k = 199 dégénéré - la démonstration la plus nette disponible que l’erreur d’entraînement n’estime rien. À k=199k = 199 sur 200, presque tout l’échantillon vote à chaque prédiction, le classifieur cesse de dépendre de xx, et son erreur est essentiellement l’a priori de classe.

Entre les deux se trouve le U que prédit la décomposition biais-variance, avec une meilleure valeur de 0,0971500{,}097150 en k=15k = 15 - à moins d’un demi-point du plancher, pour une méthode qui n’a rien supposé de la forme de la frontière.

D. Modéliser les classes plutôt que la frontière

La régression logistique est discriminative : elle vise directement P(Y∣X)P(Y \mid X). L’analyse discriminante est générative - elle modélise P(X∣Y=k)P(X \mid Y = k) comme gaussienne pour chaque classe, avec les a priori, et inverse par le théorème de Bayes.

Supposons une covariance Σ\Sigma partagée. En passant au logarithme et en supprimant ce qui ne dépend pas de kk, il reste log⁡πk−12(x−μk)⊤Σ−1(x−μk)\log \pi_k - \frac{1}{2}(x - \mu_k)^\top \Sigma^{-1}(x - \mu_k). Développez : le terme x⊤Σ−1xx^\top \Sigma^{-1} x ne mentionne jamais kk, il s’annule donc lorsqu’on compare les classes, et ce qui survit,

δk(x)=x⊤Σ−1μk−12μk⊤Σ−1μk+log⁡πk,\delta_k(x) = x^\top \Sigma^{-1} \mu_k - \tfrac{1}{2}\mu_k^\top \Sigma^{-1}\mu_k + \log \pi_k ,

est linéaire en xx. La linéarité est une conséquence de la covariance partagée, non un choix de modélisation indépendant. Donnez à chaque classe son Σk\Sigma_k et le terme quadratique demeure : la frontière s’incurve. C’est l’ADQ, à KK fois les paramètres de covariance.

E. Quand l’hypothèse partagée échoue, et quand elle vous sauve

Classe A à l’origine avec corrélation +0,75+0{,}75 ; classe B en (1,5 ; 1,5)(1{,}5\,;\,1{,}5) avec corrélation −0,75-0{,}75. Aucune covariance unique ne décrit les deux : la frontière optimale s’incurve donc véritablement, et intégrer le mélange donne un plancher de 0,0927080{,}092708. Sur 200 points d’entraînement et 200 000 points de test :

erreur de test
ADL0,118955
ADQ0,093480
plancher de Bayes0,092708

La covariance regroupée l’explique : moyenner +0,75+0{,}75 contre −0,75-0{,}75 donne un terme hors diagonale de −0,046809-0{,}046809, proche de zéro, qui ne décrit aucune des deux classes. L’ADQ estime +0,685607+0{,}685607 et −0,722339-0{,}722339 séparément et se pose 0,00080{,}0008 au-dessus du plancher.

Notez le diagnostic. Ce qui identifie le problème de l’ADL comme du biais est l’écart au plancher, non l’écart à l’ADQ - sans la référence, vous sauriez seulement qu’une méthode en a battu une autre, ce qui est compatible avec la médiocrité des deux.

Renversons maintenant. Un second problème dont la vraie frontière est bien linéaire, plancher 0,2442110{,}244211, moyenné sur 400 exécutions :

points d’entraînementADLADQécart
200,2844790,312687+0,028208
500,2598540,268450+0,008595
1000,2520590,255246+0,003187
5000,2456300,246275+0,000645
20000,2447350,244889+0,000154

L’ADQ n’est pas fausse ici - un modèle quadratique contient le linéaire, son biais est donc nul et toutes deux convergent vers le plancher. Elle ne peut simplement pas s’offrir ses paramètres à n=20n = 20. L’écart se referme de façon monotone, ce qui est l’arbitrage biais-variance apparaissant comme règle de sélection de modèle plutôt que comme schéma.

Deux de ces trois nombres tiennent à la population et non à un ajustement, et la figure ci-dessous les calcule : le plancher de Bayes à 0,092708 et l'erreur de la droite vers laquelle LDA converge avec des données illimitées, 0,114143. L'écart entre les deux est le biais de LDA, et aucune quantité de données ne l'efface : le 0,118955 mesuré plus haut, c'est ce biais plus l'erreur d'estimation d'un ajustement sur 200 points. Cette droite n'est même pas la meilleure possible : la droite qui minimise l'erreur, parallèle à celle de LDA mais décalée vers B, fait 0,106416, car LDA suppose une covariance que les classes ne partagent pas. Ramenez la corrélation à zéro et regardez la courbe se poser sur la droite, le biais disparaissant : c'est la prémisse du renversement qui suit.

Interactif : ce que coûte une frontière droite

Les deux taux d’erreur intégrés depuis la population, non ajustés.

Plancher de Bayes
0.092708
Droite limite de LDA
0.114143
Coût de la droite de LDA
0.021435
Hors-diagonale poolée
0.000000

À une corrélation de 0.75 dans une classe et -0.75 dans l’autre, aucune covariance unique ne décrit les deux : la frontière optimale se courbe vraiment. Le plancher vaut 0.092708 et la droite vers laquelle LDA converge avec des données illimitées 0.114143, soit un biais de 0.021435 qu’aucune quantité de données n’efface.

F. Ce qu’un taux d’erreur unique dissimule

Chaque chiffre ci-dessus est un nombre unique, et les nombres uniques cachent la forme des erreurs. Le 0,0934800{,}093480 du classifieur ADQ se décompose ainsi :

prédit Bprédit A
réellement B96 2883 899
réellement A14 79785 016

Sensibilité 0,9610830{,}961083, spécificité 0,8517530{,}851753. Il est nettement meilleur à une tâche qu’à l’autre.

Avant d’incriminer l’ajustement, calculez ce que fait la règle de Bayes classe par classe : sensibilité 0,9528450{,}952845, spécificité 0,8617380{,}861738. Le classifieur optimal est asymétrique lui aussi, dans presque la même mesure. Les deux classes sont aussi étalées l’une que l’autre, mais le grand axe d’A pointe vers B (variance 1,75 le long de la droite qui joint les centres) tandis que B est étroite dans cette direction (0,25) - la queue d’A déborde dans la région de B, et la règle optimale cède davantage d’A en échange. Le déséquilibre appartient au problème, non au modèle, et la façon de le savoir est de calculer la référence plutôt que de raisonner à son sujet.

G. Le seuil est une décision, pas un réglage par défaut

Le seuil ne fait pas partie du modèle. Le déplacer change la règle de décision alors que chaque paramètre ajusté reste en place :

seuiltaux d’erreursensibilitéspécificité
0,50,0934800,9610830,851753
0,30,1019050,9833510,812519
0,20,1104800,9905980,788064
0,10,1264150,9959280,750784

Le taux d’erreur dit que 0,5 est le meilleur, mais il pèse également un faux positif et un faux négatif, et cette pondération est une hypothèse. Là où un positif manqué coûte dix fois une fausse alerte, minimiser le taux d’erreur c’est minimiser la mauvaise quantité.

Balayer le seuil et relever chaque paire (taux de faux positifs, taux de vrais positifs) trace la courbe ROC, dont l’aire a une lecture exacte : la probabilité qu’un positif tiré au hasard soit mieux noté qu’un négatif tiré au hasard. Calculer cette aire par la règle du trapèze et calculer la statistique UU de Mann-Whitney sur les scores bruts concordent ici à la précision des flottants près - l’équivalence est une identité, non une approximation. Sur tous les seuils, l’ADQ obtient 0,9652690{,}965269 contre 0,9334880{,}933488 pour l’ADL.

Comme seul l’ordre compte, l’AUC est aveugle à la calibration : un modèle qui classe parfaitement en annonçant chaque probabilité entre 0,980{,}98 et 0,990{,}99 a une AUC de 1.

La figure ci-dessous est la règle optimale de ce problème, intégrée et non ajustée : sa ligne par défaut est donc la référence citée plus haut, 9,27 % d'erreur, 0,953 de sensibilité, 0,862 de spécificité. Déplacez le seuil et rien n'est réestimé ; seule bouge la ligne entre oui et non, et les quatre cases se rééquilibrent. Rendez ensuite la classe B rare, un cas sur cent. La sensibilité et la spécificité ne bougent pas, car ni l'une ni l'autre ne voit la rareté de la classe, tandis que l'exactitude rejoint la spécificité et que la précision s'effondre.

Interactif : un modèle, tous les seuils

Rien n’est réestimé. Seule bouge la ligne entre oui et non.

FPRTPR

Matrice de confusion sur 200 000 points de test

prédit Bprédit A
vraiment B95,2774,723
vraiment A13,81886,182
Sensibilité
95.3%
Spécificité
86.2%
Taux d’erreur
9.3%
AUC
0.9657
Exactitude
90.7%
Précision
87.3%
Référence majoritaire
50.0%

fréquence de la classe B

Le seuil par défaut, et ce taux d’erreur de 9,27 % est le meilleur que le problème autorise : aucune règle ne fait mieux, puisque ce sont les vraies probabilités a posteriori. Il reste pourtant asymétrique, 95.3% contre 86.2%. La règle optimale cède neuf points de plus sur A que sur B : la matrice déséquilibrée est un fait du problème, non un défaut de l’ajustement.

Points clés

  • Le classifieur de Bayes est optimal et exige la réponse pour être calculé, ce qui fait des données simulées le seul endroit où la marge restante d’une méthode est visible.
  • Les a priori déplacent la frontière vers la classe la plus rare ; les ignorer a coûté 0,0120840{,}012084 à un partage 0,7/0,3 et doublé l’erreur à 0,9/0,1.
  • Dans les k plus proches voisins, kk est le bouton de flexibilité : erreur d’entraînement nulle à k=1k = 1, a priori de classe à k≈nk \approx n, et la meilleure valeur entre les deux.
  • Une covariance partagée est ce qui rend linéaire une frontière discriminante. Le choix de la partager est dicté autant par la taille d’échantillon que par la vérité.
  • Diagnostiquez le biais contre le plancher de Bayes, non contre une méthode concurrente.
  • Rapportez la matrice de confusion avant l’exactitude, choisissez le seuil d’après les coûts, et lisez l’AUC comme un classement et non une calibration.

Et ensuite

Toutes les méthodes vues ici traçaient une frontière à partir d’un modèle ajusté. Les ensembles empruntent une autre voie - ajuster de nombreux modèles faibles et les combiner - et la raison pour laquelle cela fonctionne est un argument de variance et non de biais.

Références et lectures complémentaires

  • Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani, An Introduction to Statistical Learning, with Applications in R, Springer (Springer Texts in Statistics 103), 2013source ↗
  • Stuart Russell, Peter Norvig, Artificial Intelligence: A Modern Approach, Pearson (3rd edition), 2010· Bibliothèque de référence Kudos AI

Les œuvres protégées par le droit d’auteur sont citées à titre de référence uniquement et ne sont pas hébergées ici ; veuillez consulter l’éditeur pour y accéder.

Lecture associée

8 min de lectureApprentissage supervisé

La régression logistique et la classification

Pourquoi une droite ne peut pas modéliser une probabilité, comment la fonction logistique y remédie, et ce que signifient les coefficients en log-cotes, avec un pas de montée de gradient et un ajustement convergé calculés et vérifiés numériquement.

StatistiqueApprentissage automatiqueOptimisation
6 min de lectureApprentissage non supervisé

La direction qui change quand vous changez d’unité

Douze personnes, deux mesures, et trois premières composantes principales différentes : en millimètres la réponse est presque uniquement la taille, en mètres presque uniquement le poids, et en centimètres un mélange équilibré - la corrélation restant fixée à 0,9500 dans les trois cas. Ce que cela dit de ce que l’ACP maximise, pourquoi une proportion de variance expliquée de 99,999 % peut être un énoncé sur les mètres plutôt que sur les personnes, et ce que la standardisation choisit réellement.

Apprentissage automatiqueStatistique
4 min de lectureTime Series

Un score qui perd contre ne rien faire

Un modèle des cinq plus proches voisins obtient 0,9983 en validation croisée aléatoire à cinq blocs sur une marche aléatoire, série dont les incréments sont par construction imprévisibles. Évalué en avançant dans le temps il obtient 0,6559, avec une RMSE 12,44 fois plus grande, et il perd contre la simple reconduction de la dernière valeur observée. C’est la découpe, non le modèle, qui a produit le premier nombre.

StatistiqueApprentissage automatique
← Retour à tous les articles