Fiches › Carte › Ponts › pont 03

Biais et variance partout

Pont. Un seul compromis — l'erreur quadratique d'une quantité estimée se coupe en biais² + variance, et tout réglage déplace l'un contre l'autre — rejoué sur sept échelles : l'estimateur, le modèle, l'estimation de l'erreur, les ensembles, la pénalité, le prior, le boosting. Tout ce qui change d'une échelle à l'autre est ce qui est estimé et quel bouton on tourne. Fil rouge commun : une moyenne de n = 16 mesures d'écart-type σ = 4, rétrécie d'un facteur 1/(1 + λ).

Ce que ce pont suppose acquis
  • La distribution d'échantillonnage. Un estimateur est une variable aléatoire : refaire le tirage donne un autre chiffre, et c'est l'histogramme de ces chiffres qu'on décrit — centre et largeur (p01-01 pas 3, pas 9).
  • Biais et SE d'une moyenne : E[p] = π, SE = σ/√n (p01-01 pas 4–5). Ce pont ne les redérive pas, il les relit.
  • La décomposition elle-même n'est pas démontrée ici : elle vit dans p06-01. Ce pont prend l'égalité et la promène.
  • CV, bagging, ridge, prior conjugué ne sont pas redéfinis : p06-02, p07-02, p05-03 et p02-03 pas 5 les portent.
Hypothèses posées
H1Erreur quadratique. La décomposition biais² + variance est une identité pour le coût carré. Elle n'a pas d'équivalent additif pour la 0/1 loss : l'intuition passe, l'égalité non. H2Ce qui se répète est le tirage du jeu de données. À chaque échelle on imagine réentraîner sur un nouvel échantillon de même taille, tiré de la même loi. Biais et variance sont des propriétés de cette répétition, pas d'un chiffre en main. H3Design fixe, cible bruitée. Les x sont les mêmes d'un tirage à l'autre, seul le bruit de y change. C'est le cadre le plus simple où les trois termes se calculent exactement.

Le même compromis, sept échelles

Le compromis, écrit une fois tronc

Une quantité estimée sur un tirage a un centre et une largeur. Biais = centre − vérité ; variance = largeur². L'erreur quadratique moyenne se coupe en deux, exactement :

E[(θ − θ)²] = (E[θ] − θ)² + Var(θ) = biais² + variance

En prédiction s'ajoute un troisième terme, que rien ne règle : le bruit de la cible. E[(Y − f(x))²] = biais² + variance + σ².

« Un estimateur est une variable aléatoire sur les tirages, donc son erreur quadratique se coupe en écart du centre au carré plus largeur, donc un réglage qui rétrécit l'un élargit l'autre, donc l'erreur totale est en U. »

Application — le fil rouge

n = 16 mesures, σ = 4, vraie valeur μ = 1. La moyenne x̄ est sans biais et SE = σ/√n = 1, donc Var(x̄) = 1. On la rétrécit : θλ = x̄/(1 + λ).

biais = −λ/(1 + λ)     variance = 1/(1 + λ)²
λbiais²varianceerreur quadratique
0 — la moyenne brute011
0,50,1110,4440,556
10,250,250,5
20,4440,1110,556
50,6940,0280,722

Le minimum est en λ* = Var(x̄)/μ² = 1, et il vaut la moitié de l'erreur de la moyenne sans biais. Accepter du biais paie — et le réglage optimal dépend de μ, qu'on ne connaît pas : d'où la validation.

Deux questions par échelle tronc

Lire une de ces situations, c'est répondre à deux questions seulement : qu'est-ce qui est estimé — donc sur quoi se répètent les tirages — et quel bouton. Le reste suit : le bouton tourné vers la rigidité monte le biais et descend la variance, la somme est en U.

À chaque échelle, ce qui se répète est un jeu de données entier, pas une ligne. Une ligne ne fait pas varier f ; un nouvel échantillon, si.

« Chaque échelle nomme une quantité estimée et un bouton, donc le même calcul s'y applique mot pour mot, donc les sept lignes ci-contre sont un seul théorème en sept habits. »

Les sept lignes
échelleestiméboutonbiais ↔ variance
Estimateurune moyenne, σ²le diviseurdiviser par n ↔ SE = σ/√n
Modèlefsouplesserigide ↔ souple
Erreur testl'erreurk (plis)k petit ↔ LOOCV
Ensemblesla moyennem ; Brien ↔ ρσ² + (1−ρ)σ²/B
Pénalitéβλλ grand ↔ λ petit
Priorposteriorτ²τ² étroit ↔ τ² plat
BoostingFν ; arbressouches ↔ trop d'arbres

Où c'est écrit, ligne à ligne : p01-01 pas 4–5 et p01-03 pas 3 · p06-01 · p06-02 · p07-02 · p02-02 pas 8 et p05-03 · p02-03 pas 5 · p07-03.

