Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution...

40
Calcul Formel et Numérique INFO-F-205 Gianluca Bontempi Département d’Informatique Boulevard de Triomphe - CP 212 http://www.ulb.ac.be/di Cours de calcul numérique – p. 1/40

Transcript of Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution...

Page 1: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Calcul Formel et NumériqueINFO-F-205

Gianluca Bontempi

Département d’Informatique

Boulevard de Triomphe - CP 212

http://www.ulb.ac.be/di

Cours de calcul numérique – p. 1/40

Page 2: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Table de matières• Introduction au calcul numérique.

• Analyse des erreurs.

• Résolution des systèmes linéaires.

• Interpolation.

• Curve fitting.

• Résolution des équations non linéaires.

• Résolution numérique des équations différentielles ordinaires.

Cours de calcul numérique – p. 2/40

Page 3: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

La loi du mouvement planétaire• En 1601, l’astronome allemand Johannes Kepler formula la troisième loi

du mouvement planétaire

T = Cx3/2

qui lie la distance x de la planète au soleil (en million de kilomètres) et lapériode orbitale T (en jours).

• La valeur du coefficient C = 0.199769 fut trouvée grâce à la méthode demoindres carrés proposée par K. F. Gauss (Theoria Motus CorporumCaelestium, 1809).

• Cette méthode permit la prédiction de l’orbite de l’astéroïde Cérèsdécouvert le jour du Nouvel An de 1801 par l’astronome italienGiuseppe Piazzi. Piazzi avait pu suivre sa trajectoire durant seulement40 jours avant que il ne disparaisse derrière le soleil.

• Durant cette année, plusieurs scientifiques ont tenté de prédire satrajectoire sur la base des observations de Piazzi. La plupart desprédictions furent erronées; et le seul calcul suffisamment précis pourpermettre de localiser à nouveau Cérès à la fin de l’année, fut celui deGauss, alors âgé de 24 ans.

Cours de calcul numérique – p. 3/40

Page 4: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Les couples de valeurs (xi, Ti) observés pour les planètes Mercure, Vénus,Terre et Mars sont (58, 88), (108, 225), (150, 365) et (228, 687).

40 60 80 100 120 140 160 180 200 220 2400

100

200

300

400

500

600

700

Distance

Pér

iode

Cours de calcul numérique – p. 4/40

Page 5: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Curve fitting• Nombreuses applications nécessitent de représenter de manière

synthétique un grand ensembles de données discrètes pouvant résulterde mesures expérimentales.

• Dans ce cas, l’approche par interpolation peur être inefficace pour deuxraisons:

1. si le nombre de données est grand, le polynôme interpolant peutprésenter des oscillations importantes.

2. les données sont entachées de bruit.

• Au lieu de l’interpolation une approximation des données, appeléelissage ou fitting des données, peut être effectuée en utilisant laméthode discrète des moindres carrés.

• La méthode des moindres carrés permet de décrire des donnéesexpérimentales, généralement entachées d’erreurs de mesure par unmodèle mathématique censé approcher ces données.

Cours de calcul numérique – p. 5/40

Page 6: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Données et approximationSupposons de mesurer 2 variables corrélées Q et I, où Q est la chaleur

dissipée par une resistance R = 2Ω et I est le courant passant à travers R.

10 15 20 25 30 35 40 45 50−1000

0

1000

2000

3000

4000

5000

I

Q

L’approximation par polynôme interpolant ne révèle pas la relationquadratique existante entre I et Q.

Cours de calcul numérique – p. 6/40

Page 7: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Précision d’une approximationOn se donne

1. n + 1 couples de valeurs (xi, yi), i = 0, . . . , n où yi représente, parexemple, une quantité physique mesurée à la position xi.

2. une fonction d’approximation h(·).

Nous définissons l’erreur d’approximation en xi, par

ei = h(xi) − yi i = 0, . . . , n

Cours de calcul numérique – p. 7/40

Page 8: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Précision d’une approximationPlusieurs normes peuvent être considérées afin de mesurer l’éloignement dela fonction h(·) des données.

