Vous êtes sur la page 1sur 14

Semaine 1

I Espaces vectoriels réels


Fondamentaux d’algèbre I Applications linéaires
linéaire I Matrices

Réductions de matrices
Objectif d’une réduction
Cas symétrique
Semaine 2
Cas général : SVD I Produit scalaire, projections, interprétations géométriques
SVD : Exemple d’application
I Réductions de matrices

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 1/14
Réduction de matrices
Principe : Matrice quelconque → produit de matrices simples,
ex : matrices orthogonales, dilatations . . .
Applications
I Inversion de matrice, résolution de système linéaire, solution
Fondamentaux d’algèbre
linéaire moindres carrés.
I Analyse en composantes principales (ACP) : directions de
 plus grande variance  d’un jeu de données.
Réductions de matrices
Objectif d’une réduction
Cas symétrique
Cas général : SVD
SVD : Exemple d’application

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 2/14
Matrice diagonale, vecteurs propres, valeurs
propres
I Une matrice carrée D est diagonale si tous ses coefficients
sont nuls sauf les coefficients diagonaux
 
σ1 0
Fondamentaux d’algèbre D=
 ..  ⇔ f (ui ) = σi ui pour f ↔U M.

.
linéaire
0 σn
Réductions de matrices I On dit que ui est vecteur propre de f associé à la valeur
Objectif d’une réduction
propre σi
Cas symétrique
Cas général : SVD
SVD : Exemple d’application

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 3/14
Matrice/ application diagonalisable
I f : Rn → Rn est diagonalisable si ∃ U : f (ui ) = σi ui
I M est diagonalisable si f ↔e M l’est.
⇔ ∃P, matrice de passage, telle que

D = P −1 MP diagonale.
Fondamentaux d’algèbre
linéaire I Colonnes de P : vecteurs propres de M et f .

Réductions de matrices M (ou f ) est diagonalisable s’il existe une base de vecteurs
Objectif d’une réduction propres pour M (ou f ).
Cas symétrique
Cas général : SVD
SVD : Exemple d’application

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 4/14
Diagonalisation des matrices symétriques

I Une matrice (carrée) M est symétrique si M > = M.

Théorème
Toute matrice symétrique réelle est diagonalisable en base
Fondamentaux d’algèbre
linéaire orthornormée
I  en base orthornormée  : avec une matrice de passage
Réductions de matrices orthogonale.
Objectif d’une réduction
Cas symétrique
I Autrement dit, si M est symétrique et [f ] = M, il existe une
Cas général : SVD base orthonormée U, telle que [f ]uu soit diagonale.
SVD : Exemple d’application
I ou encore : si M est symétrique, il existe une matrice
orthogonale P et une matrice diagonale D telles que

M = PDP > .

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 5/14
Décomposition en valeurs singulières (SVD)

I But : avoir un résultat similaire pour une matrice M ni


symétrique, ni carrée.
I Principe : Ecrire la matrice comme le produit de
Fondamentaux d’algèbre I Une matrice orthogonale
linéaire I Une matrice  diagonale 
I Une deuxième matrice orthogonale.
Réductions de matrices
Objectif d’une réduction
Cas symétrique
Cas général : SVD
SVD : Exemple d’application

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 6/14
Soit M ∈ Rn×p . On peut trouver
SVD : existence
I U ∈ Rn×n et V ∈ Rp×p , orthogonales (UU T = 0, VV T = 0)
I une matrice ‘diagonale’ Σ ∈ Rn×p de coefficients diagonaux
positifs ou nuls,
telles que
Fondamentaux d’algèbre M = UΣV >
linéaire
Cette décomposition est la SVD de M.
Réductions de matrices remarques :
Objectif d’une réduction
I matrice Σ ‘diagonale’ :
Cas symétrique
0
 
Cas général : SVD σ1
0
 
SVD : Exemple d’application σ1
 .. 
 . 

0
 
 .. 
Σ=
 .
 ou Σ = 
 
 0 σp



0 σn
 

0
 

I U et V ne sont pas uniques, mais les valeurs propres σi le


sont (à l’ordre près)
Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 7/14
SVD en pratique : avec Python
import numpy as np
from numpy import linalg
M = np.matrix([[1,2,3],[4,5,6]])
U, s, W =linalg.svd(M)

