Aller au contenu
Kudos AI
Read in English
Fondements de l’apprentissage statistique

Le compromis biais-variance

La décomposition exacte de l’erreur de test espérée en biais au carré, variance et bruit irréductible, démontrée numériquement par une simulation de 2 000 tirages où les trois termes sont mesurés séparément et vérifiés comme s’additionnant.

7 min de lectureKudos AI

Prérequis : Qu’est-ce que l’apprentissage statistique ?

Le biais au carré qui baisse et la variance qui monte, tracés séparément puis additionnés en un U familier - et les ensembles d’apprentissage de la LOOCV montrés presque entièrement superposés.

Qu’est-ce que l’apprentissage statistique ? a montré un polynôme de degré 15 ajustant son échantillon d’entraînement mieux que tout concurrent tout en se trompant catastrophiquement sur la fonction sous-jacente. C’était une démonstration. Cet article en donne le compte rendu : l’erreur de test espérée se scinde en exactement trois morceaux, dont deux que nous contrôlons et un que nous ne contrôlons pas, et les deux que nous contrôlons évoluent en sens inverse.

A. La décomposition

Prenons un point de test x0x_0, et soit f^\hat f un modèle ajusté sur un échantillon d’entraînement aléatoire. L’erreur quadratique espérée en x0x_0, moyennée sur tous les échantillons d’entraînement que nous aurions pu tirer, se décompose en

E[(y0−f^(x0))2]=[Bias⁡(f^(x0))]2⏟wrong on average+Var⁡(f^(x0))⏟unstable+Var⁡(ε)⏟irreducible,\mathbb{E}\big[(y_0 - \hat f(x_0))^2\big] = \underbrace{\big[\operatorname{Bias}(\hat f(x_0))\big]^2}_{\text{wrong on average}} + \underbrace{\operatorname{Var}(\hat f(x_0))}_{\text{unstable}} + \underbrace{\operatorname{Var}(\varepsilon)}_{\text{irreducible}} ,

où le biais vaut Bias⁡(f^(x0))=E[f^(x0)]−f(x0)\operatorname{Bias}(\hat f(x_0)) = \mathbb{E}[\hat f(x_0)] - f(x_0).

C’est une égalité, non une approximation ni une heuristique. Chaque terme signifie quelque chose de concret :

  • Le biais est l’erreur due à l’approximation d’un problème réel compliqué par un modèle plus simple. Une droite ajustée sur une courbe est biaisée partout, et aucune quantité de données supplémentaires ne l’enlève.
  • La variance mesure de combien f^\hat f changerait si on le réajustait sur un autre échantillon d’entraînement de même taille. Une méthode qui oscille violemment d’un échantillon à l’autre a une variance élevée, et tout ajustement isolé est peu fiable.
  • L’erreur irréductible est Var⁡(ε)\operatorname{Var}(\varepsilon), le plancher de l’article précédent.

Comme le biais au carré et la variance sont tous deux positifs ou nuls, leur somme l’est aussi : l’erreur de test espérée ne peut jamais descendre au-dessous de Var⁡(ε)\operatorname{Var}(\varepsilon). Le plancher est réel.

B. Pourquoi les deux termes s’affrontent

Le schéma général : à mesure qu’une méthode gagne en souplesse, le biais baisse et la variance monte.

Plus de souplesse signifie que le modèle peut se plier vers le vrai ff, donc qu’il est moins systématiquement faux - biais en baisse. Mais cela signifie aussi qu’il peut se plier vers le bruit particulier de cet échantillon, si bien qu’un autre échantillon produirait un ajustement sensiblement différent - variance en hausse.

L’erreur de test est la somme. Au début, la souplesse achète une forte réduction du biais pour une faible hausse de variance, et l’erreur totale baisse. Passé un certain point, l’échange s’inverse et l’erreur totale grimpe. Le meilleur modèle se situe là où les deux taux de variation se compensent.

La figure trace des courbes schématiques en unités arbitraires, et non la simulation sur sin⁡(2πx)\sin(2\pi x) ci-dessous ; son plancher de bruit est à 0,16, et non au 0,09 utilisé là-bas.

