Pseudoinverse

Un article de Wikipédia, l'encyclopédie libre.

En mathématiques, notamment en algèbre linéaire, la notion de pseudoinverse (ou pseudo-inverse) d'une matrice généralise celle d'inverse d'une matrice.[1]

Le pseudoinverse d'une matrice (m \times n) A est noté A + .

Plus précisément, il s'agit ici du pseudoinverse de Moore-Penrose, décrit indépendamment par Moore[2] en 1920 et Roger Penrose[3] en 1955. Un peu plus tôt, Erik Ivar Fredholm avait introduit le concept de pseudoinverse d'opérateurs intégraux en 1903. Le terme inverse généralisé est parfois utilisé pour dénoter le pseudoinverse.

Une utilisation pratique courante du pseudoinverse est faite dans le calcul de régressions (méthode des moindres carrés) pour un système d'équations linéaires.

Le pseudoinverse est défini et unique pour toute matrice réelle ou complexe. On peut le calculer par une généralisation du théorème spectral aux matrices non-carrées.

Sommaire

[modifier] Définition

Le pseudoinverse A + d'une matrice A est l'unique matrice vérifiant :

  1. AA + A = A ;
  2. A + AA + = A +       (A + est un inverse pour le semi-groupe multiplicatif) ;
  3. (AA + ) * = AA +       (AA + est une matrice hermitienne) ;
  4. (A + A) * = A + A       (A + A est également hermitienne).

Ici, on a noté M * la matrice adjointe à M. Pour les matrices réelles, M * = MT.

Une autre définition fait appel à une limite :

A^+ = \lim_{\delta \to 0} (A^* A + \delta I)^{-1} A^*
          = \lim_{\delta \to 0} A^* (A A^* + \delta I)^{-1}

Ces limites existent même si (AA * ) − 1 et (A * A) − 1 n'existe pas.

[modifier] Propriétés

  • La pseudoinversion est réversible. Elle est son propre inverse : (A + ) + = A ;
  • Le pseudoinverse d'une matrice nulle est sa transposée ;
  • La pseudoinversion commute avec la transposition, la conjugaison et l'opération qui transforme une matrice en sa matrice adjointe ;
(AT) + = (A + )T,
\overline{A}^+ = \overline{A^+}, et
(A * ) + = (A + ) *  ;
  • Le pseudoinverse d'un multiple de A non nul est A + divisé par ce nombre :
A) + = α − 1A + for \alpha\neq 0 ;
  • Si le pseudoinverse de A * A est connu, on peut en déduire A +  :
A + = (A * A) + A *  ;
  • De même, si (AA * ) + est connu :
A + = A * (AA * ) + ;

[modifier] Calcul du pseudoinverse d'une matrice

Soit k le rang d'une matrice m \times n notée A. Alors A peut être décomposée en A = BC, où B est une matrice m \times k et C une matrice k \times n. Alors

A + = C * (CC * ) − 1(B * B) − 1B * .

Si k = m, alors on peut prendre la matrice identité pour B, ce qui simplifie la formule :

A + = A * (AA * ) − 1.

De même, si k = n, on peut simplifier pour obtenir :

A + = (A * A) − 1A * .

Des approches optimisées existent pour le calcul de pseudoinverses de matrices par blocs.

Si on connait déjà le pseudoinverse d'une matrice donnée, et qu'on recherche le pseudoinverse d'une matrice en rapport avec la première, il existe des algorithmes spécialisés qui effectuent le calcul plus rapidement. En particulier, si la différence n'est que d'une ligne ou colonne changée, supprimée ou ajoutée, des algorithmes itératifs peuvent exploiter cette relation.

[modifier] Cas particuliers

Si les colonnes de A sont linéairement indépendantes, alors A * A est inversible. Dans ce cas, une formule explicite est : [1]

A + = (A * A) − 1A * .

Dans la limite donnée en définition au début de cet article, la limite est continue en δ = 0 : il en découle que A + est l'inverse à gauche de A :   A + A = I.

