La Décomposition Biais-Variance

Objectif : expliquer le plus en détail et le plus rigoureusement possible la décomposition biais-variance

Pré-requis : Espérance conditionnelle: définition et propriétés de base

Sources :

Introduction

L’objectif de cette note est de présenter le plus rigoureusement possible la décomposition biais-variance. La vidéo [1] présente ce sujet très bien, et je conseille très fortement de la regarder ! La notion d’espérance conditionnelle est utilisée tout au long de la note, aussi il est conseillé d’être familier avec cette propriété.

Cadre

Etant donné une distribution de probabilité $\mathcal{P}$ sur $\mathbb{R}^{N}$, on suppose qu’il existe un espace de probabilité $(\Omega, \mathcal F, \mathbb P)$, et $n+1$ couples de variables aléatoires : $(X, Y)$, $(X_1, Y_1)$, $\dots$, $(X_n, Y_n)$, i.i.d., chacun de loi $\mathcal P$, et tels que $X$ (resp. $X_i$) est à valeur dans $\mathcal{X} = \mathbb{R}^{N-1}$, et $Y$ (resp. $Y_i$) est à valeur dans $\mathcal Y = \mathbb R$.

On peut garder en tête que $X$ est un vecteur décrivant les propriétés d’un objet, et que $Y$ représente une quantité à prédire à partir de $X$. Pour reprendre l’exemple dans [1], X peut être certaines caractéristiques d’une maison (surface, nombre de fenetres, année de construction), et Y son prix de vente.

Les éléments (ou l’échantillon) $(X_1, Y_1)$, $\dots$, $(X_n, Y_n)$ représentent un jeu de donnée d’entraînement, et $(X, Y)$ représente un élement indépendant des données d’entraînement (typiquement, une réalisation de ce couple $(X(\omega), Y(\omega)) = (x, y) \in \mathcal X \times \mathcal Y$ représente un nouvel objet pour lequel on souhaite prédire la quantité $y$ à partir de $x$). On note $D = ((X_1, Y_1), \dots, (X_n, Y_n))$ ces données d’entraînement. $D$ est un vecteur aléatoire, ses composantes étant aléatoires.

On suppose enfin qu’il existe une procédure $\mathcal A$ permettant, pour une réalisation $d$ de $D$, notons là $d=((x_1, y_1), \dots, (x_n, y_n))$; d’entraîner un régresseur (ou modèle d’apprentissage automatique). $\mathcal A(d)$ est donc une fonction de $\mathcal X$ vers $\mathcal Y$.

Par exemple, $\mathcal A$ peut être l’entraînement d’une régression linéaire, auquel cas $\mathcal A(d)$ est la fonction “multiplication par un vecteur $a_d$” :

$$ \begin{align*} \mathcal A(d) : \mathcal X \to \mathcal Y \\ x \to a_d.x \end{align*} $$

Si on remplace $d$ par $D$ dans les formules ci-dessus, on obtient un régresseur $\mathcal A(D)$ aléatoire. C’est-à-dire que la fonction de régression dépend aléatoirement du jeu de donnée d’entraînement. Dans le cas de la régression linéaire, cela correspond simplement à un vecteur $a_D$ dont les composantes sont aléatoires !

Ce régresseur (aléatoire en les données d’entraînement) peut être évalué sur n’importe quel vecteur $x \in \mathcal X$ : $\mathcal A(D)(x)$. Mais on peut aussi l’évaluer sur un nouveau vecteur aléatoire : $\mathcal A(D)(X)$ ! Dans ce cas, la sortie du régresseur, est aléatoire, mais dépend à la fois de $D$ et de $X$.

Erreur et régresseur moyen

Prenons les données d’entraînement $D$ (aléatoires), et un régresseur (aléatoire) $h_D = \mathcal A(D)$. La moyenne de son erreur quadratique sur des nouvelles données est définie par :

$$ \mathbb E[(h_D(X)-Y)^2] $$

Ici, cette erreur est un nombre (réel, non aléatoire). On a “tué” l’aléatoire de $D$ et de $X$ présent dans la sortie du régresseur $h_D(X)$, ainsi que l’aléatoire dans la sortie attendue $Y$.

Intéressons nous désormais à la variable aléatoire suivante :

$$ \bar{h}(X) = \mathbb E[ h_D(X) | X] $$

Elle correspond au régresseur “moyen” évalué en X. On ne moyenne que sur les données d’entraînement, en connaissant $X$. On a gardé l’aléatoire venant de $X$ et on a moyenné celui venant de $D$ (des données d’entraînement). $\bar{h}(X)$ n’a de partie aléatoire que $X$ (et plus $D$) : c’est une variable aléatoire $X$-mesurable - par définition de l’espérance conditionnelle. $\bar{h}$ est un modèle théorique qui peut seulement être approché en moyennant par exemple des modèles entraîné avec plusieurs jeux de données indépendants (des réalisations i.i.d. de $D$). Dans le cas d’une régression linéaire, on peut approcher $\bar{h}$ en calculant pour plusieurs jeux de données indépendants des vecteurs $a_{d_1}$, $\dots$, $a_{d_m}$, et en moyennant ces vecteurs (composante par composante), $\bar{a} := \frac{1}{m} \sum_{i = 1}^m a_{d_i}$. $\bar{h}(X)$ est approché par $a.X$ (plus de dépendance aléatoire dans $a$ !).

Une autre manière d’écrire $\bar{h}(X)$ est : $\bar{h}(X) = \int h_d(X)d\mathcal P^n(d)$ : on moyenne sur tous les échantillons d’entraînement possibles la valeur de $h(X)$.

