
|
|
Régression par la méthode des moindres carrés |
On considère un nuage
de points
Mi(xi,yi) que l'on désire
ajuster au mieux par une courbe mathématique de type x
y = f(x)
dont on devra choisir le type de façon pertinente eu égard au phénomène étudié.
On recherche les paramètres de f, fonction affine,
polynôme, exponentielle, etc., minimisant la somme des
carrés des distances entre yi et f(xi).
On cherche alors à minimiser (régression) la somme :
La recherche d'un ajustement exponentiel (comme
l'évolution d'une population) par une fonction de la forme :
relève de l'ajustement linéaire des points de coordonnées (xi , ln yi). En effet, si la méthode des moindres carrés fournit la droite d'équation y = ax + b, on a en fait :
En astronomie, outre l'ajustement décrit ci-après,
Gauss appliqua la méthode des moindres carrés à
des mesures d'observation conduisant à la résolution de
systèmes d'équations linéaires rectangulaires
(possédant plus d'équations que d'inconnues) : il s'agit
de rechercher une solution moyenne (ensemble de mesures) la plus
vraisemblable en minimisant la somme Sri2
où ri désigne le résidu,
différence entre le 1er membre de la i-ème équation et son
terme constant.
| Étudions le cas d'une approximation polynomiale de degré p : |
si
p = 1, il s'agit d'un ajustement linéaire, on parle de
régression linéaire.
Posons :
f(x) = co + c1x + + cpxp
où p est le degré du polynôme d'ajustement et ck , k variant entre o et p, les coefficients recherchés. Il s'agit ici de minimiser :

Nous admettons ici deux résultats :
1.
Concernant les fonctions numériques à plusieurs
variables, une condition nécessaire (non suffisante)
d'extremum en un point
(co,
,cp)
est que toutes les dérivées partielles de
,
à savoir ![]()
/
co
, ![]()
/
c1
, ...,
![]()
/
cp
soient
nulles en ce point.
2. Dans le cas présent de la méthode
des moindres carrés, on obtient effectivement un minimum (on
peut le prouver en développant
en série de
Taylor).
Les calculs peuvent paraître assez "techniques" mais ne présentent
pas de difficultés majeures :
On écrit , pour tout k :
Ce qui conduit au système de p+1 équations :
![]()
avec f(x) = co + c1x + + cpxp. Notons, pour simplifier :
![]()
c'est à dire : nco + c1S1 + c2S2 + + cpSp = Wo
![]()
c'est à dire : coS1 + c1S2 + c2S3 + + cpSp+1 = W1
Le système s'écrira alors matriciellement :

On constate que la matrice du système est symétrique. Si nous notons ai,j le terme général, on a :
|
Droites de régression (p = 1) : |
Le cas linéaire,
droite de régression dite
de y en x d'équation y = ax + b est
très fréquent; on a les formules :

E désignant l'espérance mathématique, V la variance, on peut écrire plus simplement (division par n2 dans le calcul de a) :

où XY désigne la variable aléatoire prenant pour tout i = 1,...n, les valeurs xiyi.
La plupart
des calculatrices fournissent, après entrée des données xi et yi,
les valeurs de n
(nombre de données), de
a, de b et des quatre sommes nécessaires au calcul de a :
xi ,
yi ,
xiyi ,
xi2. En inversant les
rôles de x et y, on obtient la droite de régression de
x en y. Les calculatrices
fournissent d'ailleurs aussi
yi2.
On applique à ce système la méthode du pivot et l'on obtient le programme suivant... :
| Exemples d'application : |
1. Voici un nuage de points. On désire l'ajuster linéairement par la méthode des moindres carrés :
| Point 1 | Point 2 | Point 3 | Point 4 | Point 5 | Point 6 | Point 7 | Point 8 | Point 9 |
| x = 1 | x = 2 | x = 3 | x = 4 | x = 5 | x = 6 | x = 7 | x = 8 | x = 9 |
| y = 1 | y = 1.5 | y = 1.8 | y = 2.2 | y = 2.7 | y = 3.3 | y = 3.5 | y = 4 | y = 4.7 |
Avec p = 1, le programme répond :

La droite de régression de y en x a donc pour équation y = 0,51x + 0,47. Le programme fournit aussi le point moyen, les variances et la covariance. La méthode a "plutôt" privilégié un ajustement sur les 6 premiers points. Les points 7 et 8 peuvent s'interpréter comme des perturbations ou des erreurs de mesure.
2. Les résultats suivants correspondent à l'ajustement par
un polynôme du second degré (parabole) d'un nuage de 7 points représenté ci-dessous :| Point1 | Point 2 | Point 3 | Point 4 | Point 5 | Point 6 | Point 7 |
| x = -3 | x = -2 | x = 1 | x = 2 | x = 3 | x = 4 | x = 5 |
| y = 2 | y = 0.5 | y = -1 | y = -1 | y = 0 | y = 2 | y = 4 |
Le programme répond
:
C'est dire que la parabole d'ajustement a pour équation :
y = 0.2698761x2 - 0.304307x - 1,258357
On constate l'efficacité de la méthode au vu du graphique ci-contre. La parabole calculée ajuste remarquablement le nuage.
3. Voici un cas tout à fait artificiel montrant encore cependant l'efficacité de la méthode. On a relevé sur la courbe d'équation y = 1/x + x/2 les coordonnées de 8 points à 0,1 près. En admettant savoir que l'ajustement est de la forme y = a/x + bx (x > 0), on demande de calculer a et b par la méthode des moindres carrés.
On remarque que xy = a + bx
Point1
Point 2
Point 3
Point 4
Point 5
Point 6
Point 7
Point 8
x = 0,5
x = 1
x = 1,5
x = 2
x = 2,5
x = 3
x = 4
x = 5
y = 2,3
y = 1.5
y = 1,4
y = 1,5
y = 1,7
y = 1,8
y = 2,3
y = 2,7
| Point1 | Point1 | Point 2 | Point 3 | Point 4 | Point 5 | Point 6 | Point 7 | Point 8 |
| x2 | x = 0,25 | x = 1 | x =2,25 | x = 4 | x = 6,25 | x = 9 | x = 16 | x = 25 |
| xy | y = 1,15 | y = 1.5 | y =2,1 | y = 3 | y = 4,25 | y = 5,4 | y = 9,2 | y = 13,5 |
Avec p = 1, Le programme répond :
On retrouve bien l'équation y = 1/x + x/2.