Dans cette section, on montre que toute matrice possède une décomposition en valeurs singulières:
Théorème: [Existence d'une décomposition en valeurs singulières] Toute matrice \(A\) de taille \(m\times n\) peut s'écrire comme un produit, \[ A=U\Sigma V^T\,, \] où
Notre point de départ:
Lemme: Pour une matrice \(A\) de taille \(m\times n\) quelconque,
Exemple: Si \(A= \begin{pmatrix} -1&2\\ 2&0\\ 3&5 \end{pmatrix} \), alors \[ A^TA= \begin{pmatrix} -1&2&3\\ 2&0&5 \end{pmatrix} \begin{pmatrix} -1&2\\ 2&0\\ 3&5 \end{pmatrix} = \begin{pmatrix} 14&13\\ 13&29 \end{pmatrix}\,, \] et \[ AA^T= \begin{pmatrix} -1&2\\ 2&0\\ 3&5 \end{pmatrix} \begin{pmatrix} -1&2&3\\ 2&0&5 \end{pmatrix} = \begin{pmatrix} 5&-2&7\\ -2&4&6\\ 7&6&34 \end{pmatrix}\,. \]
Étant symétriques, le Théorème Spectral dans la Section (cliquer) garantit que \(A^TA\) et \(AA^T\) sont diagonalisables:
On sait que les éléments diagonaux de \(D\) (resp., \(D'\)) sont les valeurs propres de \(A^TA\) (resp., \(AA^T\)), avec éventuellement des répétitions selon les dimensions des espaces propres associés. Or ces valeurs propres ont des propriétés particulières:
Remarque:
On peut donner une preuve directe de la première partie du premier item du lemme précédent.
Pour le faire, supposons que \(\lambda\neq 0\)
est valeur propre de \(A^TA\). Alors il existe
\(\boldsymbol{v}\in \mathbb{R}^n\), non-nul, tel que
\[
(A^TA)\boldsymbol{v}=\lambda\boldsymbol{v}\,.
\]
Remarquons que \(A\boldsymbol{v}\neq \boldsymbol{0}\)
puisque \(A^TA\boldsymbol{v}\neq \boldsymbol{0}\).
Ensuite, en multipliant les deux côtés de l'identité de dessus
par \(A\), on obtient
\[
AA^T(A\boldsymbol{v})=\lambda(A\boldsymbol{v})\,,
\]
qui signifie que \(\lambda\) est aussi valeur propre de \(AA^T\), associée au
vecteur propre \(A\boldsymbol{v}\in\mathbb{R}^m\) (qui est non-nul comme on a dit).
Le même argument montre que toute valeur propre non-nulle de \(AA^T\) est
également valeur propre de \(A^TA\).
Les résultats ci-dessus impliquent:
On sait que \(A^TA\) est une matrice de taille \(n\times n\) et possède donc au maximum \(n\) valeurs propres non-nulles, et \(AA^T\) est une matrice de taille \(m\times m\) et possède donc au maximum \(m\) valeurs propres non-nulles. Comme ces matrices ont les mêmes valeurs propres non-nulles, le nombre de ces valeurs propres non-nulles est plus petit que \(n\) et que \(m\).
Considérons la diagonalisation de \(A^TA\):
\[
A^TA=VDV^T \,.
\]
En multipliant à gauche par \(V^T\) puis à droite par \(V\),
\[
V^T(A^TA)V=D\,.
\]
L'identité précédente nous dit que \(\mathrm{rang}(A^TA) = \mathrm{rang}(D)\).
En plus, par le lemme ci-dessus, toutes les valeurs propres de \(A^TA\), sur la diagonale
de \(D\), sont non négatives.
Sans perte de généralité, on peut supposer que la valeur propre nulle
(éventuellement répétée) apparaît en bas de la diagonale:
\[
D=\mathrm{diag}(\lambda_1,\lambda_2,\dots,\lambda_\ell,0,\dots,0)\,,
\]
avec \(\lambda_1\geqslant \dots \geqslant \lambda_\ell \gt 0\).
Comme \(\mathrm{rang}(D) = \ell\), on conclut que \(\ell = \mathrm{rang}(A^TA) = \mathrm{rang}(A)\).
Distinguons ensuite
la sous-matrice diagonale de \(D\) qui contient les valeurs propres strictement
positives, en écrivant:
\[
D=
\left[
\begin{array}{cc}
D_*&\mathbf{0}\\
\mathbf{0}&\mathbf{0}
\end{array}
\right]_{\square}\,,
\]
où \(D_*=\mathrm{diag}(\lambda_1,\dots,\lambda_\ell)\) est une matrice de taille \(\ell\times \ell\),
et les ''\(\mathbf{0}\)'' sont des matrices nulles.
À l'ordre fixé par les valeurs propres dans \(D\)
correspond un ordre des colonnes
dans la matrice de changement de base \(V\):
\[
V=
\left[
\begin{array}{cc}
V_1& V_2
\end{array}
\right]_{\square}\,,
\]
où
L'orthonormalité des colonnes de \(V\) implique que
\[
V_1^TV_1=I_\ell\,,\qquad
V_2^TV_2=I_{n-\ell}\,,
\]
mais la relation \(VV^T=I_n\) implique aussi que
\[
I_n=
VV^T=
\left[
\begin{array}{cc}
V_1& V_2
\end{array}
\right]_{\square}
\left[
\begin{array}{c}
V_1^T\\
V_2^T
\end{array}
\right]_{\square}
=V_1V_1^T+V_2V_2^T\,.
\]
Utilisons ces matrices \(V_1\) et \(V_2\) pour récrire la diagonalisation
\(A^TA=VDV^T\), qui est équivalente à \(V^T(A^TA)V=D\). Comme
\[\begin{aligned}
V^T(A^TA)V
&=
\left[
\begin{array}{c}
V_1^T\\
V_2^T
\end{array}
\right]_{\square}
A^TA
\left[
\begin{array}{cc}
V_1& V_2
\end{array}
\right]_{\square}\\
&=
\left[
\begin{array}{c}
V_1^T\\
V_2^T
\end{array}
\right]_{\square}
\left[
\begin{array}{cc}
A^TAV_1& A^TAV_2
\end{array}
\right]_{\square}\\
&=
\left[
\begin{array}{cc}
V_1^TA^TAV_1& V_1^TA^TAV_2 \\
V_2^TA^TAV_1& V_2^TA^TAV_2
\end{array}
\right]_{\square}\,,
\end{aligned}\]
et comme cette matrice est égale à
\[D=
\left[
\begin{array}{cc}
D_*&\mathbf{0}\\
\mathbf{0}&\mathbf{0}
\end{array}
\right]_{\square}\,,
\]
ceci implique que l'identité
\[
V_1^TA^TAV_1=D_*
\]
de matrices de taille \(\ell\times \ell\) et l'identité
\[
V_2^TA^TAV_2 = \mathbf{0}
\]
de matrices de taille \((n-\ell)\times (n-\ell)\).
De cette dernière, on tire que \((AV_2)^T(AV_2)=\mathbf{0}\), qui implique que
\[
AV_2=\mathbf{0}\,.
\]
(En effet, on sait que pour toute matrice \(M\), \(M^TM\) contient tous les
produits scalaires possibles entre les colonnes de \(M\), en particulier, sur sa
diagonale, les carrés des normes des colonnes. Si \(M^TM=\mathbf{0}\), cela implique que
la norme de chaque colonne de \(M\) est nulle, et donc que \(M\) est la matrice
nulle.
)
Définissons maintenant la matrice de taille \(m\times \ell\):
\[
U_1:= AV_1D_*^{-1/2}\,,
\]
où
\[
D_*^{-1/2}:=
\mathrm{diag}(1/\sqrt{\lambda_1},\dots,1/\sqrt{\lambda_\ell})
\]
est bien définie puisque \(\lambda_k\gt 0\) pour tout \(k=1,\dots,\ell\), et n'est
rien d'autre que l'inverse de
\[
D_*^{1/2}:=
\mathrm{diag}(\sqrt{\lambda_1},\dots,\sqrt{\lambda_\ell}).
\]
On remarque maintenant que les colonnes de \(U_1\) forment une famille
orthonormale, puisque
\[\begin{aligned}
U_1^TU_1
&=(AV_1D_*^{-1/2})^TAV_1D_*^{-1/2}\\
&=D_*^{-1/2}(V_1^TA^TAV_1)D_*^{-1/2}\\
&=D_*^{-1/2}D_*D_*^{-1/2}\\
&=I_\ell\,.
\end{aligned}\]
Montrons que \(U_1\), \(D_*\) et \(V_1\) fournissent
déjà une première factorisation de \(A\):

En effet,
\[\begin{aligned}
U_1D_*^{1/2}V_1^T
&=AV_1\underbrace{D_*^{-1/2}D_*^{1/2}}_{=I_\ell}V_1^T
\\
&=AV_1V_1^T
\\
&=A(I_n-V_2V_2^T)
\\
&=A-(\underbrace{AV_2}_{=\mathbf{0}})V_2^T
\\
&=A\,.
\end{aligned}\]
Cette première factorisation constitue la base de l'argument; il reste maintenant
à modifier le produit matriciel
\(U_1D_*^{1/2}V_1^T\), en augmentant les tailles des matrices,
de façon à ce qu'il devienne \(U\Sigma V^T\).
On rajoute d'abord à \(V_1^T\) le bloc \(V_2^T\), ce qui donne
\[ V^T=
\left[
\begin{array}{c}
V_1^T\\
V_2^T
\end{array}
\right]_{\square}\,.
\]
Passons à \(U\).
Si \(\ell=m\), alors on peut prendre \(U=U_1\).
Mais,
si \(\ell \lt m\), \(U_1\) n'est pas carrées: ses
colonnes forment une base orthonormée de
\(\mathrm{Col}(U_1)\subseteq \mathbb{R}^m\), mais pas de \(\mathbb{R}^m\), on peut donc compléter
cette base en une base de \(\mathbb{R}^m\), et même, via un procédé de
Gram-Schmidt si nécessaire,
la compléter en une base orthonormée de \(\mathbb{R}^n\).
Les \(m-\ell\)
vecteurs rajoutés peuvent être rangés dans une matrice \(U_2\) de taille
\(m\times(m-\ell)\) qui permet de définir la
matrice de taille \(m\times m\) orthogonale
\[ U:=
\left[
\begin{array}{cc}
U_1& U_2
\end{array}
\right]_{\square}\,.
\]
Finalement, la matrice \(\Sigma\) de taille \(m\times n\) est construite à partir de
la matrice \(D_*^{1/2}\) de taille \(\ell\times \ell\)) en rajoutant
des blocs nuls, si nécessaire (rappelons que \(\ell\leqslant \min\{m,n\}\)):
\[
\Sigma:=
\left[
\begin{array}{cc}
D_*^{1/2}&{\color{orange}\mathbf{0}}\\
{\color{purple}\mathbf{0}}&{\color{teal}\mathbf{0}}
\end{array}
\right]_{\square}\,.
\]
où
Remarquons que ceci peut a priori faire apparaître des valeurs singulières
nulles sur la diagonale de \(\Sigma\).
Montrons que l'on a ce qu'on voulait:

En effet,
\[\begin{aligned}
U\Sigma V^T
&=
\left[
\begin{array}{cc}
U_1& U_2
\end{array}
\right]_{\square}
\left[
\begin{array}{cc}
D_*^{1/2}&{\color{orange}\mathbf{0}}\\
{\color{purple}\mathbf{0}}&{\color{teal}\mathbf{0}}
\end{array}
\right]_{\square}
\left[
\begin{array}{c}
V_1^T\\
V_2^T
\end{array}
\right]_{\square}\\
&=
\left[
\begin{array}{cc}
U_1& U_2
\end{array}
\right]_{\square}
\left[
\begin{array}{cc}
D_*^{1/2}V_1^T\\
\mathbf{0}
\end{array}
\right]_{\square}\\
&=U_1D_*^{1/2}V_1^T\\
&=A\,.
\end{aligned}\]
Ceci termine la preuve de l'existence d'une décomposition en valeurs singulières.
Quelques remarques au vu de la preuve que l'on vient de donner:
Une conséquence de la preuve précédente est le résultat suivant: