Aller au contenu

Probabilités · 4 affiches · formule n° 71

La régression linéaire et la droite des moindres carrés

La régression linéaire cherche la droite qui passe au plus près d’un nuage de points. La droite des moindres carrés est celle qui rend la plus petite possible la somme des carrés des écarts verticaux entre les points et la droite.

Voir les 4 affiches 11 contrôles par le calcul

Droite des moindres carrés de nn points (xi,yi)(x_i, y_i) dont les xix_i ne sont pas tous égaux ; x¯\bar{x} et y¯\bar{y} sont les moyennes. Dessin : 15 points tirés au hasard et leur droite ; sur chaque écart vertical, un carré : aucune autre droite ne donne une aire totale plus petite.

Quatre styles

Les affiches

La même formule, le même dessin calculé, en Papier, Nuit, Bauhaus ou Tableau noir. En affiche, toile, plexiglas ou aluminium.

Ce que dit la formule

On dispose de nn points (x1,y1),(x2,y2),…,(xn,yn)(x_1, y_1), (x_2, y_2), \ldots, (x_n, y_n), avec n≥2n \geq 2 et des abscisses xix_i qui ne sont pas toutes égales. Parmi toutes les droites d’équation y=ax+by = ax + b, il en existe une seule qui rend minimale la somme des carrés des écarts verticaux

S(a,b)=∑i=1n(yi−(axi+b))2.S(a, b) = \sum_{i=1}^{n} \big(y_i - (a x_i + b)\big)^2.

C’est la droite des moindres carrés, ou droite de régression de yy en xx. Ses coefficients sont

a=∑i(xi−x¯)(yi−y¯)∑i(xi−x¯)2,b=y¯−ax¯a = \frac{\sum_i (x_i - \bar{x})(y_i - \bar{y})}{\sum_i (x_i - \bar{x})^2}, \qquad b = \bar{y} - a\,\bar{x}
  • xix_i et yiy_i : les coordonnées du ii-ème point (par exemple une durée et une mesure).
  • x¯\bar{x} et y¯\bar{y} : les moyennes des xix_i et des yiy_i, soit x¯=1n∑ixi\bar{x} = \frac{1}{n} \sum_i x_i et y¯=1n∑iyi\bar{y} = \frac{1}{n} \sum_i y_i.
  • ∑i\sum_i : la somme pour ii allant de 1 à nn.
  • aa : le coefficient directeur (la pente) de la droite. Son numérateur, divisé par nn, est la covariance des xix_i et des yiy_i ; son dénominateur, divisé par nn, est la variance des xix_i. Ce dénominateur n’est nul que si toutes les xix_i sont égales, d’où la condition.
  • bb : l’ordonnée à l’origine. La relation b=y¯−ax¯b = \bar{y} - a\,\bar{x} signifie que la droite passe par le point moyen (x¯,y¯)(\bar{x}, \bar{y}).
  • yi−(axi+b)y_i - (a x_i + b) : l’écart vertical du ii-ème point à la droite, appelé résidu.

Le coefficient de corrélation. On mesure la qualité de l’ajustement par r=∑i(xi−x¯)(yi−y¯)∑i(xi−x¯)2∑i(yi−y¯)2r = \frac{\sum_i (x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_i (x_i - \bar{x})^2 \, \sum_i (y_i - \bar{y})^2}}, toujours compris entre −1-1 et 11 (quand les yiy_i ne sont pas toutes égales). Plus |r||r| est proche de 1, plus les points sont proches d’une droite ; r=±1r = \pm 1 quand ils sont exactement alignés.

Ce que la formule ne dit pas. Elle trouve toujours une droite, même pour un nuage qui n’a rien de rectiligne : il faut regarder les points avant de s’y fier. Une bonne corrélation ne prouve pas que xx cause yy. Enfin, la régression n’est pas symétrique : la droite qui minimise les écarts horizontaux (régression de xx en yy) est en général différente.

Un exemple

