Régression linéaire

Un article de Wikipédia, l'encyclopédie libre.

Un exemple graphique
Un exemple graphique

En statistiques, il arrive que deux grandeurs X et Y apparaissent liées par relation affine :

Y = a·X + b.


La régression linéaire consiste à déterminer une estimation des valeurs a et b et à quantifier la validité de cette relation grâce au coefficient de corrélation linéaire. La généralisation à p variables ...

Y = a0 + a1·X1 + a2·X2 + … + ap·Xp

... s'appelle la régression linéaire multiple.

Sommaire

[modifier] Situation

À partir de mesures de couples de valeurs (xi , yi ), on a représenté dans un graphe, un ensemble de points Mi (xi , yi ) | i = [1…n] représentant des mesures d'une grandeur y en fonction d'une autre x, par exemple la taille yi des enfants en fonction de leur âge xi.

Les points Mi paraissent alignés. On peut alors tenter une régression linéaire, c'est-à-dire chercher la droite D dont l'équation est y = a x + b et qui passe au plus près des points Mi.

Passer au plus près, selon la méthode des moindres carrés, c'est rendre minimale la somme des carrés des écarts des points à la droite :

\sum_{i=1}^n (y_i-ax_i-b)^2

où (yi - axi - b)² représente le carré de la distance verticale du point expérimental Mi à la droite considérée comme la meilleure.