Erreur absolue maximale:

E∞(h) = max0≤i≤n

|h(xi) − yi|

Erreur absolue moyenne:

E1(h) =1

n + 1

n∑

i=0

|h(xi) − yi|

Root-mean-square error (RMSE):

E2(h) =

(

1

n + 1

n∑

i=0

|h(xi) − yi|2

)1/2

=‖h − y‖2

n + 1

Cours de calcul numérique – p. 8/40

Page 9: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Avantages d’une norme euclidienneEnsuite nous utiliserons la norme E2 (RMSE) afin de mesurer la précisiond’une approximation pour les raisons suivantes:

• les écarts négatives ei < 0 n’effacent pas les écarts positives ej > 0,

• l’optimisation basée sur la différentiation de E2 est plus facile,

• les petits écarts sont réduits et les grands écarts sont amplifiés.

Afin d’introduire la méthode de moindre carrés, nous présentons la notion desystème linéaire surdéterminé.

Cours de calcul numérique – p. 9/40

Page 10: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Systèmes surdéterminés• Soit donné le système linéaire

A(n×m)z = b(n×1)

• Si n = m et si A est inversible alors la solution du système linéaire existeet est unique.

• Si n > m le système est dit surdéterminé.

• Un système surdéterminé n’admet pas une solution au sens classiquemais il admet une solution au sens des moindres carrés.

Cours de calcul numérique – p. 10/40

Page 11: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Rang d’une matrice rectangulaireSoit A une matrice rectangulaire n × m.

Définition. Le déterminant extrait (appelé aussi mineur) d’ordre q est le déterminant de

n’importe quelle matrice d’ordre q obtenue à partir de A en eliminant n − q lignes et m − q

colonnes.

Définition. Le rang de A est la taille du plus grand mineur non nul de A. Une matrice est de

rang maximum si rg(A) = min(m, n).

Les matrices

5 2

1 5

3 7

,

1 0

2 0

0 2

,

1 2

2 4

3 6

ont respectivement rang 2, 2 et 1.

Cours de calcul numérique – p. 11/40

Page 12: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Solution au sens des moindres carrés• Étant donné A ∈ R

n×m avec n > m et b ∈ Rn on dit que z∗ ∈ R

m estune solution du système linéaire Az = b au sens des moindres carrés si

Φ(z∗) = minz∈Rm

Φ(z),

Φ(z) = ‖Az − b‖22 =

n∑

i=1

|bi −m∑

j=1

aijzj |2

• Donc

z∗ = arg minz1,z2,...,zm

n∑

i=1

bi −m∑

j=1

aijzj

2

• Le problème aux moindres carrés est un problème d’optimisationconvexe et consiste à minimiser la norme euclidienne du résidu.

• Puisque dans un problème d’optimisation convexe un minimum local estaussi un minimum global, la solution peut être déterminée en imposantau gradient de la fonction Φ de s’annuler en z∗.

Cours de calcul numérique – p. 12/40

Page 13: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

ExempleConsidérons le système surdéterminé où n = 3 et m = 2 et la matrice A arang maximal

5 2

1 5

3 7

[

z1

z2

]

=

1

3

2

−1

−0.5

0

0.5

1

−1

−0.5

0

0.5

10

50

100

150

200

250

300

z1z2

Φ(z

1,z2)

z1

z2

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Cours de calcul numérique – p. 13/40

Page 14: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Équations normales• Puisque

Φ(z) = (Az − b)T (Az − b) = zT AT Az − 2zT AT b + bT b

on a∇Φ(z∗) = 2AT Az∗ − 2AT b = 0

• Il en découle que z∗ doit être solution du système carré (m × m)

AT Az∗ = AT b

appelé système des équations normales.

• Si A est de rang maximum, le système des équations normales est nonsingulier et la solution z∗ existe et est unique.

• Soit r = b − Az∗ le résidu associé à la solution z∗. Il s’ensuit que

AT r = AT b − AT Az∗ = 0

c.-à-d. le vecteur r est orthogonale aux colonnes de A.