Deux intrus utiles. n et B ne sont pas des boutons d'arbitrage : ils font baisser la variance sans monter le biais. Pas de U, donc pas de réglage — on les monte tant que le budget suit.

Figure 1 — un seul U, sept boutons

Les courbes sont exactement celles du fil rouge, en unités de Var(x̄) : en abscisse la souplesse φ = 1/(1 + λ), biais² = (1 − φ)², variance = φ². Les sept boutons renomment l'axe — degré, 1/k, profondeur, 1/λ, τ², ν·arbres — sans toucher aux courbes : c'est tout le pont. Le second curseur monte le plancher σ² : toute la courbe totale se translate vers le haut et le minimum ne bouge pas — un bruit irréductible ne se règle pas, il se subit.

Échelle 1 — l'estimateur : Bessel achète du centre avec de la largeur

σ² = Σ(x − x̄)²/n divise par n alors qu'une moyenne a déjà été consommée par les écarts : son espérance vaut (n − 1)σ²/n, biaisée vers le bas. Bessel remplace n par n − 1 et recentre.

Le prix est de la largeur : diviser par un nombre plus petit multiplie aussi la variance de l'estimateur. Le diviseur qui minimise l'erreur quadratique n'est donc ni n ni n − 1, c'est n + 1.

« Diviser par n sous-estime la variance d'un facteur (n − 1)/n, donc Bessel recentre l'estimateur, donc sa variance monte d'autant, donc le diviseur qui minimise l'erreur quadratique est encore ailleurs. »

Application — n = 25, sous normalité

(n − 1)σ²Bessel/σ² suit un χ²(n − 1), donc tout se calcule. Ligne 1 : Bessel. Ligne 2 : le maximum de vraisemblance. Colonnes en unités de σ² (biais) et σ⁴ (variance, erreur quadratique).

÷ parE[σ²]/σ²biaisvar.err. quad.
24 = n − 1100,08330,0833
25 = n0,96−0,040,07680,0784
26 = n + 10,9231−0,07690,07100,0769

« Sans biais » n'est donc pas « meilleur » : l'estimateur sans biais arrive troisième sur l'erreur quadratique. On garde Bessel par convention et parce que le centre est ce qui se propage dans les tests, pas parce qu'il minimise l'erreur.

Et n ? Il baisse SE = σ/√n sans rien faire au biais : ce n'est pas un arbitrage, c'est un cadeau. Le bouton de cette échelle est le diviseur, pas la taille de l'échantillon.

Échelle 2 — le modèle : ce qui est tiré, c'est le dataset entier tronc

La quantité estimée devient la fonction f elle-même, et le tirage est le jeu de données complet : refaire l'expérience, c'est retirer n lignes et réentraîner. Une ligne n'est pas une répétition.

Un modèle rigide rend presque le même f à chaque tirage — petite variance — mais rate la forme : biais. Un modèle souple épouse le tirage : biais faible, variance grande. Même arithmétique qu'au pas 1, autre habit.

« Le tirage est le dataset entier, donc f est une variable aléatoire sur les datasets, donc un modèle rigide varie peu et vise à côté, donc un modèle souple vise juste en moyenne et change à chaque tirage. »

Application — k plus proches voisins, 50 points

x régulièrement espacés sur [−1 ; 1], f(x) = sin(πx), bruit σ = 0,5. La variance d'une moyenne de k voisins vaut σ²/k ; le biais est l'écart entre f et sa moyenne sur le voisinage. Les deux se calculent exactement, moyennés sur les 50 points.

k1/kbiais²variancesomme
1100,25000,2500
30,3330,00070,08330,0840
50,20,00320,05000,0532
70,1430,00850,03570,0442
130,0770,03890,01920,0581
250,040,08940,01000,0994
490,0200,49000,00510,4951

À k = 1 le biais est nul et la variance maximale ; à k = 49 c'est la moyenne globale, variance minuscule et biais énorme. Le U touche le fond à k = 7, à 0,0442. L'erreur de prédiction s'obtient en ajoutant σ² = 0,25 à la dernière colonne, la même valeur à chaque ligne : le plancher translate le U, il ne le déforme pas et ne déplace pas son minimum.

Figure 2 — un tirage, c'est un dataset entier

Chaque barre de l'histogramme est un jeu de données complet de n = 16 mesures, refait de zéro, résumé par θλ = x̄/(1 + λ). Trait bleu : la vérité μ = 1. Trait ambre : le centre E[θλ] = 1/(1 + λ). Monte λ : l'histogramme se resserre (variance ↓) et glisse à gauche (biais ↑). Tire une seule fois : un point, d'où l'on ne peut lire ni l'écart des deux traits ni la largeur. C'est le fait central de ce pont.