Décomposition biais-variance

On commence par décomposer l’erreur du régresseur $h_D$ en y intégrant (de force) le régresseur moyen :

$$ \mathbb E[(h_D(X)-Y)^2] = \mathbb E[([h_D(X) - \bar{h}(X)] + [\bar{h}(X) -Y])^2] \\ = \mathbb E[(A+B)^2] \\ $$

en notant $A = h_D(X) - \bar{h}(X)$ et $B = \bar{h}(X) -Y$. On a alors :

$$ \mathbb E[(h_D(X)-Y)^2] = \mathbb E[A^2 + B^2 + 2AB] \\ = \mathbb E[A^2] + \mathbb E[B^2] + 2*\mathbb E[AB] $$

On montre ensuite que le dernier terme ($\mathbb E[AB]$) vaut 0. Pour cela, on conditionne par $(X, Y)$ dans l’espérance :

$$ \mathbb E[AB] = \mathbb E[AB | (X, Y)] $$

$B$ est $(X, Y)$ mesurable ($\bar{h}(X)$ est une espérance conditionnelle donc par définition est $X$-mesurable, et $Y$ est $Y$-mesurable). Donc elle se comporte comme une constante par rapport à l’espérance conditionnelle à $(X, Y)$ :

$$ \mathbb E[AB] = B \mathbb E[A | (X, Y)] $$

Et, enfin, $\mathbb E[A | (X, Y)]$ vaut 0 :

$$ \mathbb E[A | (X, Y)] = \mathbb E(h_D(X) | (X, Y)) - \mathbb E(\bar{h}(X) | (X, Y))\\ = \mathbb E(h_D(X) | (X, Y)) - \mathbb E( \mathbb E(h_D(X) | X) | (X, Y))\\ = \mathbb E(h_D(X) | (X, Y)) - \mathbb E( \mathbb E(h_D(X) | (X, Y)) \\ = 0 $$

On a utilisé successivement la définition de $\bar{h}(X)$ et le fait que le conditionnement successif par 2 tribus est égal au conditionnement par la tribu la plus petite (ici celle engendrée par $(X, Y)$, contenue dans celle engendrée par $X$).

On obtient la formule suivante de décomposition de l’erreur du modèle $h_D$ :

$$ \mathbb E[(h_D(X)-Y)^2] = \mathbb E[(h_D(X) - \bar{h}(X))^2] + \mathbb E[(\bar{h}(X) -Y)^2] $$

Le premier terme de la somme est la variance du modèle par rapport aux données d’entraînement : il décrit la distance moyenne entre le modèle entraîné sur $D$, et le même modèle ne dépendant pas des données d’entraînement. Ce terme n’a rien à voir avec $Y$ ni avec l’erreur de prédiction du modèle. C’est la “variance” de “décomposition biais-variance”. Pour trouver le “biais”, il faut développer un petit peu le second terme, en introduisant $\bar{Y} = \mathbb E(Y | X)$. $\bar{Y}$ correspond à la valeur moyenne de $Y$ connaissant $X$ : quelle valeur s’attend on à avoir pour $Y$ connaissant $X$. On peut alors décomposer B :

$$ \mathbb E(B) = \mathbb E[(\bar{h}(X) -Y)^2]\\ = \mathbb E[([\bar{h}(X) - \bar{Y}]^2 + [\bar{Y} - Y])^2] \\ = \mathbb E[(U+ V)^2] \\ $$

où $U = \bar{h}(X) - \bar{Y}$ et $V =\bar{Y} - Y$. Comme avant, on développe le carré et on montre que le terme $2*\mathbb E(UV)$ vaut $0$ :

$$ \mathbb E(UV) = \mathbb E(\mathbb E(UV | X))\\ = \mathbb E(U \mathbb E(V | X)) $$

Car $U$ est $X$-mesurable donc se comporte comme une constante vis-à-vis de $\mathbb E(.|X)$. Et enfin, $\mathbb E(V | X) = 0$ car :

$$ \mathbb E(V | X) = \mathbb E(\mathbb E(Y | X) - Y | X)\\ = \mathbb E(Y | X) - \mathbb E(Y | X)\\ = 0 $$

car $\mathbb E(\mathbb E(Y | X) | X) = \mathbb E(Y | X)$ ($\mathbb E(Y | X)$ est $X$-mesurable !)

Conclusion

Et voilà, la décomposition biais variance du modèle $\mathcal A$ est :

$$ \mathbb E[(h_D(X)-Y)^2] = \mathbb E[A^2] + \mathbb E[B^2]\\ = \mathbb E[A^2] + \mathbb E[U^2] + \mathbb E[V^2] $$

avec :

  • $A = h_D(X) - \bar{h}(X)$
  • $U = \bar{h}(X) - \bar{Y}$
  • $V =\bar{Y} - Y$

On a décomposé l’erreur du modèle en 3 termes :

  • le premier désigne la variance du modèle sur les données d’entraînement : on peut le réduire en prenant des “meilleures” données d’entraînement;

  • le second désigne l’erreur du modèle moyen par rapport à la valeur attendue de $Y$ : c’est le biais (en pratique on dit biais “carré” pour souligner le carré dans l’espérance) inhérent au modèle, ne dépendant pas des données d’entraînement;

  • le troisième désigne le bruit des données : à quel point la valeur attendue pour $Y$ connaissant $X$ varie de la valeur réelle de $Y$ : si $X$ ne contient pas assez d’informations pour expliquer $Y$, ce terme risque d’être important (et incompressible en changeant de modèle où en prenant des “meilleures” données d’entraînement).