Retour sur le cours SVD - PCA - Institut Optique

27
Retour sur le cours + SVD - PCA

Transcript of Retour sur le cours SVD - PCA - Institut Optique

Page 1: Retour sur le cours SVD - PCA - Institut Optique

Retour sur le cours+

SVD - PCA

Page 2: Retour sur le cours SVD - PCA - Institut Optique

22//2727

Rappel : Convergence, Consistance et Stabilité

● Convergence : la solution numérique tend vers la solution exacte

● Consistance : solution discrète tend vers la solution exacte avec la réduction de la discrétisation 

● Stabilité : différence entre solution discrète et numérique est bornée

● Relations

Équation discrétiséeÉquation

Solution exacte Solution discrète

Solution numérique

Consistance

Convergence Stabilité

Page 3: Retour sur le cours SVD - PCA - Institut Optique

33//2727

Rappel : Conditionnement

● Robustesses aux perturbations

– Données d (perturbées d d)● Bruit de mesure● Conversion en numérique

– Résultats x (perturbées x x)● Erreur numérique

● Conditionnement relatif

● Conditionnement absolu

K rel(d )=limϵ→0sup∣δd∣<ϵ {

∣δ x∣/∣x∣∣δ d∣/∣d∣}

K abs (d )=limϵ→0sup∣δ d∣<ϵ{

∣δ x∣∣δd∣}

Page 4: Retour sur le cours SVD - PCA - Institut Optique

44//2727

Rappel : système linéaire

● Si A est une matrice inversible, le conditionnement relatif du système est

K (A) = conditionnement de la matrice

● Matrice symétrique définie positive

– Conditionnement = Rapport des valeurs propres

K rel(b)≤Κ (A )=∣A−1∣∣A∣

A x=b

Κ (A )=λmaxλmin

Page 5: Retour sur le cours SVD - PCA - Institut Optique

55//2727

Rappel : résoudre un système linéaire

● Méthodes directes

– Si A est diagonale : O(n)

– Si A est triangulaire : O(n2)

– Sinon : triangulation ou factorisation

● LU : matrice quelconque – O(2/3 n3)● Cholesky : matrice symétrique définie positive – O(1/3 n3)● Householder et QR : ● Limites : Grand conditionnement -> solution peu précise

● Méthodes itératives : convergence vers une solution

– Jacobi : A à diagonale dominante stricte par ligne 

– Gauss-Seidel : A à diagonale dominante stricte par ligne et symétrique définie positive

– Gradient conjugué

Ne jamais résoudre avec 

l'inverse de la matrice A

Page 6: Retour sur le cours SVD - PCA - Institut Optique

66//2727

Rappel : optimisation

● Approcher des données par une fonction analytique fv(x)

– Donnée : ( xm=1..M, ym=1..M )

– v : paramètres de la fonction

– v  minimise une erreur : exemple

ou maximise un qualité

– Sous des contraintes

● Optimisation linéaire

– fv est une combinaison linéaire de fonctions

– L'erreur est quadratique et les contraintes sont linéaires

● Optimisation non-linéaire

– Tous les autres cas

minv∑m=1

M

wm‖ym−f v ( xm )‖

f v ( x )=∑k=1

K

vk f k ( x )

Page 7: Retour sur le cours SVD - PCA - Institut Optique

77//2727

Rappel : moindres carrés

● L'erreur est une norme euclidienne

– Un minimum atteint →

gradient de l'erreur est nul

– Ajout de contrainte par des multiplicateurs (ex : Lagrange)

● Optimisation linéaire

→ Résoudre une système linéaire sous contraintes linéaires

– Solution unique 

● Optimisation non-linéaire

– Solution unique seulement si l'erreur est convexe

● En général : minimum local– Processus itératifs convergeant vers un minimum

● Méthodes de descente de gradient● Levenberg-Marquard

E=∑m=1

M

wm‖ym−f v ( xm )‖2

2

∇v E=0

Page 8: Retour sur le cours SVD - PCA - Institut Optique