Prenons les cinq points (1,2)(1, 2), (2,4)(2, 4), (3,5)(3, 5), (4,4)(4, 4) et (5,5)(5, 5).

  1. Les moyennes. x¯=1+2+3+4+55=3\bar{x} = \frac{1 + 2 + 3 + 4 + 5}{5} = 3 et y¯=2+4+5+4+55=4\bar{y} = \frac{2 + 4 + 5 + 4 + 5}{5} = 4.
  2. Les écarts aux moyennes. Les xi−x¯x_i - \bar{x} valent −2,−1,0,1,2-2, -1, 0, 1, 2 et les yi−y¯y_i - \bar{y} valent −2,0,1,0,1-2, 0, 1, 0, 1.
  3. Le numérateur. On multiplie les écarts deux à deux et l’on additionne : 4+0+0+0+2=64 + 0 + 0 + 0 + 2 = 6.
  4. Le dénominateur. On additionne les carrés des xi−x¯x_i - \bar{x} : 4+1+0+1+4=104 + 1 + 0 + 1 + 4 = 10.
  5. Les coefficients. a=610=0,6a = \frac{6}{10} = 0{,}6 et b=4−0,6×3=2,2b = 4 - 0{,}6 \times 3 = 2{,}2. La droite des moindres carrés a pour équation y=0,6x+2,2y = 0{,}6\,x + 2{,}2.

Les résidus. La droite prévoit 2,8 ; 3,4 ; 4 ; 4,6 et 5,2 aux abscisses 1 à 5. Les résidus valent donc −0,8-0{,}8 ; 0,60{,}6 ; 11 ; −0,6-0{,}6 et −0,2-0{,}2 : leur somme est nulle, comme toujours. La somme de leurs carrés vaut 0,64+0,36+1+0,36+0,04=2,40{,}64 + 0{,}36 + 1 + 0{,}36 + 0{,}04 = 2{,}4. À titre de comparaison, la droite y=x+1y = x + 1 donne une somme égale à 4 : elle est moins bonne au sens des moindres carrés.

Prévision et corrélation. Pour x=6x = 6, la droite prévoit 0,6×6+2,2=5,80{,}6 \times 6 + 2{,}2 = 5{,}8. Comme ∑i(yi−y¯)2=4+0+1+0+1=6\sum_i (y_i - \bar{y})^2 = 4 + 0 + 1 + 0 + 1 = 6, le coefficient de corrélation vaut r=610×6=660r = \frac{6}{\sqrt{10 \times 6}} = \frac{6}{\sqrt{60}}, environ 0,774 5, et r2=0,6r^2 = 0{,}6.

Pourquoi c’est vrai

La démonstration n’a besoin que d’un développement de carrés. Notons Sxx=∑i(xi−x¯)2S_{xx} = \sum_i (x_i - \bar{x})^2, Sxy=∑i(xi−x¯)(yi−y¯)S_{xy} = \sum_i (x_i - \bar{x})(y_i - \bar{y}) et Syy=∑i(yi−y¯)2S_{yy} = \sum_i (y_i - \bar{y})^2.

Étape 1 : choix de bb. Pour une pente aa fixée, on écrit chaque écart sous la forme yi−axi−b=ui+cy_i - a x_i - b = u_i + c, avec ui=(yi−y¯)−a(xi−x¯)u_i = (y_i - \bar{y}) - a(x_i - \bar{x}) et c=y¯−ax¯−bc = \bar{y} - a\,\bar{x} - b. Comme la somme des uiu_i est nulle, le développement donne

S(a,b)=∑iui2+nc2.S(a, b) = \sum_i u_i^2 + n c^2.

Le terme nc2n c^2 est positif ou nul, et il s’annule exactement quand c=0c = 0, c’est-à-dire quand b=y¯−ax¯b = \bar{y} - a\,\bar{x}.