Si les lignes de A sont linéairement indépendantes, alors AA * est inversible. Dans ce cas, une formule explicite est :

A + = A * (AA * ) − 1.

Dans la seconde limite donnée en définition, continue en δ = 0, on peut déduire que A + est inverse à droite de A :   AA + = I.

Si à la fois les lignes et colonnes sont linéairement indépendantes, le pseudoinverse est tout simplement l'inverse :

A + = A − 1.

Si A et B sont deux matrices telles que AB est défini et que l'une des deux est unitaire, alors (AB) + = B + A + . Si A et B sont deux matrices telles que AB est défini, que le rang de A est égal au nombre de ses colonnes et que le rang de B est égal au nombre de ses lignes, alors (AB) + = B + A + .

Il est également possible de définir un pseudoinverse pour des matrices particulières, équivalentes aux scalaires ou aux vecteurs. Le pseudoinverse d'un scalaire x est nul si et seulement si x est nul, et l'inverse de ce nombre sinon:

x^+ = \left\{\begin{matrix} 0, & \mbox{si }x=0;
 \\ x^{-1}, & \mbox{sinon}. \end{matrix}\right.

Le pseudoinverse du vecteur nul est la transposée du vecteur nul. Le pseudoinverse des autres vecteurs est le vecteur adjoint divisé par sa norme au carré :

x^+ = \left\{\begin{matrix} 0^T, & \mbox{si }x = 0;
 \\ {x^* \over x^* x}, & \mbox{sinon}. \end{matrix}\right.

[modifier] Exemple d'utilisation

Le pseudoinverse donne une solution à un système d'équations linéaires, équivalente à celle que donnerait la méthode des moindres carrés. [4]

Soit un système Ax = b, on cherche le vecteur x qui minimise \|A x - b\|^2, où on a noté \|\,\cdot\,\| la norme euclidienne.

La solution générale à un système linéaire Ax = b est somme d'une solution particulière et de la solution générale de l'équation homogène Ax = 0.

Lemme : Si (AA * ) − 1 existe, alors la solution x peut toujours être écrite comme somme des pseudoinverses de la solution du système et d'une solution au système homogène :

x = A * (AA * ) − 1b + (1 − A * (AA * ) − 1A)y.

Ici, le vecteur y est arbitraire (si ce n'est sa dimension). Le pseudoinverse A * (AA * ) − 1 apparaît deux fois : si on l'écrit A + , on obtient :

x = A + b + (1 − A + A)y.

Le premier terme de la somme est la solution pseudoinverse. Dans l'approche des moindres carrés, c'est la meilleure approximation linéaire de la solution. Cela signifie que le second terme de la somme est de norme minimale.

Ce second terme représente une solution au système homogène Ax = 0, puisque (1 − A + A) est la projection orthogonale sur le noyau de A, alors que (A + A) = A * (AA * ) − 1A est la projection orthogonale sur l'image de A.

[modifier] Voir aussi

[modifier] Références

  1. ab Generalized Inverses, Springer-Verlag 2003
    co-écrit avec Thomas N.E. Greville.
  2. E. H. Moore, « On the reciprocal of the general algebraic matrix », dans Bulletin of the American Mathematical Society, 26, p. 394-395
  3. Roger Penrose, « A generalized inverse for matrices », dans Proceedings of the Cambridge Philosophical Society, 51, p. 406-413
  4. Roger Penrose, « On best approximate solution of linear matrix equations », dans Proceedings of the Cambridge Philosophical Society, 52, p. 17-19
  • (en) Cet article est partiellement ou en totalité issu d’une traduction de l’article de Wikipédia en anglais intitulé « Pseudoinverse ».
  • W. Mackens, H. Voß : « Mathematik I für Studierende der Ingenieurwissenschaften » ;
  • A.Kielbasinski, H.Schwetlick : « Numerische lineare Algebra », Deutscher Verlag der Wissenschaften, 1988.

[modifier] Liens externes

[modifier] Articles connexes