Interactif : le compromis biais-variance

Erreur d’entraînement contre erreur de test à mesure que la complexité augmente.

0.00.51.0bruit irréductiblecomplexité du modèle →
Erreur de testErreur d’entraînementcomplexité optimale
Régime
Bon ajustement
Erreur d’entraînement
0.25
Erreur de test
0.55

Proche du point idéal : l’erreur de test est proche de son minimum.

L’erreur d’entraînement diminue toujours à mesure que le modèle devient plus flexible : c’est donc un guide trompeur. L’erreur de test vaut biais² + variance + bruit irréductible : elle atteint son minimum là où les deux forces s’équilibrent, puis remonte lorsque le modèle s’ajuste au bruit. Ajoutez des données (augmentez la taille de l’échantillon) et le terme de variance diminue, déplaçant le point idéal vers une complexité plus élevée et abaissant toute la courbe de test.

C. Mesurer les trois termes

La décomposition est d’ordinaire présentée comme de la théorie parce qu’en pratique on ne peut pas la calculer - on ignore ff et on n’a qu’un seul échantillon d’entraînement. Mais dans une simulation nous contrôlons les deux, nous pouvons donc mesurer chaque terme séparément et vérifier qu’ils s’additionnent réellement.

Le cadre : f(x)=sin⁡(2πx)f(x) = \sin(2\pi x), un bruit ε∼N(0,0.32)\varepsilon \sim N(0, 0.3^2) donc Var⁡(ε)=0.09\operatorname{Var}(\varepsilon) = 0.09, des échantillons d’entraînement de 30 points, et un unique point de test x0=0.35x_0 = 0.35. Nous réajustons 2 000 fois sur des échantillons neufs et observons ce que font les prédictions en x0x_0.

Python

S'exécute dans votre navigateur. La première exécution télécharge l'environnement Python (~10 Mo), puis il est mis en cache.

Son exécution affiche :

true f(x0) = 0.8090,  Var(eps) = 0.0900

degree 1:  bias^2 0.2684   variance 0.0130   + noise 0.0900   = 0.3713
degree 3:  bias^2 0.0059   variance 0.0105   + noise 0.0900   = 0.1064
degree 9:  bias^2 0.0000   variance 0.0295   + noise 0.0900   = 0.1195

D. Lire le tableau

Chaque affirmation de la section B est visible ici sous forme de nombre.

Le biais s’effondre quand la souplesse augmente. Le degré 1 a un biais au carré de 0.26840.2684 - une droite ne peut tout simplement pas passer près de sin⁡(2πx)\sin(2\pi x) en x0=0.35x_0 = 0.35, et sa prédiction moyenne sur 2 000 ajustements valait 0.2910.291 contre une vraie valeur de 0.8090.809. Au degré 3, le biais au carré tombe à 0.00590.0059, et au degré 9 il s’arrondit à zéro : en moyenne, le modèle souple est exactement juste.

La variance croît quand la souplesse augmente. Elle fait plus que doubler, de 0.01300.0130 au degré 1 à 0.02950.0295 au degré 9. L’ajustement de degré 9 est juste en moyenne, mais tout ajustement individuel s’en écarte visiblement, dans une direction qui dépend des 30 points qu’il a vus.

La somme est minimale au milieu. L’erreur totale suit 0.3713→0.1064→0.11950.3713 \to 0.1064 \to 0.1195. Le degré 3 l’emporte - non parce qu’il est le meilleur sur l’un ou l’autre terme pris isolément (le degré 9 a moins de biais) mais parce qu’il est le meilleur compromis.

Le plancher tient. Aucune configuration ne descend sous 0.090.09. Le meilleur total, 0.10640.1064, n’est qu’à 0.01640.0164 au-dessus du bruit irréductible, et cet écart restant est l’erreur réductible encore disponible.

Une mise en garde sur la ligne du degré 9. Un biais au carré affiché à 0.00000.0000 ne signifie pas que le modèle est non biaisé partout - seulement en ce x0x_0 particulier, et seulement à quatre décimales après moyennage sur 2 000 ajustements. Le biais est une fonction de xx ; en un point proche du bord de l’intervalle, le même modèle présenterait un biais substantiel, exactement pour la raison qui a fait exploser le polynôme de degré 15 dans l’article précédent.

