2
2
2
.
.
.
.
.
2
2
3
4
4
4
3 Exemples
3.1 Exemple 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Exemple 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
4
4
5
5
6
6
9
9
9
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5 Conclusion
10
5.1 Exemple complet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.2 Inconvnients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Tony Bourdier
Version 0.9 25 fvrier 2008
1
1.1
Introduction
Gnralits
Ltude dun phnomne peut, le plus souvent, tre schmatis de la manire suivante :
on sintresse une grandeur b, que nous appellerons par la suite rponse ou variable
explique, qui dpend dun certain nombre de variables v1 , v2 , . . . , vn que nous appellerons
facteurs ou variables explicatives.
1.2
n
X
j vj
j=1
v1
v2
.v
j=1
j
vn
^b
Pourquoi bb et pas b ?
On cherche expliquer la variable b par n autres variables v1 , v2 , . . . , vn mais on nest pas
certain que b ne dpend que de ces variables. Dans lidal bb = b mais le plus souvent bb b
avec bb 6= b.
2
2.1
On cherche donc un modle qui nous permet dobtenir un bb le plus proche possible de
b. Pour cela, on effectue m mesures (m > n) des variables v1 , v2 , . . . , vn et de b. On cherche
alors 1 , 2 , . . . , n tel que, pour i = 1 . . . m :
bbi = 1 vi,1 + 2 vi,2 + . . . + n vi,n =
n
X
j vi,j
j=1
b
bm = 1 vm,1 + 2 vm,2 + . . . + n vm,n
ESIAL Mathmatiques Numriques 2007 - 2008 Tony Bourdier
scrit :
bb =
v1,1
v2,1
..
.
v1,2
v2,2
..
.
...
...
v1,n
v2,n
..
.
1
2
..
.
n
{z }
x
>
x R , k x k = ( x | x ) = x x =
m
X
x2i
j=1
xRn
2.2
Forme standard
Dfinition 2.1 : On appelle forme standard dun problme de moindres
carrs la donne de
..
.
.
..
..
..
la matrice A = .
Mm,n appele
.
vm,1 vm,2 . . . vm,n
mesure m
v1
v2 . . .
vn
matrice des donnes
b1
b2
le vecteur rponse b = . Rm
..
bm
1
2
..
.
Rn ralisant :
m
min k Ax b k2
xRn
2.3
Cas particuliers
2.3.1
Caractres transforms
Remarque 2.3 : Il se peut quun caractre explicatif apparaisse sous une forme transforme : cos(v), v 2 , ln(v), . . . . Dans ce cas, on considre simplement que la forme transforme
du caractre constitue une nouvelle variable explicative.
2.3.2
Formulation non-linaire
Remarque 2.4 : Il arrive parfois que la relation fonctionnelle entre la variable explique
et les variables explicatives ne soit pas donne sous forme linaire, comme dans lexemple
suivant :
b = f (v1 , v2 ) = v11 v22
Dans ce cas, on linarise :
ln(b) = 1 ln(v1 ) + 2 ln(v2 )
La nouvelle variable explique est b0 = ln(b) et les nouvelles variables explicatives sont
ln(v1 ) et ln(v2 ).
3
3.1
Exemples
Exemple 1
On sintresse une quantit physique z qui varie selon un paramtre physique t. On pose
le modle
z = f (t) = a + bt + ct2 + dt3
La variable explique est z, les variables explicatives sont t, t2 , t3 et 1 et les paramtres
du modle, que lon cherche, sont a, b, c et d. On ralise une srie de m mesure (ti , zi )1im .
La forme standard du problme de moindres carrs correspondant est :
a
b
On cherche x =
min k Ax b k2
c ralisant xR
4
d
o
A=
3.2
1
1
..
.
t1
t2
..
.
t21
t22
..
.
t31
t32
..
.
1 tm t2m t3m
Mm,n et b =
z1
z2
..
.
Rm
zm
Exemple 2
On cherche
sius en dgr
que lon note
F
(tC
i , ti )1im
dterminer un moyen de convertir des tempratures donnes en degr CelFahrenheit. Pour cela, on effectue m mesures de tempratures en Celsius,
tC et en Fahrenheit, que lon note tF . On dispose alors dun m-chantillon
et on pose le modle :
tF = + tC
ESIAL Mathmatiques Numriques 2007 - 2008 Tony Bourdier
A=
ralisant min k Ax b k2
xR2
1 tC
1
1 tC
2
.. .. Mm,2 et b =
. .
C
1 tm
tF1
tF2
..
.
tFm
Rm
On fait lyhpothse que les variables explicatives sont linairement indpendantes (i.e.
rang(A) = n).
4.1
Solution gomtrique
O
2
v1
^b = Ax
v2
Im(A)
Lemme 4.5 : caractrisation de la projection orthogonale sur un sous-espace vectoriel. Soit x Rk et E un sev de Rk , on a :
x
b projet orthogonal de x sur E
xx
b est orthogonal tout vecteur de E
Rn
A> (b Ax) = 0
A> b A> Ax = 0
A> b = A> Ax
La solution du problme est donc la solution x du systme A> b = A> Ax. On peut galement affirmer que cette solution est unique (dmo en TD).
4.2
Solution analytique
E(x) E 0 (x) = 0
(Dmo page 64 du poly)
Drivation matricielle
x1
x2
..
.
un vecteur de Rk .
xk
f
ou f (x) ou encore
x
0
f (x) le vecteur colonne des drives partielles de f par rapport aux xi :
f
x1
f
x2
=
x ..
.
f
Dfinition 4.9 :
xn
Prliminaires
f (x + d) f (x)
Remarque 4.12 : Cette galit nous permet de calculer la drive dune forme linaire
de la faon suivante :
on calcule Df (x, d)
on exprime cette dernire sous la forme dun produit scalaire en d : ( Q | d ) ou on
factorise d droite : Q> d
le facteur gauche Q (ou lautre facteur que d du produit scalaire) est ncessairement
f 0 (x).
Proposition 4.13 : Les drives directionnelles dans la direction des vecteurs de
la base canonique sont les drives partielles :
i [1, k],
f
(x) = Df (x, ei )
xi
Remarque 4.14 : Cette proprit fournit un moyen simple de calculer les drives partielles.
Drivation
de formes klinaires
R
R
Soit f :
x = (x1 , . . . , xk ) 7 a1 x1 + . . . + ak xk = ( x | a ) = ( a | x ) = a> x = x> a
f
f
i [1, k],
= ai donc f 0 (x) = f (x) =
=a
xi
x
retenir : a, x Rk :
(x> a)
(a> x)
=
=a
x
x
Remarque 4.15 : On retrouve ce rsultat via les drives partielles : soit d une direction
quelconque
Df (x, d)
f (x + d f (x)
0
( x + d | a ) ( x | a )
lim
0
lim ( d | a )
( d | a ) = ( a | d ) = a> d
=
=
=
lim
f 0 (x) = a
Drivation dune forme quadratique
Rk
R
Pk
x = (x1 , . . . , xk ) 7
i,j=1 ai,j xi xj
=
=
=
=
=
=
f (x + d f (x)
0
( A(x + d) | x + d ) ( Ax | x )
lim
0
( Ax | x ) + ( Ax | d ) + ( Ad | x ) + 2 ( Ad | d ) ( Ax | x )
lim
0
lim ( Ax | d ) + ( Ad | x ) + ( Ad | d )
0
>
( Ax | d ) + ( Ad | x ) = ( Ax | d ) + A d | x
(A + A> )x | d
lim
f 0 (x) = (A + A> )x
retenir : x Rk , A Mk,k :
(x> Ax)
= (A + A> )x
x
(x> Ax)
= 2Ax.
x
>
2
(x ax)
ax
On retrouve, en dimension 1, un rsultat bien connu :
=
= 2ax.
x
x
Remarque 4.18 : Si A est symtrique, i.e. si A> = A, on a :
(x> x)
= 2x.
x
Remarques
Remarque 4.20 : f, g Rk R, , R, x Rk :
f + g
f
g
=
+
x
x
x
Remarque 4.21 : Pour toute quantit G indpendante de x (i.e. dans laquelle nintervient
aucun xi ), on a :
G
=0
x
4.2.2
Calcul de la solution
On a
E(x) = k Ax b k2
= k Ax k2 2 ( Ax | b ) + k b k2
= x> A> Ax 2x> A> b + b> b
Ainsi,
x> A> b b> b
(x> A> Ax)
2
+
x
x
x
= 2A> Ax 2A> b + 0
E 0 (x) =
donc
E 0 (x) = 0 2A> Ax 2A> b = 0
A> Ax = A> b
4.3
Interprtation statistique
4.4
Conclusion
(1)
Les quations (1) sont appeles quations normales. Ce systme admet toujours
au moins une solution. Si la matrice A> A est rgulire, i.e. si rang(A) = n, alors la
solution est unique.
1
E[b] = b
b
10
Conclusion
5.1
Exemple complet
F
On reprend lexemple prcdent. On dispose de 14 mesures (tC
i , ti )1i14 :
On cherche x =
ralisant min k Ax b k2
xR2
avec
A=
--> A =
1. - 40.
1. - 35.5
1. - 30.5
1. - 25.5
1. - 20.5
1. - 15.5
1. - 10.5
1. - 5.5
1. - 0.5
1.
4.5
1.
19.5
1.
34.5
1.
44.5
1.
49.5
1 tC
1
1 tC
2
.. .. Mm,2 et b =
. .
C
1 tm
--> b
-
--> A*A =
14.
- 31.5
- 31.5
11263.25
tF1
tF2
..
.
tFm
Rm
=
39.6653
32.676712
23.814192
13.612434
3.7645085
5.379745
12.500909
24.28376
32.57308
38.78263
66.65256
93.17702
111.88484
121.51627
--> A*b =
393.21766
19215.549
14
31.5
=
19215.549
31.5 11263.25
32.1
La solution est :
=
.
1.8
On en dduit que tF = 32.1 + 1.8tC .
5.2
Inconvnients
La rsolution dun problme de moindres carrs via les quations normales possde deux
inconvnients majeures. Dune part, la perturbation due aux erreurs darrondi lorsque lon
passe par les quations normales peut tre importante. En effet, si la matrice des donnes
A est lgrement perturbe : A0 = A + A, le passage aux quations normales va amplifier
la perturbation : (A + A)> (A + A) = A> A + A> A + A> A + A> A . . . alors quen
2
11
passant par dautres mthodes de rsolution (par exemple factoriser A sous la forme QR
o Q est orthogonale et R triangulaire) la perturbation des donnes sera moindre. Dautre
part, le calcul de A> A peut faire intervenir des overflow ou underflow parasites comme
dans lexemple suivant : Soit la matrice des donnes suivante
1 1 1
0 0
A=
0 0
0 0
avec 6= 0. On a bien rang(A) = 3. On a alors
1 + 2
1
1
1
1 + 2
1
A> A =
2
1
1
1+
Si est suprieur au plus petit flottant reprsentable alors que 2 lui est infrieur, soit :
2 < m <
la matrice A> A ne sera plus rgulire !
Pour ces problmes, on recours des transformations orthogonales lmentaires, comme
celles de Householder ou de Givens. Avec ces mthodes, on obtient une meilleure stabilit
de notre systme.