8

Valeurs propresSVDPCA

Page 9: Retour sur le cours SVD - PCA - Institut Optique

99//2727

Moindres carrés sous-constraint● Moins de mesures que de variables  

– Impossible théoriquement d'utiliser les moindres carrés

● Le système à résoudre a la forme ATAx = ATb● A a plus de colonnes que de lignes● ATA  est donc singulière

● Les mesures sont de mauvaises contraintes

– ATA  est presque singulière : mauvais conditionnement

– Ex : approcher avec la parabole y=ax2+bx+c

Page 10: Retour sur le cours SVD - PCA - Institut Optique

1010//2727

Décomposition singulière SVD

● Soit une matrice A de dimension MxN

– Il existe 2 matrices orthogonales U (MxM) et V (NxN) et une matrice diagonale  de dimension P= min(M,N) telle que

– Avec

● Les i sont les valeurs singulières

● Les colonnes de U et V sont les vecteurs singuliers de gauche et de droite 

A=U ΣVT⇔Σ=UT A V

Σ=[σ1 0 ⋯ 00 ⋱ ⋱ ⋮⋮ ⋱ ⋱ 00 ⋯ 0 σ P

] σ1≥σ2≥⋯≥σ P≥0

Page 11: Retour sur le cours SVD - PCA - Institut Optique

1111//2727

Interprétations

● Lien avec les valeurs propres

– Donc : 

● Les i2 sont les valeurs propres de ATA et AAT

● Les colonnes de V sont les vecteurs propres ● Approximation des données

– Demi-longueurs des axes de l’hyperellipse 

● Conditionnement 

ΣTΣ=(UT A V)

T UT A V=VT AT U UT A V=VT AT A V

x T AT A x−1=0

Κ(A)=σ1

σ pΚ(A)=

σmaxσmin

****

******

**

** ****

********

**

**

**

**** ******

**

****

Page 12: Retour sur le cours SVD - PCA - Institut Optique

1212//2727

Calcul de pseudo inverse

● On définie la matrice 

● Principes

– On annule les valeurs inverses trop grandes

– On laisse libre un certain nombre de paramètres

A+=VΣ+ UTΣ+=[

1σ1

0 ⋯ ⋯ ⋯ ⋯ 0

0 ⋱ ⋱ ⋮

⋮ ⋱1σ R

⋱ ⋮

⋮ ⋱ 0 ⋱ ⋮⋮ ⋱ ⋱ ⋱ ⋮0 ⋯ ⋯ ⋯ 0 0 0

]

Page 13: Retour sur le cours SVD - PCA - Institut Optique

1313//2727

Applications

● Avantage : méthode numérique stable

– Coût : 0(n3)

– Plus rapide si l'on ne cherche que , U et , ou  et V● Calcul du rang R

– En matlab

s=svd(X);

tol=max(size(X))*s(1)*eps;

rang=sum(s > tol);

● Approximation par une somme de matrice de rang K

σ1≥σ2≥⋯≥σ R>σ R+1=⋯=σ P=0 A=∑i=1

P

σiui viT

A K=∑i=1

K

σ iu i v iT

∥A−A K∥2=σK+1

Page 14: Retour sur le cours SVD - PCA - Institut Optique

1414//2727

Analyse en composantes principales (PCA)

● Une méthode de réduction de dimension des données

– Projection des données au sens des moindres carrés

– Capturer les principales variations

● Une première approximation

– Meilleur représentant au sens des moindres carrés

– Quelles sont le ou les directions principales ?

● Représenter les données par une ligne passant par la moyenne

E0=mina∑m=1

M

‖ym−a‖2

2

a=1M ∑

m=1

ym

ym=a+αm e

E1=minα 1,⋯,αM , e∑m=1

M

‖ym−a−αm e‖2

2

Page 15: Retour sur le cours SVD - PCA - Institut Optique

1515//2727

PCA – Intuitions (suite)

● Calculer les m par différentiation partielle