Échelle 3 — l'estimation de l'erreur : k dans la k-fold

Ce qui est estimé n'est plus un modèle, c'est l'erreur test d'une procédure. Le bouton est k.

k petit : chaque modèle est entraîné sur n(1 − 1/k) lignes, donc moins bon que celui qu'on livrera — l'erreur est surestimée. k grand : les k modèles diffèrent d'une ligne, leurs erreurs sont fortement corrélées, et moyenner des termes corrélés ne resserre plus rien (b04).

« k petit entraîne sur moins de données, donc l'erreur estimée est trop haute, donc on monte k, donc les modèles deviennent quasi identiques et la moyenne de leurs erreurs cesse de se resserrer. »

Application — n = 1 000, OLS à p = 20 paramètres, σ² = 1

Courbe d'apprentissage : l'erreur de prédiction d'un OLS entraîné sur m lignes vaut σ²(1 + p/m). L'erreur visée, celle du modèle final entraîné sur 1 000 lignes, vaut 1,0200.

km (train)erreurécart
25001,0400+2,0 %
58001,0250+0,49 %
109001,0222+0,22 %
1 000 (LOOCV)9991,0200+0,002 %

Côté largeur, avec ρ la corrélation entre les erreurs de deux plis, la variance de leur moyenne vaut ρ + (1 − ρ)/k en unités de la variance d'un pli : à k = 10 et ρ = 0,4, 0,46 ; en LOOCV avec ρ = 0,9, 0,9001 — mille plis pour presque rien. Les ρ sont des hypothèses de lecture, pas des mesures (b04). D'où k = 5 ou 10 : le biais est déjà sous 0,5 % et la corrélation reste modérée.

Échelle 4 — les ensembles : B ne touche pas le biais

Moyenner B modèles entraînés sur des rééchantillonnages ne déplace pas le centre : E[moyenne] = E[un arbre]. Le biais d'une forêt est celui d'un seul arbre. Seule la largeur bouge, et seulement jusqu'à un plancher :

Var(moyenne de B) = ρσ² + (1 − ρ)σ²/B  →  ρσ² quand B → ∞

Le vrai bouton n'est donc pas B mais ρ : tirer m features par split décorrèle les arbres et abaisse le plancher, au prix d'arbres un peu moins bons chacun. Le boosting fait le trajet inverse — il part de souches très biaisées et baisse le biais pas à pas ; ν, le nombre d'arbres et la profondeur remontent la variance.

« La moyenne ne déplace pas le centre, donc le bagging ne touche pas le biais, donc monter B ne fait que descendre vers le plancher ρσ², donc le seul réglage qui compte est ρ, c'est-à-dire m. »

Application — variance d'une forêt, en unités de σ² (un arbre seul)

ρ = 0,6 : arbres très semblables ; 0,1 : m petit, arbres décorrélés ; 0 : indépendants, ce qui n'arrive jamais.

ρB = 10B = 100B = 500plancher
0,60,64000,60400,60080,60
0,30,37000,30700,30140,30
0,10,19000,10900,10180,10
00,10000,01000,00200

À ρ = 0,3, passer de 100 à 500 arbres gagne 0,006 ; passer de ρ = 0,3 à ρ = 0,1 en gagne 0,20, trente fois plus. Le nombre d'arbres n'est pas le réglage, m l'est — et quand m descend trop, chaque arbre se dégrade et le biais monte : le U revient, sur l'axe m.

Échelles 5 et 6 — la pénalité et le prior : le même λ tronc

Les deux dernières échelles sont le fil rouge, écrit deux fois. Pénalité, convention du dépôt (loss sans ½) : minimiser Σ(xi − θ)² + λrθ² donne θ = x̄/(1 + λr/n).

Prior : avec θ ~ N(0, τ²) et x̄ | θ ~ N(θ, σ²/n), la moyenne du posterior vaut x̄·τ²/(τ² + σ²/n) = x̄/(1 + (σ²/n)/τ²). Même forme, donc même λ.

« La pénalité et le prior produisent le même rétrécissement 1/(1 + λ), donc λr/n et (σ²/n)/τ² sont le même nombre, donc régler une pénalité ou choisir la largeur d'un prior est un seul geste, donc les deux se lisent sur le U du pas 2. »

Application — le λ* = 1 du pas 1, en trois langues

Fil rouge : n = 16, σ = 4, donc σ²/n = 1 ; vraie valeur μ = 1.

habitparamètrevaleur à λ* = 1
rétrécissement1/(1 + λ)0,5
pénalité ridgeλr = n λ16
prior gaussienτ² = (σ²/n)/λ1