Fondamentaux d’algèbre Complexité : O(p n2 ) opérations, si p ≥ n.


linéaire
I s est une array unidimensionelle (la diagonale de Σ).
Réductions de matrices I W correspond à V > dans nos notations : on a
Objectif d’une réduction
Cas symétrique M = UΣW
Cas général : SVD
SVD : Exemple d’application
I pour reconstruire M
S=np.zeros( (2,3),dtype=’float’)
S[:2 , :2] = np.diag(s)
S=np.matrix(S)
M_recons= U * S * W

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 8/14
SVD : interprétation  application linéaire 
I Soit f linéaire, f ∼(e)p ,(e)n M.
I Existence de la SVD ⇔ existence de U, V, orthonormales,
telles que
f ∼U ,V Σ.
Fondamentaux d’algèbre
linéaire U : colonnes de U ; V : colonnes de V ;
Vecteurs, valeurs singulières
Réductions de matrices
Objectif d’une réduction f (vi ) = σi ui , i ≤ min(n, p)
Cas symétrique
Cas général : SVD ui : vecteurs singuliers à gauche,
SVD : Exemple d’application
vi : vecteurs singuliers à gauche,
σi : valeurs singulières.

I si p > n, f (vi ) = 0 pour i > n ;


I Im f ⊂ Vect(u1 , . . . , up ).

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 9/14
SVD : interpretation  matrices 

M = UΣV > ⇔ MV = ΣU
⇔ MVi = σi Ui , i ≤ min(n, p)
(Vi , Ui : colonnes de V et U. )
Fondamentaux d’algèbre
linéaire I Vi  vecteurs singuliers à droite de M
I Ui  vecteurs singuliers à gauche de M
Réductions de matrices I σi : valeurs singulières.
Objectif d’une réduction
Cas symétrique
v1>
 
Cas général : SVD
SVD : Exemple d’application  
0  
σ1 



..
0 ..
 
 u1 . . . un  
M=
 
.
  .

 
0 σn 



vp>

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 10/14
Application : solution de moindres carrés

Problème de stat : trouver X ∗ = arg minX ∈Rp kMX − Y k2 .


I Supposons M ∈ Rn×p , n < p.
Fondamentaux d’algèbre
linéaire I X ∗ vérifie

M > MX ∗ = M > Y cf :cours de stat


Réductions de matrices
Objectif d’une réduction
Cas symétrique
Solution si M > M non inversible ? (rang r ≤ n)
Cas général : SVD
SVD : Exemple d’application
Ne pas calculer directement M > M puis inverser (NaN) :
utiliser la SVD de M !

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 11/14
Solution : pseudo-inverse et SVD
déf : pseudo-inverse de M : La matrice M † telle que, ∀ Y ,

le vecteur X̂ = M † Y soit

I solution de minX kMX − Y k2


Fondamentaux d’algèbre I de plus faible norme euclidienne parmi les solutions.
linéaire
Existence, unicité : admis.
Réductions de matrices
Objectif d’une réduction M † se calcule avec la SVD : M † = V Σ† U >
Cas symétrique
Cas général : SVD
SVD : Exemple d’application
où
σ1−1
 
 .. 
 . 

 
Σ =


σr−1 0 


 0 

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 12/14
Moindres carrés : conclusion

Solution choisie : X ∗ = V Σ† U Y (= X̂ )
Fondamentaux d’algèbre
linéaire
I Existe même si M > M non inversible !
Réductions de matrices
Objectif d’une réduction
Cas symétrique
I Stable si M > M inversible mais avec très petites valeurs
Cas général : SVD propres (colonnes ’presque’ colinéaires).
Coût numérique : la décomposition U, Σ, V > .
SVD : Exemple d’application
I

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 13/14
Conclusion du cours

Après ce cours - et du travail personnel, vous devriez pouvoir


Fondamentaux d’algèbre aborder sereinement :
linéaire
I les statistiques dans le modèle linéaire
Réductions de matrices I Les techniques de classifications basées sur la séparation par
Objectif d’une réduction des hyper-plans (perceptron, SVM)
Cas symétrique
Cas général : SVD
I la réduction de dimension (PCA)
SVD : Exemple d’application

Anne Sabourin
Fondamentaux pour le Big Data
c Télécom ParisTech 14/14