La décomposition \(QR\) est une méthode qui permet de factoriser une
matrice, c'est-à-dire
de l'écrire comme un produit de deux autres matrices particulières (un peu comme
une matrice carrée inversible peut être factorisée en un produit de matrices
élémentaires).
On le verra, pouvoir écrire une matrice comme un produit de matrices plus
simples possèdera de nombreux avantages.
Soit \(A\) une matrice \(m\times n\), que l'on écrit à l'aide de ses colonnes:
\[
A=[\boldsymbol{a}_1\cdots \boldsymbol{a}_n]\,,
\]
où chaque \(\boldsymbol{a}_j\in \mathbb{R}^m\).
Si les colonnes de \(A\) sont linéairement indépendantes, elles forment une
base de \(\mathrm{Im} (A)\). Cette base n'est a priori pas orthogonale, on peut donc
lui appliquer le procédé de Gram-Schmidt:
\[\begin{aligned}
\boldsymbol{v}_1&:= \boldsymbol{a}_1\,,\\
\boldsymbol{v}_2&:=
\boldsymbol{a}_2-\frac{\boldsymbol{a}_2\cdotp\boldsymbol{v}_1}{\|\boldsymbol{v}_1\|^2}\boldsymbol{v}_1\\
\boldsymbol{v}_3&:= \boldsymbol{a}_3-\sum_{i=1}^2
\frac{\boldsymbol{a}_3\cdotp\boldsymbol{v}_i}{\|\boldsymbol{v}_i\|^2}\boldsymbol{v}_i\,,\\
\vdots&\\
\boldsymbol{v}_n&:=
\boldsymbol{a}_n-\sum_{i=1}^{n-1}
\frac{\boldsymbol{a}_n\cdotp\boldsymbol{v}_i}{\|\boldsymbol{v}_i\|^2}\boldsymbol{v}_i\,,\\
\end{aligned}\]
Normalisons chacun des \(\boldsymbol{v}_j\), en définissant
\[
\boldsymbol{u}_1:= \frac{\boldsymbol{v}_1}{\|\boldsymbol{v}_1\|}\,,\quad\dots
\quad,\,
\boldsymbol{u}_k:= \frac{\boldsymbol{v}_k}{\|\boldsymbol{v}_k\|}\,.
\]
Les \(n\) relations ci-dessus permettent maintenant d'écrire
\[\begin{aligned}
\boldsymbol{a}_1&=\|\boldsymbol{v}_1\| \boldsymbol{u}_1\,,\\
\boldsymbol{a}_2&=(\boldsymbol{a}_2\cdotp\boldsymbol{u}_1)\boldsymbol{u}_1+
\|\boldsymbol{v}_2\|\boldsymbol{u}_2\\
\boldsymbol{a}_3&=\left(\sum_{i=1}^2
(\boldsymbol{a}_3\cdotp\boldsymbol{u}_i)\boldsymbol{u}_i\right)+\|\boldsymbol{v}_3\| \boldsymbol{u}_3\,,\\
\vdots&\\
\boldsymbol{a}_n&=
\left(\sum_{i=1}^{n-1}
(\boldsymbol{a}_n\cdotp\boldsymbol{u}_i)\boldsymbol{u}_i\right)+\|\boldsymbol{v}_n\|\boldsymbol{u}_n\,,\\
\end{aligned}\]
Cette décomposition des colonnes de \(A\) en combinaisons linéaires des
vecteurs \(\boldsymbol{u}_1,\dots,\boldsymbol{u}_n\) peut s'exprimer à l'aide de deux
matrices.
Par définition, \(QR=A\). Pour le voir explicitement, on peut écrire \[ R=[\boldsymbol{r}_1\cdots \boldsymbol{r}_n]\,, \] où \[\begin{aligned} \boldsymbol{r}_1&=\|\boldsymbol{v}_1\|\boldsymbol{e}_1\\ \boldsymbol{r}_2&=(\boldsymbol{a}_1\cdotp\boldsymbol{u}_1)\boldsymbol{e}_1+\|\boldsymbol{v}_2\|\boldsymbol{e}_2\\ \vdots&\\ \boldsymbol{r}_n&=\left(\sum_{i=1}^{n-1}(\boldsymbol{a}_i\cdotp \boldsymbol{u}_i)\boldsymbol{e}_i\right) +\|\boldsymbol{v}_n\|\boldsymbol{e}_n\,. \end{aligned}\] Ainsi, la \(k\)-ème colonne de \(QR=[Q\boldsymbol{r}_1\cdots Q\boldsymbol{r}_n]\) est donnée par \[\begin{aligned} Q\boldsymbol{r}_k &=Q \left( \sum_{i=1}^{k-1}(\boldsymbol{a}_i\cdotp \boldsymbol{u}_i)\boldsymbol{e}_i +\|\boldsymbol{v}_k\|\boldsymbol{e}_k \right)\\ &= \sum_{i=1}^{k-1}(\boldsymbol{a}_i\cdotp \boldsymbol{u}_i)(Q\boldsymbol{e}_i) +\|\boldsymbol{v}_k\|Q\boldsymbol{e}_k\\ &= \sum_{i=1}^{k-1}(\boldsymbol{a}_i\cdotp \boldsymbol{u}_i)\boldsymbol{u}_i +\|\boldsymbol{v}_k\|\boldsymbol{u}_k\\ &=\boldsymbol{a}_k\,. \end{aligned}\] On a donc démontré:
Théorème: Soit \(A\) une matrice \(m\times n\) de rang \(\mathrm{rang}(A)=n\). Alors il existe
Donc la factorisation \(QR\) d'une matrice \(A\) dont les colonnes sont linéairement indépendantes peut s'obtenir comme suit:
Exemple: Calculons une factorisation \(QR\) de \[ A= \begin{pmatrix} 1&1\\ 1&2\\ 0&2 \end{pmatrix}\,. \] Ici, \(A=[\boldsymbol{a}_1\,\boldsymbol{a}_2]\), où \(\boldsymbol{a}_1\) et \(\boldsymbol{a}_2\) sont indépendants, donc le théorème s'applique. Le procédé de Gram-Schmidt donne \[ \boldsymbol{v}_1:= \boldsymbol{a}_1= \begin{pmatrix} 1\\ 1\\ 0 \end{pmatrix}\,,\qquad \boldsymbol{v}_2:= \boldsymbol{a}_2-\frac{\boldsymbol{a}_2\cdotp\boldsymbol{a}_1}{\|\boldsymbol{a}_1\|^2}\boldsymbol{a}_1= \begin{pmatrix} -1/2\\ 1/2\\ 2 \end{pmatrix}\,. \] On a donc, après normalisation, \[ Q= \begin{pmatrix} \sqrt{2}/2&-\sqrt{2}/6\\ \sqrt{2}/2&\sqrt{2}/6\\ 0&2\sqrt{2}/3 \end{pmatrix} \] Ensuite, \[\begin{aligned} R=Q^TA &= \begin{pmatrix} \sqrt{2}/2&\sqrt{2}/2&0\\ -\sqrt{2}/6&\sqrt{2}/6&2\sqrt{2}/3 \end{pmatrix} \begin{pmatrix} 1&1\\ 1&2\\ 0&2 \end{pmatrix}\\ &= \begin{pmatrix} \sqrt{2}&3\sqrt{2}/2\\ 0&3\sqrt{2}/2 \end{pmatrix} \end{aligned}\] Remarquons que cette dernière est bien \[ R= \begin{pmatrix} \|\boldsymbol{v}_1\|&\boldsymbol{a}_2\cdotp \boldsymbol{u}_1\\ 0&\|\boldsymbol{v}_2\| \end{pmatrix}\,, \] où \(\boldsymbol{u}_1=\frac{\boldsymbol{v}_1}{\|\boldsymbol{v}_1\|}\).
La décomposition \(QR\) existe même si les colonnes de la matrice ne sont pas linéairement indépendantes:
Théorème: Soit \(A\) une matrice \(m\times n\) de rang \(\mathrm{rang}(A)=r\). Alors il existe
La différence avec le cas précédent est que lorsqu'on calcule \(Q\) en appliquant le procédé de Gram-Schmidt, on tombe sur des colonnes nulles, que l'on peut éliminer pour ne garder qu'une base orthonormale de \(\mathrm{Col}(A)\). Après, \(R\) s'obtient aussi par \(R=Q^TA\).