Cours de calcul numérique – p. 14/40

Page 15: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

ExempleLe système surdéterminé Az = b

5 2

1 5

3 7

[

z1

z2

]

=

1

3

2

conduit au système des équations normales

[

35 36

36 78

][

z1

z2

]

=

[

14

31

]

qui a comme solution et residu

z∗ =

[

−0.0167

0.4052

]

, r = b − Az∗ =

0.2734

0.9909

−0.7859

Notons que AT r = [0, 0]Cours de calcul numérique – p. 15/40

Page 16: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Moindres carrés et pseudo-inverseSi A n’est pas de rang maximal:

• on a un nombre infini de solutions.

• on doit imposer une contrainte supplémentaire pour forcer l’unicité de lasolution. Par exemple chercher à minimiser la norme euclidienne de z∗.

Le problème peut alors être formulé ainsi:trouver z∗ ∈ R

m de norme euclidienne minimale tel que

‖Az∗ − b‖22 = min

z∈Rm

‖Az − b‖22

L’ unique solution de ce problème est

z∗ = A†b

où A†

(m×n) est la pseudo-inverse de A. La notion de matrice pseudo-inverse

généralise la notion d’inverse aux matrices rectangulaires. Elle est l’uniquematrice à m lignes et n colonnes telle que

(A†)† = A AA†A = A, A†AA† = A†

Cours de calcul numérique – p. 16/40

Page 17: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

ExempleConsidérons le système surdéterminé où n = 3 et m = 2 et la matrice A arang égal à 1

1 2

2 4

3 6

[

z1

z2

]

=

1

3

2

−1

−0.5

0

0.5

1

−1

−0.5

0

0.5

10

50

100

150

200

250

z1z2

Φ(z

1,z2)

z1

z2

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Cours de calcul numérique – p. 17/40

Page 18: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Decomposition SVDSupposons que An×m soit une matrice réelle de rang r < m. Pour toutematrice A, il existe une décomposition

A = Un×nΣ(n×m)VTm×m

en valeurs singulières (en anglais Singular Value Decomposition) où

Σ(n×m) =

σ1 0 . . . 0 . . . 0

0 σ2 . . . 0 . . . 0

.... . .

0 0 . . . σr 0 0

0 0 . . . 0 . . . 0

......

0 0 . . . 0 . . . 0

où σ1 ≥ · · · ≥ σr > σr+1 = · · · = σm = 0 sont les valeurs singulières de A, etUn×n et Vm×m sont matrices orthogonales.

Cours de calcul numérique – p. 18/40

Page 19: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Decomposition SVDNotons aussi que

• Le nombre de valeurs singulières non nulles indique le rang de lamatrice.

• Si la matrice est singulière, toutes les valeurs singulières sont nulles

• il existe le lien

σi =√

λi(AT A), i = 1, . . . , m

où λi(AT A) sont les valeurs propres de la matrice carrée et symétrique

AT A.

Cours de calcul numérique – p. 19/40

Page 20: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Pseudo-inverseDéfinition (Pseudo-inverse). La matrice m × n

A† = V Σ†UT

est appelée matrice pseudo-inverse de Moore-Penrose ou inverse généralisée, où

Σ†m×n = diag

(

1

σ1, . . . ,

1

σr, 0, . . . , 0

)

=

1σ1

0 . . . 0 0 0 . . . 0

0. . . . . . 0 0 0 . . . 0

0 0 1σr

0 0 0 . . . 0...

......

. . .... 0 . . . 0

0 0 . . . 0 0 0 . . . 0

où σ1, . . . , σr sont les valeurs singulières non nulles de A.

Cours de calcul numérique – p. 20/40

Page 21: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Exemple pseudoinverse: rang maximal

A =

1 0

2 0

0 2

= UΣV T =

−0.4472 0 0.8944

−0.8944 0 −0.4472

0 −1 0

2.2361 0

0 2

0 0

[

−1 0

0 −1

]

A† = V Σ†UT =

[

−1 0

0 −1

][

0.4472 0 0

0 0.5 0

]