● Nouvelle erreur pour calculer la direction principale

– S matrice de covariance (scatter matrix)

● Minimisation sous contrainte

∂αm E1=0⇔αm=eT( ym−a )

E1=∑m=1

M

‖ym−a−αme‖2

2=∑m=1

M

αm2 −2∑

m=1

M

αmeT( ym−a )+∑

m=1

M

‖ ym−a‖2

=∑m=1

M

‖ ym−a‖2−2∑

m=1

M

eT ( ym−a )( ym−a )T e+∑

m=1

M

‖ym−a‖2

=−2eT Se+2∑m=1

M

‖ ym−a‖2

S=∑m=1

M

( ym−a )( ym−a )T

mineE1⇔maxe eT Se

∥e∥2=1

=−2∑m=1

M

eT( ym−a )( ym−a )T e+2∑

m=1

M

‖ym−a‖2

Page 16: Retour sur le cours SVD - PCA - Institut Optique

1616//2727

PCA – Intuitions (fin)

● Utilisation des multiplicateurs de Lagrange

● Par dérivation

– e est un vecteur propre de la matrice S

● Peut-être étendue à M directions principales

– Calcul d'une SVD

– Amplitude de variation=

valeur propre

– Direction de variation=

vecteur propre

E3=eT S e−λ(eT e−1 )

∇e E3=0⇔S e=λ e

Page 17: Retour sur le cours SVD - PCA - Institut Optique

17

Rappel - suite

Page 18: Retour sur le cours SVD - PCA - Institut Optique

1818//2727

Rappel – autre optimisation

● Programmation linéaire

– Minimiser une norme infinie

– Maximiser un objectif

● Programmation quadratique

– Norme euclidienne

– Contraintes linéaires d'inégalité

maxv dT v

