Développement : Décomposition en valeurs singulières (SVD)

Détails/Enoncé :

Pour A une matrice m*n, on la décompose sous la forme A = UΣV*, avec :
U une matrice carrée m*m unitaire ; V une matrice carrée n*n unitaire ; Σ une matrice m*n rectangulairement diagonale (Σ_i,j = 0 si i différent de j).

Dans ce cas, la matrice pseudo-inverse de A, notée A+, est définie comme :
A+ = V(Σ+)U* , où Σ+ est la matrice Σ avec tous les coefficients non nuls remplacés par leurs inverses.

Application : Résolution de Ax = b lorsque le nombre de variables de x est inférieure à la quantité de contraintes, c'est à dire m < n.
Minimisation de ||Ax - b||_2.

Développement très difficile qu'il faut ABSOLUMENT tronquer pour faire passer en quinze minutes. Aucune référence sous la main pour l'instant

Versions :

  • Auteur :
  • Remarque :
    Je ne sais pas qui a mis ce développement sur agreg-maths mais en tous cas je suis triste qu'il n'ait ni références ni pdf, alors j'ai cherché et trouvé des références, et rédigé un pdf. Ce résultat est très joli (et pas forcément très dur ! C'est juste un théorème spectral appliqué à $A^*A$ !) et conviendra très bien aux habitué.e.s d'algèbre linéaire numérique. J'ai également rajouté le théorème d'Eckart-Young, qui dit la chose suivante : si $A \in \mathcal{M}_{m,n}(\mathbb{K})$ a pour SVD $U\Sigma V^*$, alors en notant, pour $k \in[\![1,\mathrm{rg}(A)]\!]$, $A_k := U\Sigma_k V^*$, où $\Sigma_k$ correspond à la matrice $\Sigma$, où on a remplacé les valeurs singulières $\sigma_{k+1},\ldots,\sigma_{\mathrm{rg(A)}}$ par $0$, alors $A_k$ vérifie :
    \[
    \vert\!\vert\!\vert A - A_k \vert\!\vert\!\vert_2 = \min_{\substack{B \in \mathcal{M}_{m,n}(\mathbb{K}) \\ \mathrm{rg}(B) = k}}\vert\!\vert\!\vert A - B \vert\!\vert\!\vert_2,
    \]
    où $\vert\!\vert\!\vert \cdot \vert\!\vert\!\vert_2$ désigne la norme subordonnée aux normes euclidiennes au départ et à l'arrivée.
    Ce résultat est (était ?) très utilisé pour la compression de données ! Garder les plus grandes valeurs principales revient à garder les "directions de plus grandes tendances" dans la matrice : on enlève de l'information que l'on peut juger superflue.
  • Références :
  • Fichier :

Références utilisées dans les versions de ce développement :

Algèbre linéaire numérique., Allaire, Grégoire & Kaber, Sidi Mahmoud (utilisée dans 8 versions au total)
Analyse numérique matricielle appliquée à l'art de l'ingénieur, tome 1 : Méthodes directes, Patrick Lascaux, Raymond Théodor (utilisée dans 2 versions au total)