−0.4472 −0.8944 0

0 0 −1

0.8944 −0.4472 0

=

=

[

0.2 0.4 0

0 0 0.5

]

= (AT A)−1AT

Cours de calcul numérique – p. 21/40

Page 22: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Exemple pseudoinverse: rang 1

A =

1 2

2 4

3 6

= UΣV T =

−0.2673 0.9562 0.1195

−0.5345 −0.0439 −0.8440

−0.8018 −0.2895 0.5228

8.366 0

0 0

0 0

[

−0.4472 −0.8944

−0.8944 0.4472

]

A† = V Σ†UT =

=

[

−0.4472 −0.8944

−0.8944 0.4472

][

0.1195 0 0

0 0 0

]

−0.2673 −0.5345 −0.8018

0.9562 −0.0439 −0.2895

0.1195 −0.8440 0.5228

=

=

[

0.0143 0.0286 0.0429

0.0286 0.0571 0.0857

]

Cours de calcul numérique – p. 22/40

Page 23: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Propriété de la matrice pseudo-inverse• Elle est la seule matrice de taille (m× n) qui satisfait le quatre propriétés

suivantes

AA†A = A

A†AA† = A†

(AA†)T = AA†

(A†A)T = A†A

• Autres propriétés sont

(A†)† = A

(aA)† = a−1A† si a ∈ R

• Si r = m < n (rang maximal) alors A† = (AT A)−1AT .

• Si r = m = n alors A† = A−1.

Cours de calcul numérique – p. 23/40

Page 24: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Approximation aux moindres carrés (I)• Voyons comment utiliser la méthode de résolution d’un système

surdéterminé dans le problème du curve-fitting.

• On se donne n + 1 couples de valeurs (xi, yi), i = 0, . . . , n où yi

représente, par exemple, une quantité physique mesurée à la positionxi.

Définition. On appelle polynôme aux moindres carrés

Π∗m(x) = c∗mxm + · · · + c∗1x + c∗0

le polynôme de degré m ≤ n tel que

n∑

i=0

|yi − Π∗m(xi)|

2 ≤n∑

i=0

|yi − πm(xi)|2 ∀πm(x) ∈ P m

où P m est l’ensemble des polynômes de degré m.

Cours de calcul numérique – p. 24/40

Page 25: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

• En notant ϕj(x) = xj , on obtient

πm(x) = cmxm + · · · + c1x + c0 =

= cmϕm(x) + · · · + c1ϕ1(x) + c0ϕ0(x) =

m∑

j=0

ϕj(x)cj

le problème peut être formulé comme suit:

• Puisque la solution z∗ au sens des moindres carrés d’un systèmesurdeterminé Az = b est

z∗ = arg minz∈Rm

‖Az − b‖22 = arg min

z1,z2,...,zm

n∑

i=1

bi −m∑

j=1

aijzj

2

trouver les coefficients c∗j ∈ R, j = 0, . . . , m du polynôme auxmoindres carrés Π∗

m(x) revient à résoudre le système surdeterminé detaille (n + 1) × (m + 1)

m∑

j=0

ϕj(xi)cj = yi i = 0, . . . , n

Cours de calcul numérique – p. 25/40

Page 26: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

z∗ = arg minz1,z2,...,zm

n∑

i=1

bi −m∑

j=1

aijzj

2

c∗ = arg minc0,c1,...,cm

n∑

i=0

yi −m∑

j=0

ϕj(xi)ci

2

• Si m < n ceci équivaut à résoudre le système surdétérminé

Xc = y

où X((n+1)×(m+1)) est une matrice rectangulaire telle queX(i+1,j+1) = ϕj(xi), i = 0, . . . , n, j = 0, . . . , m et y est un vecteur((n + 1) × 1).

X =

ϕ0(x0) . . . ϕm(x0)

· · · · · · · · ·

ϕ0(xn) . . . ϕm(xn)

, y =

y0

· · ·

yn

, c =

c0

· · ·

cm

Cours de calcul numérique – p. 26/40