Étape 2 : choix de aa. Avec ce bb, il reste ∑iui2=Syy−2aSxy+a2Sxx\sum_i u_i^2 = S_{yy} - 2a\,S_{xy} + a^2\,S_{xx}. Puisque Sxx>0S_{xx} > 0 (les xix_i ne sont pas toutes égales), on peut mettre ce trinôme sous forme canonique :

∑iui2=Sxx(a−SxySxx)2+Syy−Sxy2Sxx.\sum_i u_i^2 = S_{xx}\Big(a - \frac{S_{xy}}{S_{xx}}\Big)^2 + S_{yy} - \frac{S_{xy}^2}{S_{xx}}.

Il est minimal pour une seule valeur, a=SxySxxa = \frac{S_{xy}}{S_{xx}} : c’est la formule de l’affiche. La somme minimale vaut Syy−Sxy2Sxx=Syy(1−r2)S_{yy} - \frac{S_{xy}^2}{S_{xx}} = S_{yy}(1 - r^2), ce qui montre au passage que r2≤1r^2 \leq 1. Dans l’exemple : 6×(1−0,6)=2,46 \times (1 - 0{,}6) = 2{,}4.

Si toutes les xix_i sont égales, Sxx=0S_{xx} = 0 : la formule n’a plus de sens, et une infinité de droites donnent la même somme minimale.

Les programmes de l’atelier vérifient tout cela par le calcul : l’exemple ci-dessus en fractions exactes (a=35a = \frac{3}{5}, b=115b = \frac{11}{5}), la nullité de la somme des résidus rir_i et de ∑ixiri\sum_i x_i\, r_i sur 5 000 nuages tirés au hasard, le passage par le point moyen, l’identité S(a+δ,b+ε)=S(a,b)+∑i(δxi+ε)2S(a + \delta, b + \varepsilon) = S(a, b) + \sum_i (\delta x_i + \varepsilon)^2 pour 20 000 décalages, et le cas des abscisses toutes égales.

Un peu d’histoire

La méthode des moindres carrés est née en astronomie, pour tirer une orbite fiable de nombreuses observations entachées d’erreurs. Sa première exposition claire est publiée par Adrien-Marie Legendre en 1805, dans ses Nouvelles méthodes pour la détermination des orbites des comètes. En 1809, Carl Friedrich Gauss la publie à son tour dans un traité sur le mouvement des corps célestes et affirme l’utiliser depuis 1795, ce qui ouvre une querelle de priorité entre les deux mathématiciens. Gauss la relie à la loi des erreurs qui porte aujourd’hui son nom.

Le mot « régression » vient de Francis Galton. Dans un article de 1886 sur la taille des enfants et celle de leurs parents, il constate que les enfants de parents très grands ou très petits ont une taille en moyenne plus proche de la moyenne générale : il parle de « régression vers la médiocrité », au sens de retour vers la moyenne. Le nom est resté à la méthode.

Ce que montre l’affiche

Le dessin montre 15 points tirés au hasard par le programme, avec une graine fixe, autour de la droite y=0,55x+1,6y = 0{,}55\,x + 1{,}6. La droite tracée est celle que donne la formule pour ces points : environ y=0,5611x+1,5595y = 0{,}561\,1\,x + 1{,}559\,5, affichée sous la forme y≈0,56x+1,55y \approx 0{,}56\,x + 1{,}55 (coefficients tronqués). Sur chaque écart vertical entre un point et la droite, un carré a pour côté cet écart ; sa couleur indique si le point est au-dessus ou au-dessous de la droite. L’aire totale des carrés, environ 5,946, est la somme S(a,b)S(a, b) : aucune autre droite ne fait mieux, et l’atelier l’a vérifié sur 10 000 droites tirées au hasard. Le petit cercle marque le point moyen (x¯,y¯)(\bar{x}, \bar{y}), par lequel passe la droite. L’affiche existe en quatre styles : Papier, Nuit, Bauhaus et Tableau noir.

Pour aller plus loin