Cela revient donc à déterminer les valeurs des paramètres a et b (respectivement le coefficient directeur de la droite et son ordonnée à l'origine) qui minimisent la somme ci-dessus.

[modifier] Formules à connaître

  • La moyenne des xi : \overline{x}=\frac{1}{n}\sum_{i=1}^n x_i
  • la moyenne des yi : \overline{y}=\frac{1}{n}\sum_{i=1}^n y_i
  • le point moyen G a pour coordonnées (\overline{x},\overline{y})
  • la variance des xi : V(x) =\frac{1}{n}\sum_{i=1}^n (x_i-\overline{x})^2 = \overline{x^2}-{\overline{x}}^2 <mnémonique : la moyenne des carrés moins le carré de la moyenne>
  • l'écart type des xi : \sigma_x= \sqrt{V(x)}
  • la variance des yi : V(y) =\frac{1}{n}\sum_{i=1}^n (y_i-\overline{y})^2 = \overline{y^2}-{\overline{y}}^2 <mnémonique : la moyenne des carrés moins le carré de la moyenne>
  • l'écart type des yi : \sigma_y= \sqrt{V(y)}
  • la covariance des xi, yi : cov(x,y) = \frac{1}{n}\sum_{i=1}^n (x_i-\overline{x})(y_i-\overline{y}) = \overline{x \cdot y}-\overline{x} \cdot \overline{y} <mnémonique : la moyenne des produits moins le produit des moyennes>

[modifier] Résultat de la régression

La droite rendant minimale la somme précédente passe par le point G et a pour coefficient directeur \frac{cov(x,y)}{V(x)}. Son équation est donc :

y = \frac{cov(x,y)}{V(x)}(x-\overline{x})+\overline{y}

soit

a = \frac{cov(x,y)}{V(x)}
b = \overline{y} - \frac{\overline{x} \cdot cov(x,y)}{V(x)} = \overline{y} - a \cdot \overline{x}

[modifier] Erreur commise

Si l'on appelle εi l'écart vertical entre la droite et le point (xi , yi )

\varepsilon_i = y_i - a x_i - b

alors l'estimateur de la variance résiduelle σ²ε est :

\hat{\sigma}_\varepsilon^2 = \frac{1}{n-2} \cdot \sum_{i = 1}^n \varepsilon_i^2

la variance de a, σ²a, est estimée par

\hat{\sigma}_a^2 = \frac{\hat{\sigma}_\varepsilon^2}{n \cdot V(x)}.

On est dans le cadre d'un test de Student sur l'espérance avec écart type inconnu. Pour un niveau de confiance α donné, on estime que l'erreur sur a est :

\Delta a = \hat{\sigma}_a \cdot t^{n-2}_{(1-\alpha)/2}

tn-2(1-α)/2 est le quantile d'ordre α/2 de la loi de Student à n-2 degrés de liberté.

L'erreur commise en remplaçant la valeur mesurée yi par le point de la droite axi + b est :

\Delta y = \hat{\sigma}_\varepsilon \cdot t^{n-2}_{(1-\alpha)/2}

À titre d'illustration, voici quelques valeurs de quantiles.

Exemples de quantiles de la loi de Student
n niveau de confiance
90 % 95 % 99 % 99,9 %
5 2,02 2,57 4,032 6,869
10 1,812 2,228 3,169 4,587
100 1,660 1,984 2,626 3,390

Lorsque le nombre de points est important (plus de 100), on prend souvent une erreur à 3σ, qui correspond à un niveau de confiance de 99,7 %.

Voir aussi : Erreur (métrologie).

[modifier] Coefficient de corrélation linéaire

On peut aussi chercher la droite D' : x = a'y + b' qui rende minimale la somme :

\sum_{i=1}^n (x_i-a'y_i-b')^2

On trouve alors une droite qui passe aussi par le point moyen G et telle que

a' = \frac{cov(x,y)}{V(y)}.

On souhaite évidemment tomber sur la même droite. Ce sera le cas si et seulement si

a' = 1/a,

c'est-à-dire si

aa' = 1.

Les droites sont confondues si et seulement si

\frac{cov(x,y)^2}{V(x)V(y)}=1

c'est-à-dire si et seulement si

\frac{cov(x,y)}{\sigma_x\sigma_y} =\pm 1

On appelle cette quantité R=\frac{cov(x,y)}{\sigma_x\sigma_y} le coefficient de corrélation linéaire entre x et y. On peut démontrer que ce nombre est toujours compris entre -1 et 1.

En pratique sa valeur absolue est rarement égale à 1, mais on estime généralement que l'ajustement est valide dès que ce coefficient a une valeur absolue supérieure à \sqrt{3}/2

Voir également : Corrélation (mathématiques).

[modifier] Démonstration des formules par étude d'un minimum

Pour tout réel a, on pose f_a(b) = \sum_{i=1}^n (y_i-ax_i-b)^2. Il suffit de développer et ordonner ce polynôme du second degré en b. On obtient:

f_a(b) = nb^2-2\left(\sum_{i=1}^n (y_i-ax_i)\right)b+  \sum_{i=1}^n (y_i-ax_i)^2

Ce polynôme atteint son minimum en

b = \frac{1}{n}\sum_{i=1}^n (y_i-ax_i) = \overline{y} - a\overline{x}

Ce qui signifie que la droite passe par le point moyen G

Il reste à remplacer dans la somme de départ, b par cette valeur.

Pour tout réel a, S(a) = \sum_{i=1}^n ((y_i-\overline{y}) - a(x_i-\overline{x}))^2. Il suffit de développer et ordonner ce polynôme du second degré en a. On obtient

S(a) = \left(\sum_{i=1}^n (x_i-\overline{x})^2\right)a^2 - 2\left(\sum_{i=1}^n (x_i-\overline{x})(y_i-\overline{y})\right)a + \sum_{i=1}^n (y_i - \overline{y})^2
S(a)= n\times V(x)\times a^2-2\times n\times cov(x,y)\times a + n\times V(y) .

Ce polynôme atteint son minimum en

a=\frac{cov(x,y)}{V(x)}

La droite de régression est bien la droite passant par G et de coefficient directeur a=\frac{cov(x,y)}{V(x)}.

[modifier] Démonstration des formules grâce aux espaces vectoriels de dimension n

Dans l'espace \mathbb{R}^n, muni du produit scalaire canonique, on considère le vecteur X de coordonnées (x1,x2,...,xn), le vecteur Y de coordonnées (y1,y2,...,yn), le vecteur U de coordonnées (1, 1, ..., 1).

On peut remarquer que :

  • X.U = n\overline{x}
  • Y.U = n\overline{y}
  • ||X-\overline{x}U||^2 = n.V(x)
  • ||Y-\overline{y}U||^2 = n.V(y)
  • (Y-\overline{y}U).(X-\overline{x}U)=n.cov(x,y)

On note alors \overline{X} le vecteur \overline{x}U et \overline{Y} le vecteur \overline{y}U

Le vecteur Z de coordonnées (ax1 + b,ax2 + b,...,axn + b) appartient à l'espace vectoriel engendré par X et U.

La somme \sum_{i=1}^n (y_i-ax_i-b)^2 représente le carré de la norme du vecteur YZ.

Cette norme est minimale si et seulement si Z est le projeté orthogonal de Y dans l'espace vectoriel vect(X,U).

Z est le projeté de Y dans l'espace vectoriel vect(X,U) si et seulement si (ZY).U = 0 et (Z-Y).(X - \overline{X})=0.

Or (Z-Y).U=aX.U+bU^2-Y.U=n(a\overline{x}+b-\overline{y}) donc (Z-Y).U=0 signifie que b= \overline{y} - a\overline{x}.

En remplaçant dans (Z-Y).(X - \overline{X}), on obtient

(a(X-\overline{X})-(Y-\overline{Y})).(X - \overline{X}) = naV(x) - ncov(x,y) donc (Z-Y).(X - \overline{X})=0 signifie que a = \frac{cov(x,y)}{V(x)}

Enfin le coefficient de corrélation linéaire s'écrit alors \frac{(X-\overline{X}).(Y-\overline{Y})}{||X-\overline{X}||\times||Y-\overline{Y}||}. Cette quantité représente le cosinus de l'angle formé par les vecteurs X-\overline{X} et Y-\overline{Y}.

On retrouve alors les résultats suivants:

  • si le coefficient de corrélation linéaire est 1 ou -1, les vecteurs X-\overline{X} et Y-\overline{Y} sont colinéaires de coefficient de colinéarité a et Y = aX + \overline{Y}-a\overline{X}. L'ajustement linéaire est parfait.
  • si le coefficient de corrélation linéaire est en valeur absolue supérieur à \sqrt{3}/2 alors l'angle formé par les deux vecteurs est compris entre − π / 6 et π / 6 ou entre 5π / 6 et 7π / 6.

[modifier] Voir aussi

[modifier] Liens externes