L'essentiel à connaître
Toute matrice réelle $A$ de taille $m \times n$ s'écrit $A = U\Sigma V^T$, et ses valeurs singulières sont les racines carrées des valeurs propres de $A^TA$ (cours 18.06SC du MIT). Exemple : pour $A = \begin{pmatrix} 3 & 0 \\ 4 & 5 \end{pmatrix}$, la matrice $A^TA = \begin{pmatrix} 25 & 20 \\ 20 & 25 \end{pmatrix}$ a pour valeurs propres $45$ et $5$, donc $\sigma_1 = 3\sqrt{5}$ et $\sigma_2 = \sqrt{5}$. La transposée $A^T$ se note aussi ${}^tA$ dans beaucoup de cours.
Définition : Dans une décomposition en valeurs singulières (SVD, sigle anglais) $A = U\Sigma V^T$, les matrices $U$ ($m \times m$) et $V$ ($n \times n$) sont orthogonales ($U^TU = I_m$ et $V^TV = I_n$), et $\Sigma$ ($m \times n$) porte $\sigma_1 \geq \sigma_2 \geq \dots \geq \sigma_p \geq 0$ sur sa diagonale, avec $p = \min(m,n)$, et des zéros ailleurs.
Pour la calculer, prends pour colonnes $v_i$ de $V$ une base orthonormée de vecteurs propres de $A^TA$, dans l'ordre des $\sigma_i$. Pose ensuite $u_i = Av_i/\sigma_i$ pour chaque $\sigma_i > 0$, et complète $U$ en base orthonormée. $\Sigma$ est unique, mais pas $U$ ni $V$ : changer $v_i$ en $-v_i$ change $u_i$ en $-u_i$.
$A^TA$ et $AA^T$ ont les mêmes valeurs propres non nulles : seul le nombre de zéros change. Si $A$ est symétrique, de valeurs propres $\lambda_i$, ses valeurs singulières sont les $|\lambda_i|$ ; sinon, ses valeurs propres ne les donnent pas en général.
Formule : si $\sigma_1, \dots, \sigma_r$ sont les valeurs singulières non nulles :
$\operatorname{rg}(A) = r$ et $A = \sum_{i=1}^{r} \sigma_i u_i v_i^T$, somme de $r$ matrices de rang $1$ ;
$\|A\|_2 = \sigma_1$, le plus grand $\|Ax\|$ pour $\|x\| = 1$, et $\|A\|_F = \sqrt{\sigma_1^2 + \dots + \sigma_r^2}$, racine de la somme des carrés des coefficients (norme de Frobenius) ;
pour $A$ carrée $n \times n$ : $|\det A| = \sigma_1 \sigma_2 \cdots \sigma_n$ et, si $A$ est inversible, son conditionnement (la sensibilité de $Ax = b$ aux erreurs) vaut $\kappa_2(A) = \|A\|_2\,\|A^{-1}\|_2 = \sigma_1/\sigma_n$ ;
pseudo-inverse : $A^+ = V\Sigma^+U^T$, où $\Sigma^+$ ($n \times m$) porte $1/\sigma_1, \dots, 1/\sigma_r$ sur sa diagonale et des zéros ailleurs ; si $A$ est inversible, $A^+ = A^{-1}$.
Garder les $k$ premiers termes de la somme donne $A_k = \sum_{i=1}^{k} \sigma_i u_i v_i^T$, la matrice de rang au plus $k$ la plus proche de $A$, en norme $2$ comme en norme de Frobenius (théorème d'Eckart-Young, leçon 7 du cours 18.065 du MIT).
À retenir : l'erreur de troncature se lit sur les valeurs singulières jetées : $\|A - A_k\|_2 = \sigma_{k+1}$, mais $\|A - A_k\|_F = \sqrt{\sigma_{k+1}^2 + \dots + \sigma_r^2}$.
Quiz : teste tes connaissances
Les questions montent en difficulté, et les trois dernières sont les plus piégeuses.
Question 1 : $A$ est une matrice $5 \times 3$. Dans sa SVD complète, quelles sont les tailles de $U$, $\Sigma$ et $V$ ?
Réponse : C. $U$ est $m \times m$ (ici $5 \times 5$), $V$ est $n \times n$ (ici $3 \times 3$), et $\Sigma$ a la taille de $A$. Le piège B prend le $\Sigma$ carré de la SVD réduite : avec $U$ en $5 \times 5$, le produit $U\Sigma$ n'est pas défini.
Question 2 : Les valeurs singulières de $A$ sont :
Réponse : A. $A^TA$ est symétrique, de valeurs propres positives ou nulles car $x^TA^TAx = \|Ax\|^2$. Le piège C ne vaut que si $A$ est symétrique.
Question 3 : Quelles sont les valeurs singulières de $A = \begin{pmatrix} 3 & 0 \\ 0 & -2 \end{pmatrix}$ ?
Réponse : D. $A^TA$ est diagonale de coefficients $9$ et $4$, d'où $\sigma_1 = 3$ et $\sigma_2 = 2$. Le piège A garde le signe, or une valeur singulière n'est jamais négative : le signe passe dans $U$, car $A = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix} \begin{pmatrix} 3 & 0 \\ 0 & 2 \end{pmatrix} I_2$.
Question 4 : $A$, de taille $3 \times 3$, a pour valeurs singulières $5$, $1$ et $0$. Que peux-tu en dire ?
Réponse : B. Le rang compte les valeurs singulières non nulles : deux. Et $|\det A| = 5 \times 1 \times 0 = 0$. Le piège C oublie le zéro dans le produit : un seul $\sigma_i$ nul rend $A$ non inversible.
Question 5 : $A$ est symétrique, de valeurs propres $5$, $-3$ et $1$. Quelles sont ses valeurs singulières ?
Réponse : D. $A$ étant symétrique, $A^TA = A^2$ a pour valeurs propres $25$, $9$ et $1$, d'où $5$, $3$ et $1$. Le piège C prend la racine des $|\lambda_i|$ au lieu de celle des valeurs propres de $A^TA$.
Question 6 : $A$ a pour valeurs singulières $4$, $3$ et $0$. Que valent $\|A\|_2$ et $\|A\|_F$ ?
Réponse : A. $\|A\|_2 = \sigma_1 = 4$, et $\|A\|_F = \sqrt{4^2 + 3^2} = 5$ car multiplier par une matrice orthogonale ne change pas cette norme. Le piège C additionne les valeurs singulières au lieu de leurs carrés.
Question 7 : $r$ étant le rang de $A$, quelle écriture est juste ?
Réponse : C. Développé colonne par ligne, $U\Sigma V^T$ est la somme des $\sigma_i u_i v_i^T$, matrices $m \times n$ de rang $1$. Le piège B écrit $u_i^Tv_i$ : c'est un nombre, et il n'est même pas défini si $m \neq n$.
Question 8 : Les $\sigma_i$ étant rangés dans l'ordre décroissant, quelles matrices sont uniques dans $A = U\Sigma V^T$ ?
Réponse : B. Les $\sigma_i$ sont fixés par les valeurs propres de $A^TA$. Mais changer $u_i$ et $v_i$ en $-u_i$ et $-v_i$ ne change pas $\sigma_i u_i v_i^T$, donc pas $A$ : le piège A oublie ces changements de signe.
Question 9 : $A$ est carrée inversible, de valeurs singulières $100$, $2$ et $0{,}5$. Que vaut $\kappa_2(A) = \|A\|_2\,\|A^{-1}\|_2$ ?
Réponse : A. $\|A\|_2 = 100$, et $A^{-1} = V\Sigma^{-1}U^T$ a pour plus grande valeur singulière $1/0{,}5 = 2$ : $\kappa_2(A) = 100 \times 2 = 200$. Le piège B divise par $\sigma_2$ ; c'est la plus petite valeur singulière qui compte.
Question 10 : $A = U\Sigma V^T$ est $m \times n$. Quelle formule donne sa pseudo-inverse $A^+$ ?
Réponse : B. Si $A$ est inversible, $(U\Sigma V^T)^{-1} = V\Sigma^{-1}U^T$ : on renverse l'ordre, et l'inverse d'une matrice orthogonale est sa transposée. Le piège C a la bonne taille, $n \times m$, mais ses transpositions sont à l'envers.
Question 11 : $A$ est de taille $2 \times 3$ et de rang $2$. Laquelle de ces affirmations est juste ?
Réponse : D. $A^TA$ ($3 \times 3$) et $AA^T$ ($2 \times 2$) partagent les valeurs propres non nulles $\sigma_1^2$ et $\sigma_2^2$. $AA^T$ n'a que celles-là, donc elle est inversible ; $A^TA$ en a une troisième, nulle. Le piège A oublie ce zéro.
Question 12 : Quelles sont les valeurs singulières de $A = \begin{pmatrix} 1 & 2 \\ 0 & 1 \end{pmatrix}$ ?
Réponse : C. $A^TA = \begin{pmatrix} 1 & 2 \\ 2 & 5 \end{pmatrix}$ a pour trace $6$ et pour déterminant $1$, donc pour valeurs propres $3 \pm 2\sqrt{2} = (\sqrt{2} \pm 1)^2$. Contrôle : $(\sqrt{2} + 1)(\sqrt{2} - 1) = 1 = |\det A|$. Le piège A lit la diagonale, donc les valeurs propres de $A$ ; mais $A$ n'est pas symétrique.
Question 13 : $A$ a pour valeurs singulières $10$, $4$ et $3$, et $A_1 = \sigma_1 u_1 v_1^T$. Que vaut $\|A - A_1\|_F$ ?
Réponse : A. $A - A_1 = 4\,u_2v_2^T + 3\,u_3v_3^T$ a pour valeurs singulières $4$ et $3$, donc $\|A - A_1\|_F = \sqrt{16 + 9} = 5$. Le piège C applique la règle de la norme $2$, où l'erreur vaut bien $\sigma_2 = 4$ ; en norme de Frobenius, toutes les valeurs jetées comptent.
Question 14 : Tu as $V$ (vecteurs propres orthonormés de $A^TA$) et les $\sigma_i > 0$. Comment obtenir chaque colonne $u_i$ pour que $A = U\Sigma V^T$ soit juste ?
Réponse : D. De $AV = U\Sigma$, on tire $Av_i = \sigma_i u_i$, et ce $u_i$ est unitaire car $\|Av_i\|^2 = v_i^TA^TAv_i = \sigma_i^2$. Le piège A choisit $u_i$ sans regarder $v_i$ : si tu tombes sur $-u_i$, $U\Sigma V^T$ ne redonne plus $A$.
Sources
MIT OpenCourseWare, cours 18.06SC Linear Algebra, séance « Singular Value Decomposition » : définition et lien avec les valeurs propres de $A^TA$.
MIT OpenCourseWare, cours 18.065, leçon 7 sur le théorème d'Eckart-Young : meilleure approximation de rang $k$.