Sources : Méthode des moindres carrés (Wikipédia) (nouvel onglet), Régression linéaire (Wikipédia) (nouvel onglet), Simple linear regression (Wikipedia) (nouvel onglet), Least Squares Fitting (MathWorld) (nouvel onglet), Least squares (Wikipedia) (nouvel onglet), Regression toward the mean (Wikipedia) (nouvel onglet).

Vérifiée par le calcul

Les contrôles de cette formule

Avant d'imprimer l'affiche, un programme met la formule à l'épreuve. Voici ce qu'il a calculé (dernier passage le 11 octobre 2026) ; si un seul de ces contrôles échouait, l'affiche ne serait pas produite. Notre méthode

  • exemple exact (fractions) : points (1, 2), (2, 4), (3, 5), (4, 4), (5, 5) → a = 3/5, b = 11/5a = 3/5, b = 11/5
  • équations normales Σ(y_i − ax_i − b) = 0 et Σ x_i(y_i − ax_i − b) = 0 sur 5 000 nuages tirés au hasardécart relatif maximal 2.54e-15
  • la droite passe par le point moyen (x̄, ȳ) sur ces 5 000 nuagesécart relatif maximal 1.94e-16
  • minimum : S(a + da, b + db) ≥ S(a, b) pour 20 000 décalages (da, db) tirés au hasard
  • identité S(a + da, b + db) = S(a, b) + Σ(da·x_i + db)² sur ces 20 000 décalagesécart relatif maximal 4.76e-12
  • a = r · s_y / s_x (r : coefficient de corrélation, |r| ≤ 1) sur ces 5 000 nuagesécart relatif maximal 5.38e-16
  • points exactement alignés sur y = ax + b : la formule retrouve a et b (1 000 droites)écart relatif maximal 5.75e-15
  • dessin : aire totale des 15 carrés = S(a, b) et 10 000 autres droites tirées au hasard donnent plusS = 5.9467, a = 0.5611, b = 1.5596
  • contre-exemple : x_i tous égaux → dénominateur nul, la formule ne donne rien (a non fini)
  • … et une infinité de droites atteignent le même minimum (y = 0x + 8/3 et y = x + 2/3 donnent la même somme)
  • non-symétrie : régresser x sur y ne donne pas la même droite (pente 1/a′ ≠ a, produit a·a′ = r² < 1)a = 0.5611, 1/a′ = 0.6593

Sources

Questions fréquentes

Comment calculer l’équation de la droite de régression ?

On calcule les moyennes x¯\bar{x} et y¯\bar{y}, puis a=∑i(xi−x¯)(yi−y¯)∑i(xi−x¯)2a = \frac{\sum_i (x_i - \bar{x})(y_i - \bar{y})}{\sum_i (x_i - \bar{x})^2} et b=y¯−ax¯b = \bar{y} - a\,\bar{x}. Dans un tableur français, les fonctions PENTE et ORDONNEE.ORIGINE donnent directement aa et bb.

Pourquoi parle-t-on de moindres carrés ?

Parce que la droite rend la plus petite possible la somme des carrés des écarts verticaux entre les points et la droite. Élever au carré rend tous les écarts positifs et conduit à une formule simple, avec une solution unique.

Que mesure le coefficient de corrélation r ?

Il mesure à quel point les points sont proches d’une droite : il est compris entre −1-1 et 11, et vaut ±1\pm 1 seulement si les points sont alignés. Son carré r2r^2 indique la part de la dispersion des yiy_i expliquée par la droite.

La droite de régression passe-t-elle par le point moyen ?

Oui, toujours : comme b=y¯−ax¯b = \bar{y} - a\,\bar{x}, le point (x¯,y¯)(\bar{x}, \bar{y}) vérifie l’équation y=ax+by = ax + b.

Une corrélation forte prouve-t-elle une relation de cause à effet ?

Non. Deux grandeurs peuvent évoluer ensemble parce qu’elles dépendent d’une troisième, ou par coïncidence. La régression décrit une tendance dans les données, elle n’en donne pas la cause.