subject to{cm

T v+em=bm ∀mvk≥0 ∀ kem≥0 ∀m

with {v=(v1 .. vk )

T

d=(d 1 .. d k )T

cm=(cm1 .. cmk )T

minv dT v

subject to cmT v≤bm

minv vT QT v+dT v

subject to {c jT v=b jcm

T v≤bm

Page 19: Retour sur le cours SVD - PCA - Institut Optique

1919//2727

Rappel - intégration numérique 1D

● Intervalles uniformes

● Méthode des rectangles

● Méthode des trapèzes

● Formule de Simpson

I n=b−an ∑

k=1

n

f (x k )

Convergence

O(n-1)

f

I n=b−a2n ∑k=1

n

(f ( x k−1 )+f (x k )) O(n-2)

I n=b−a6n ∑k=1

n

(f ( x k−1 )+4f (x k−1 /2)+f ( xk ))f

O(n-4)

Page 20: Retour sur le cours SVD - PCA - Institut Optique

2020//2727

I=∫−1

1f ( x ) d x≃∑

m=1

M

W m f (εm )

Poids Positions d'intégration

● Les poids et les positions maximisent la précision● M positions pour l'espace des polynômes de degré 2M-1● Le calcul des intégrales est exact sur cet espace

● Les positions sont les racines du polynôme de Legendre● Base de polynômes orthogonale sur [-1,1] 

Rappel - quadrature de Gauss en 1D

∀ p∈P2M−1 ,∫−1

1p (x )d x=∑

m=1

M

W mp(εm)

PM ( x)=1

2M M !dM

d xM( (x2−1 )

M )

Page 21: Retour sur le cours SVD - PCA - Institut Optique

2121//2727

Rappel – intégration de Monte Carlo 1D

● Estimateur

● Densité de probabilité

– Probabilité associée

– Propriété

● Convergence 

– Variance

– Écart-type

● Meilleur choix de pdf 

I n=1n∑i=1

n1

pdf ( x i )f ( x i )

pdf ( x )≥0

P [X i∈[ x , x+dx ] ]=pdf ( x )d x

∫−∞

pdf ( x ) d x=1

V [ I n ]=1n

V [ I 1 ]

σ [ I n ]=1

√ nσ [ I 1 ]

pdf (x )=1I

f (x )⇒V [In ]=0

Page 22: Retour sur le cours SVD - PCA - Institut Optique

2222//2727

Rappel – intégration Monte Carlo

● Biais

– Différence valeur attendue vs cherchée

– Estimateur sans biais

biais=E [ I n ]− I

biais=0

Page 23: Retour sur le cours SVD - PCA - Institut Optique

2323//2727

Rappel : convergence et dimension

● En 1D

– Convergence en O(n-(c+1))

– c = continuité de la fonction

● En dimension plus élevée d

– Pour n valeurs / mailles 

– Taille intervalle 1D n1/d

– Convergence en O(n-c/d)

– Monte Carlo en O(n-1/2)

Page 24: Retour sur le cours SVD - PCA - Institut Optique

2424//2727

Rappel : espace de fonctions

● Produit scalaire

– Norme

– Orthogonalité

● Matrice de Gram

– Det = 0 → pas une base

– Diagonale →  orthogonale

– Vecteurs propres avec valeurs propres non-nulles → base orthogonale.

● Partition de l'unité

– i fi = 1

● Exercice : base orthogonale 

– xn sur [a,b]

⟨ f ,g ⟩ [a , b ]=∫abf ( x )g ( x )d x

‖f‖[a , b]2

=∫a

bf 2( x )d x

⟨ f ,g ⟩ [a , b ]=0

M=[∣f 1∣

2⟨ f 1, f 2 ⟩ ⋯ ⟨ f 1, f K ⟩

⟨ f 2, f 1 ⟩ ∣f 2∣2

⋱ ⋮

⋮ ⋱ ⋱ ⟨ f K−1 , f K ⟩

⟨ f K , f 1 ⟩ ⋯ ⟨ f K , f K−1 ⟩ ∣f K∣2 ]

Page 25: Retour sur le cours SVD - PCA - Institut Optique

2525//2727

Rappel : bases de fonctions

● 1D – polynomiales 

– Tchebychev 1 : orthogonale sur [-1,1]

– Bernstein : orthogonale sur [0,1]

● 1D – polynomiales par morceaux

– Support compact

● Gram à diagonales– B-Splines de degré P

● 2D – sur un disque

– Zernike : orthonormale

● 2D – directions

– Harmonique sphérique : orthonormale

⟨ f ,g ⟩=∫−1

1 f ( x )g ( x )

√1−x2d x

Tn(cos(θ))=cos (nθ)

bk , N ( t )=(Nk ) tk(1−t )N−k avec k=0⋯N

B p , N ( t )= ∑i= p

p+N +1

[ ∏j= p , j≠ip+N+1

1t j−t i ] maxN (t−t i ,0)

Page 26: Retour sur le cours SVD - PCA - Institut Optique

2626//2727

Rappel – résolution EDP - EDO

● Différences finies : calculer des valeurs en des positions

– Approximation des dérivées d'ordre k

● Avant

● Arrière

● Centrée – Résolution d'un système linéaire

● Explicite : pour chaque itération k 

● Implicite : pour chaque itération k – En général : stable

∂ xnn u i=

1

Δ x n∑j≥i

u j+o (Δ xk)

∂ xnn u i=

1

Δ x n∑j≤i

u j+o (Δ xk)

∂xnn u i=

1

Δ x n∑j=−p

p

u i+ p+o(Δ xk )

f (u(k +1) ,u(k ) , ... ,u(0) )=0

u(k +1)−f (u(k ) ,... ,u(0 ))=0

Page 27: Retour sur le cours SVD - PCA - Institut Optique

2727//2727

Rappel – résolution EDP - EDO

● Éléments finies

– Coefficients dans un base de fonctions

● Étapes

1. Forme faible

2. Intégration par partie

3. Discrétisation

u ( x )≃∑k=1

K

vk bk (x )

∀ b ,∫ b res(u )=0

∀ bi ,∫ bi res(∑k=1

K

v k bk (x ))=0