Page 27: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Approximation aux moindres carrés• Si X a rang maximal, le vecteur colonne c∗((m+1)×1) = [c∗0, · · · , c∗m]T est

la solution du système aux équations normales

XT Xc = XT y

• et le polynôme

Π∗m(x) =

m∑

j=0

c∗jϕj(x)

est l’approximation au sens des moindres carrés des données (xi, yi),i = 0, . . . , n.

Cours de calcul numérique – p. 27/40

Page 28: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

ExempleConsidérons les n + 1 données (n = 3)

x x0 x1 x2 x3

y y0 y1 y2 y3

et le polynôme aux moindres carrés d’ordre m = 2 < n

Π∗m(x) = c∗0ϕ0(x) + c∗1ϕ1(x) + c∗2ϕ2(x) = c∗0 + c∗1x + c∗2x

2

Le vecteur des coefficients c∗i est la solution du système correspondanteXc = y où

1 x0 x20

1 x1 x21

1 x2 x22

1 x3 x23

c0

c1

c2

=

y0

y1

y2

y3

Cours de calcul numérique – p. 28/40

Page 29: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Exemple Matlab pour n = 3 et m = 2

x 0 0.5 1 1.5

y 0 0.4794 0.8415 0.9975

Fonction Matlab pinv.m calcule la pseudo-inverse.

0 0.5 1 1.5−0.2

0

0.2

0.4

0.6

0.8

1

1.2

x

yPolynomial order m=2

Script s_least.m

Cours de calcul numérique – p. 29/40

Page 30: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Régression linéaire• Si m = 1, la solution

Π∗1(x) = c∗0ϕ0(x) + c∗1ϕ1(x) = c∗0 + c∗1x

est une fonction linéaire, appelée régression linéaire associée auxdonnées.

• Puisque,

XT =

[

ϕ0(x0) . . . ϕ0(xn)

ϕ1(x0) . . . ϕ1(xn)

]

, X =

ϕ0(x0) ϕ1(x0)

· · · · · ·

ϕ0(xn) ϕ1(xn)

Cours de calcul numérique – p. 30/40

Page 31: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

• le système d’équations normales correspondantes à XT Xc = XT y est

n∑

i=0

ϕ0(xi)ϕ0(xi)c0 +

n∑

i=0

ϕ0(xi)ϕ1(xi)c1 =

n∑

i=0

ϕ0(xi)yi

n∑

i=0

ϕ1(xi)ϕ0(xi)c0 +n∑

i=0

ϕ1(xi)ϕ1(xi)c1 =n∑

i=0

ϕ1(xi)yi

• Etant ϕ0(x) = 1 et ϕ1(x) = x, la solution est une droite de coefficients c0

et c1 qui satisfont le système à 2 équations et 2 inconnues

(n + 1)c0 + c1

∑ni=0 xi =

∑ni=0 yi

c0

∑ni=0 xi + c1

∑ni=0 x2

i =∑n

i=0 xiyi

Cours de calcul numérique – p. 31/40

Page 32: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Exemple de régression linéaire (I)Soit n = 4, m = 1, ϕ0(x) = 1 et ϕ1(x) = x. Étant donné

xi 1 3 4 6 7

yi -2.1 -0.9 -0.6 0.6 0.9

le système aux équations normales est

5c0 + 21c1 = −2.1

21c0 + 111c1 = 2.7

et la solution est

c∗0 = −2.542

c∗1 = 0.505

Cours de calcul numérique – p. 32/40

Page 33: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Exemple de régression linéaire (II)

1 2 3 4 5 6 7−2.5

−2

−1.5

−1

−0.5

0

0.5

1

x

y

Polynomial order m=1

Script s_least2.m

Cours de calcul numérique – p. 33/40

Page 34: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Trade-off overfitting/underfittingUn problème typique de l’analyse des données est la recherche de lacomplexité optimale de la fonction qui approche les données.Exemple: ordre du polynôme interpolant.

−1 −0.5 0 0.5−3

−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5Least−squares order =8

funct points interp least squares