E. La décomposition tient-elle vraiment ?

Les trois termes devraient sommer à l’erreur de test espérée, que nous pouvons mesurer directement en générant de nouvelles observations bruitées en x0x_0 et en moyennant les erreurs de prédiction au carré. En le faisant à côté de la décomposition, on obtient :

degrébiais² + var + bruitEQM de test mesurée
10.37130.3764
30.10640.1072
90.11950.1171

Les deux colonnes concordent à quelques millièmes près - la différence résiduelle est l’erreur de Monte-Carlo due à l’usage de 2 000 simulations plutôt qu’une infinité. L’identité est exacte ; c’est notre estimation qui est simplement très bonne.

F. Ce que cela signifie en pratique

Vous ne pouvez pas calculer biais et variance sur des données réelles, car vous disposez d’un seul échantillon et d’aucun accès à ff. Ce que vous pouvez faire, c’est reconnaître leurs signatures :

SymptômeCause probableRéponse
Erreur d’entraînement élevée, erreur de test semblableBiais élevé (sous-ajustement)Modèle plus souple, meilleures variables
Erreur d’entraînement très faible, erreur de test bien plus élevéeVariance élevée (surajustement)Régulariser, simplifier, plus de données
Les deux erreurs proches du plancher de bruitProche de l’optimumS’arrêter

Notez l’asymétrie des remèdes : davantage de données réduit la variance mais ne fait rien contre le biais. Doubler l’échantillon n’aidera pas une droite à ajuster une sinusoïde. Si votre modèle est biaisé, il vous faut un autre modèle, pas un jeu de données plus grand.

À retenir

  • L’erreur de test espérée se décompose exactement en biais au carré, variance et bruit irréductible.
  • Le biais baisse et la variance monte avec la souplesse ; la somme est en U et le meilleur modèle est le compromis, non l’extrême.
  • En simulation, les termes sont mesurables : le degré 3 l’emporte avec un total de 0.10640.1064 contre 0.37130.3713 (biaisé) et 0.11950.1195 (haute variance).
  • L’erreur de test ne peut jamais descendre sous Var⁡(ε)\operatorname{Var}(\varepsilon).
  • Plus de données guérit la variance, pas le biais. Diagnostiquez lequel vous avez avant de choisir un remède.

La suite

Le tableau de diagnostic ci-dessus exige une estimation honnête de l’erreur de test, et l’erreur d’entraînement n’en est catégoriquement pas une. Obtenir cette estimation à partir des données dont vous disposez déjà - sans un jeu de test séparé que vous ne pouvez peut-être pas vous offrir - est le rôle de La validation croisée et le rééchantillonnage.

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 ↗

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

5 min de lectureStatistical Learning Theory

Un paramètre, une capacité infinie

Un classifieur à un seul paramètre réel réalise les 1 048 576 étiquetages de vingt points, à chaque fois, et prédit un vingt et unième avec une exactitude de 0,5038 sur vingt mille essais. Compter les paramètres ne borne la capacité d’une classe de modèles ni par le haut ni par le bas, et c’est pourquoi la capacité doit se mesurer autrement.

Apprentissage automatiqueMathématiques
7 min de lectureFondements de l’apprentissage statistique

La validation croisée et le rééchantillonnage

Pourquoi l’erreur d’entraînement est une estimation biaisée de l’erreur de test, et comment l’ensemble de validation, le leave-one-out et le k-fold y remédient, avec une LOOCV à cinq observations calculée point par point.

StatistiqueApprentissage automatique
7 min de lectureApprentissage supervisé

La régression linéaire à partir des premiers principes

Dériver les coefficients des moindres carrés en différenciant la somme des carrés des résidus, puis mener à la main un ajustement complet sur cinq observations : coefficients, valeurs ajustées, résidus, RSS et R², chacun vérifié numériquement.

StatistiqueApprentissage automatiqueMathématiques
← Retour à tous les articles