Avec x̄ = 0,9 observé, la moyenne du posterior vaut 0,9 × 0,5 = 0,45 : prior et vraisemblance pèsent exactement pareil, parce que τ² = σ²/n = 1. Et le τ² optimal vaut μ² : le bon prior est celui dont la largeur est l'ordre de grandeur de la vérité. On ne l'a pas — d'où la validation croisée pour λ (p02-02 pas 8) et le noyage du prior quand n grandit (p02-03 pas 5).

Où ça casse — de la même façon partout casse

Les pannes sont celles du compromis, pas celles du domaine : on ne voit qu'un tirage, la moyenne ne sauve que les termes peu corrélés, et le plancher est invisible.

« Biais et variance vivent sur les répétitions, donc un seul tirage n'en montre que la somme, donc les pannes se cherchent toujours aux trois mêmes endroits : le nombre de tirages, la corrélation des termes qu'on moyenne, et le plancher qu'aucun bouton ne touche. »

Quatre limites
  • On ne voit qu'un tirage. Biais et variance sont des propriétés de la distribution d'échantillonnage (p01-01 pas 3 et pas 9) : sur un seul jeu on n'observe que leur somme. Les séparer demande de répéter — bootstrap, ou simulation où l'on connaît la vérité (figure 2). Conséquence pratique : « ce modèle a trop de variance » ne se lit pas sur un résidu, ça se lit sur l'écart entre l'erreur train et l'erreur de validation.
  • Moyenner ne réduit la variance que si les termes sont peu corrélés. ρσ² + (1 − ρ)σ²/B : le premier terme ignore B. Même panne en LOOCV (mille plis, ρ ≈ 0,9) et en bagging d'arbres profonds très semblables. C'est le pont b04 en entier.
  • Le plancher σ² ne se voit pas dans les résidus. Les résidus d'entraînement, c'est σ² moins ce que le modèle a déjà absorbé du bruit : un modèle assez souple les met à zéro sans avoir fait baisser σ² d'un pouce (p06-01). Le plancher se lit sur un jeu neuf, ou pas du tout — et il fixe la performance maximale atteignable, pas le réglage.
  • La décomposition est quadratique. biais² + variance est une identité pour le coût carré. Pour la 0/1 loss il n'existe pas de découpage additif de cette forme : plus de flexibilité peut même y réduire l'erreur des deux côtés. L'intuition du U survit, l'égalité non (H1).

Résumé

À retenir
  1. Erreur quadratique = biais² + variance (+ bruit en prédiction) ; tout réglage déplace l'un contre l'autre et la somme est en U. Fil rouge : x̄/(1 + λ), optimum à λ* = 1, erreur divisée par deux.
  2. Un seul U, sept boutons : le diviseur de Bessel, la flexibilité, k de la k-fold, m d'une forêt, λ, τ², ν. Deux faux boutons : n et B ne font que baisser la variance — on les monte sans arbitrer.
  3. Biais et variance vivent sur les répétitions, et le tirage est le dataset entier : un jeu de données ne montre que leur somme.
« Biais et variance, c'est le centre et la largeur d'un estimateur sur des tirages répétés, et tout ce qu'on règle en ML — la flexibilité, λ, le nombre de folds, la décorrélation des arbres, la largeur d'un prior — déplace l'un contre l'autre. L'erreur totale est en U et le seul moyen de la voir est un jeu de données que le réglage n'a pas touché. »

Chaîne verbalisée — une prise, à voix haute

5 maillons · clique pour révéler après avoir dit
  1. Définis biais et variance sur un estimateur.
    Centre de la distribution d'échantillonnage moins la vérité ; largeur² de cette même distribution. Les deux sur les répétitions du tirage, jamais sur le chiffre en main. Erreur quadratique = biais² + variance.
  2. Même argument, autre habit : que fait λ ?
    Il rétrécit vers 0 : biais² monte en λ²/(1+λ)², variance descend en 1/(1+λ)². Optimum à λ* = Var(x̄)/μ². Un prior de largeur τ² fait exactement pareil avec λ = (σ²/n)/τ².
  3. Et k dans une k-fold ?
    k petit : on entraîne sur moins de données, l'erreur est surestimée — +2 % à k = 2, +0,5 % à k = 5. LOOCV : biais quasi nul mais modèles corrélés, donc la moyenne ne se resserre pas (ρ + (1−ρ)/k).
  4. Et le bagging ?
    Variance seule, biais inchangé — la moyenne ne déplace pas le centre. Plancher ρσ² : monter B ne le franchit pas, seul m (features par split) le baisse.
  5. Pourquoi ne peut-on pas lire biais et variance sur son jeu de données ?
    Parce que ce sont des propriétés de la distribution sur les tirages, et qu'on n'en a qu'un point. On n'observe que la somme. Le bootstrap ou une simulation à vérité connue les séparent ; les résidus, non.