La décomposton en valeurs sngulères: un outl fort utle Références utles: 1- Sonka et al.: sectons 3.2.9 et 3.2.1 2- Notes manuscrtes du cours 3- Press et al: Numercal recpes * Dernère révson: Patrck Hébert septembre 28 *Ce document a auss été nspré d un extrat du cours cos323 par S. Rusnkewcz à Prnceton
Introducton SVD: Sngular Value Decomposton Résoluton d une gamme de problèmes comme par exemple des mondres carrés ben ou mal condtonnés ou des problèmes sous-contrants et ben d autres dautres SVD sera un outl ndspensable Les justfcatons mathématques sont rches mas nous le présenterons dans l optque d utlsaton pour des classes de problèmes cblées.
Condtonnement Exemple: ajuster une courbe y=ax 2 +bx+c sur des ponts Normalement 3 ponts suffsent pour ben défnr la parabole Attenton: dans un problème mal condtonné, la smple erreur numérque peut fare déraper la soluton
La décomposton SVD: une soluton ntéressante! Sot A, une matrce m n, la décomposton SVD est un algorthme de factorsaton t qu permet d exprmer A comme le produt de tros matrces partculères, U, V, et W telles que: A = UWV T U est une matrce m m, m, orthonormale W est une matrce m n, dagonale postve V T est une matrce n n orthonormale
Décomposton d une matrce T 1 w = V U A w n O En Matlab: En Matlab: [U,W,V]=svd(A) [U,W,V]=svd(A)
Remarques Les w sont les valeurs sngulères de A S la matrce A est sngulère, l y a des w nulles En général rang(a) = au nombre de w non nulles L ensemble des w est unque, ms à part l ordre des w ou s l y a égalté parm des w
Utlté mportante #1: trater les nverses A -1 =(V T ) -1 W -1 U -1 = VW -1 U T Pusque l nverse d une matrce orthonormale est sa transposée Pusque W est dagonale, W -1 est auss dagonale avec les nverses multplcatfs des w
Sute A -1 =(V T ) -1 W -1 U -1 = VW -1 U T Ce n est pas vra quand des w = La matrce est sngulère Pseudonverse: s w =, on fxe 1/w = C est la matrce la plus près de l nverse selon la norme de Frobenus Exste pour toutes les matrces, même sngulères ou rectangulares Égale à (A T A) ) -1 A T s A T A est nversble
Utlté mportante #2: les mondres carrés Système Ax=b à résoudre par mondres carrés x=pseudonverse(a) b Calculer la pseudonverse en utlsant SVD On vérfe s A est sngulère Même s A n est pas sngulère, on vérfe le rato de la valeur sngulère max sur la valeur mn (condton number). C est une ndcaton de la stablté du système Fxer 1/w = s w est pett
Varaton sur les mondres carrés: syst. homogènes S tè A à é d d é Système Ax= à résoudre par mondres carrés On a vu que la soluton correspond au vecteur propre de A T A assocé à la plus pette valeur propre. Sot A=UWV T, et sot x la ème colonne de V Consdérons A T A x : x w w x x x 2 2 2 T 2 T T T T 1 = = = = = M M M M V VW VW V UWV VW U A A DONC: Les éléments de W sont sqrt(valeurs propres) et M M DONC: Les éléments de W sont sqrt(valeurs propres) et les colonnes de V sont les vecteurs propres de A T A
Utlté mportante #3: comparason de matrces La norme de Frobenus est couramment utlsée comme norme d une matrce A F = a 2 j La norme de Frobenus peut être calculée au moyen de SVD A F = j w 2 Des varatons sur une matrce peuvent donc être observées comme des varatons sur les valeurs sngulères.
Utlté mportante #4: approxmaton de matrces On cherche la melleure matrce A approxmante de rang k pour A Soluton: On ne conserve que les k plus grandes valeurs sngulères et on fxe les autres à. On peut élmner les colonnes de U et V qu correspondent aux valeurs nulles de w Enfn on reconstrut A à partr de U W V UWV T
SVD et ACP (PCA) Analyse en Composantes Prncpales (Prncpal Components Analyss: PCA): dée: estmer un ensemble de données de grandes dmensons par un sous-espace Comment? Les vecteurs propres de la matrce de covarance des données consttuent une base lorsque normalsés. S les vecteurs sont ordonnés selon les valeurs propres, alors on peut sélectonner un sous-ensemble. (schéma au tableau)
SVD et ACP Construre la matrce A où chaque lgne est un pont de donnée à m dmensons. Soustrare la lgne moyenne de chaque lgne Calculer SVD(A) Les colonnes de V sont les composantes prncpales Les w ndquent l mportance de chacune des composantes (vecteurs de base)
Reconnassance de vsages: méthode des Egenfaces Vsage moyen Premère composante prncpale Autres composantes Sauf pour le vsage moyen, grs =, blanc >, nor <
Reconnassance Sauvegarder chaque vsage sous la forme d un ensemble de coeffcents (projecton des n prncpales composantes -> {a }) mage = max = a Egenface Calculer la projecton de l mage à reconnaître, comparer à la base de données (le vecteur le plus près)
Remarque De nombreux artcles ont été publés sur cette approche des egenfaces Cette approche a auss été étendue pour trater te des varatons at d éclarage et de pont de vue du vsage M. Vaslescu et D. Terzopoulos, CVPR 25 et 3DIM 27