Voir le script Matlab s_unstable2.m.

Cours de calcul numérique – p. 34/40

Page 35: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Radial Basis Functions (RBF)Les Radial Basis Functions (RBF) sont un exemple connu de réseau desneurones. L’idée est de poser ϕ0(x) = 1 et

ϕj(x; µj , σj) = exp(x − µj)

2

σ2j

j ≥ 1

dans l’expression

h(x) =m∑

j=0

cjϕj(x; µj , σj)

La fonction ϕj est une fonction de base radiale symétrique autour d’un centreµj et caractérisée par un largeur σj .Si les termes µj ∈ R et σj ∈ R j = 1, . . . , m sont connus, alors le fitting de lafonction h aux données est fait par la méthodes des moindres carrés.

Autrement, techniques non linéaires sont nécessaires pour estimer lestermes µj et σj , j = 1, . . . , m .

Cours de calcul numérique – p. 35/40

Page 36: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Fitting par moindres carrés de RBFSi les termes µj ∈ R et σj ∈ R j = 1, . . . , m sont connus, le fitting du RBFrevient à écrire le système surdeterminé

y0 = c1ϕ1(x0) + c2ϕ2(x0) + · · · + cmϕm(x0)

y1 = c1ϕ1(x1) + c2ϕ2(x1) + · · · + cmϕm(x1)...

yn = c1ϕ1(xn) + c2ϕ2(xn) + · · · + cmϕm(xn)

qui peut être écritY = Xc

Y =

y0

...

yn

, X =

ϕ1(x0) . . . ϕm(x0)...

......

...

ϕ1(xn) . . . ϕm(xn)

, c = [c1, . . . , cm]T

Cours de calcul numérique – p. 36/40

Page 37: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Exemple RBF en MATLAB

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Number of basis functions m=7

PointsRBF

Voir le script Matlab s_rbf.m.

Cours de calcul numérique – p. 37/40

Page 38: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

Problèmes multivariésL’utilisation de polynômes pour problèmes de fitting avec d > 1 dimensionsx(1), . . . , x(d) est problématique à cause du grand nombre des paramètres.Par exemple, l’expression d’un polynôme de degré m = 3 pour d = 2

dimensions est

Π3(x, z) = a0 + a1x + a2z + a3x2 + a4z

2 + a5xz + a6x3 + a7x

2z + a8xz2 + a9z3

et pour d dimensions est

Πm(x(1), . . . , x(d)) = c0 +d∑

h=1

c1hx(h) +d∑

h1=1

d∑

h2=1

c2h1h2x(h1)x(h2)+

+d∑

h1=1

d∑

h2=1

d∑

h3=1

c3h1h2h3x(h1)x(h2)x(h3)

Pour d > 1 le nombre des paramètres est de l’ordre O(dm).

Cours de calcul numérique – p. 38/40

Page 39: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

RBF et fitting multivariéL’extension de RBF au cas multidimensional est facile

h(x) = c0 +m∑

j=1

cjϕj(x(1), . . . , x(d))

ϕj(x) = exp‖x − µj‖

2

σ2j

et σj ∈ R, x ∈ Rd, µj ∈ R

d.Si µj et σj sont connus, les parametres cj peuvent être calculés par laméthode des moindres carrés.Le nombre des paramètres est de l’ordre O(dm).

Cours de calcul numérique – p. 39/40

Page 40: Calcul Formel et Numérique - ulb.ac.be · Calcul Formel et Numérique INFO-F-205 ... une solution du système linéaire Az = b au sens des moindres carrés si Φ(z ... L’ unique

RBF pour la cas bidimensionalFonction z = 0.1 + (1+sin(2x+3y))

(3.5+sin(x−y)) et 400 données d’apprentissage.

−2

−1

0

1

2

−2

−1

0

1

20

0.2

0.4

0.6

0.8

1

−2−1

01

2

−2

−1

0

1

20

0.2

0.4

0.6

0.8

1

Nombre de fonctions radiales=64

Voir le script Matlab s_rbf2.m.

Cours de calcul numérique – p. 40/40