Pseudo-inverse

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Inverse (homonymie).

En mathématiques, et plus précisément en algèbre linéaire, la notion de pseudo-inverse (ou inverse généralisé) généralise celle d’inverse d’une application linéaire ou d’une matrice[1] aux cas non inversibles en lui supprimant certaines des propriétés demandées aux inverses, ou en l’étendant aux espaces non algébriques plus larges.

En général, il n’y a pas unicité du pseudo-inverse. Son existence, pour une application linéaire entre espaces de dimension éventuellement infinie, est équivalente à l'existence de supplémentaires du noyau et de l'image. Selon les propriétés demandées, le pseudo-inverse défini permet toutefois de généraliser la notion d'inverse en se restreignant au semi-groupe associatif multiplicatif seul, même s'il ne respecte pas les autres contraintes du corps ou de l'algèbre (en particulier les propriétés de distributivité ou de commutativité ne sont plus vraies dans le cas général, là où le véritable inverse peut les respecter).

Ont été étudiés en particulier les types de pseudo-inverses suivants :

  • le pseudo-inverse de Moore-Penrose dans le cas des matrices carrées non inversibles, mais généralisable à toute algèbre de matrices à valeurs dans un corps.
  • le pseudo-inverse de Drazin qui détermine la matrice qui constitue un point fixe dans la multiplication par l'exponentiation de matrices carrées au-delà d'un degré fini.
  • le pseudo-inverse à gauche et le pseudo-inverse à droite, utiles dans le cas des matrices non carrées qui ne sont jamais inversibles pour déterminer la factorisation en valeurs singulières, et qui ne sont pas nécessairement égaux non plus dans le cas de transformées non commutatives comme les opérateurs fonctionnels et distributions non discrètes.

Le pseudo-inverse se calcule à l’aide d’une généralisation du théorème spectral aux matrices non carrées.

Il est notamment utile dans le calcul de régressions (méthode des moindres carrés) pour un système d'équations linéaires.

Pseudo-inverse de Moore-Penrose[modifier | modifier le code]

Pour une matrice à coefficients réels ou complexes (pas nécessairement carrée), ou pour une application linéaire entre espaces euclidiens ou hermitiens, il existe un unique pseudo-inverse satisfaisant certaines conditions supplémentaires et appelé pseudo-inverse de Moore-Penrose (ou simplement « pseudo-inverse »), décrit par Eliakim Hastings Moore[2] dès 1920 et redécouvert indépendamment par Roger Penrose[3] en 1955. Erik Ivar Fredholm avait déjà introduit le concept de pseudo-inverse pour un opérateur intégral en 1903.

Cas général pour une application linéaire[modifier | modifier le code]

Définition et premières propriétés[modifier | modifier le code]

Soient f une application linéaire entre deux espaces vectoriels E et F et g une application linéaire de F dans E. Ces deux applications sont pseudo-inverses l'une de l'autre si les deux conditions suivantes sont satisfaites :

f\circ g \circ f =f et g\circ f \circ g =g.

Dans ce cas, les propriétés suivantes sont vérifiées :

  • l'espace E est la somme directe du noyau de f et de l'image de g ;
  • l'espace F est la somme directe du noyau de g et de l'image de f ;
  • les applications f et g induisent des isomorphismes réciproques entre leurs images ;
  • si l'application f est inversible, alors son inverse est l'application g.

Cette définition se traduit naturellement sous forme matricielle dans le cas d'espaces vectoriels de dimension finie.

Existence et construction[modifier | modifier le code]

Réciproquement, soit f est une application linéaire entre deux espaces vectoriels E et F, dont le noyau admette un supplémentaire K dans E et dont l'image admette un supplémentaire N dans F. Alors la restriction de f à K induit un isomorphisme entre K et son image. L'application réciproque de l'image de f vers K s'étend de façon unique par l'application nulle sur N, en une application linéaire g de F dans E qui est par construction pseudo-inverse de f.

Il y a donc correspondance biunivoque entre les pseudo-inverses d'une application linéaire et les couples de supplémentaires pour son noyau et son image.

Remarque : ceci s'applique évidemment aux cas où l'un des supplémentaires K et N est réduit à l'origine ou à l'espace vectoriel tout entier, ce qui a lieu en particulier lorsque f est inversible: K est alors égal à E et N est réduit à l'origine.

Choix des supplémentaires[modifier | modifier le code]

Il n'y a pas de choix canonique d'un supplémentaire en général, mais une structure d'espace euclidien ou hermitien sur les espaces vectoriels source et but permet d'en déterminer un par la définition de l'orthogonal. Cette définition du pseudo-inverse correspond au « pseudo-inverse de Moore-Penrose » pour les matrices.

Cas matriciel[modifier | modifier le code]

Définition[modifier | modifier le code]

Étant donné une matrice A à coefficients réels ou complexes avec n lignes et p colonnes, son pseudo-inverse A^+ est l'unique matrice à p lignes et n colonnes vérifiant les conditions suivantes :

  1. A A^+A = A\, ;
  2. A^+A A^+ = 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, la notation M^*\ désigne la matrice adjointe à M\ , c'est-à-dire la transposée pour le cas réel.

Cette matrice peut s'obtenir comme une limite :

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

qui existe même si les matrices produits (A A^*) et (A^* A) ne sont pas inversibles.

Propriétés[modifier | modifier le code]

\begin{align}
(          A^+   )^+ & =           A      \\
(    {}^t\!A     )^+ & =    {}^t\!(A^+)   \\
(\overline{A}    )^+ & = \overline{A^+}   \\
(          A^*   )^+ & =          (A^+)^* \\
\end{align}

Identités valables pour toute matrice A
(à coefficients réels ou complexes)

L’opération de pseudo-inversion :

Cependant, la pseudo-inversion n’est pas continue. En effet, elle est inversement linéaire par rapport à la multiplication par un scalaire : pour tout \alpha ≠ 0,

(\alpha A)^+ = \frac{1}{\alpha} A^+\ .

Soit AB est un produit de deux matrices. Si l’une au moins est unitaire, ou si les deux matrices sont de rang maximal égal à leur dimension commune, alors la pseudo-inversion est anti-commutative sur le produit :

(AB)^+ = B^+ A^+\ .

Projections[modifier | modifier le code]

Si P = AA^+\,\! et Q = A^+A\,\! sont des projecteurs orthogonaux, soient des matrices hermitiennes ( P = P^*\,\!,  Q = Q^*\,\!) et idempotentes ( P^2 = P\,\! et  Q^2 = Q\,\!), on a les résultats suivants[4] :

  • PA=A=AQ\,\! et A^+P=A^+=QA^+\,\!
  • P\,\! est le projecteur orthogonal sur l'image de A\,\! (équivalent au complément orthogonal du noyau de  A^*\,\!).
  • Q\,\! est le projecteur orthogonal sur l'image de A^*\,\! (équivalent au complément orthogonal du noyau de  A\,\!).
  • (I - P)\,\! est le projecteur orthogonal sur le noyau de A^*\,\!.
  • (I - Q)\,\! est le projecteur orthogonal sur le noyau de A\,\!.

Calcul effectif[modifier | modifier le code]

Si la matrice A, avec n lignes et p colonnes, est de rang k, alors elle peut s'écrire comme un produit de matrices de même rang A = BC, où B possède n lignes et k colonnes et C possède k lignes et p colonnes. Dans ce cas les produits (C C^*) et (B^*B) sont inversibles et la relation suivante est vérifiée :

A^+ = C^*(CC^*)^{-1}(B^*B)^{-1}B^*\,.

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

Algorithmiquement, le pseudo-inverse s'obtient à partir de la décomposition en valeurs singulières : muni de cette décomposition A = U\sigma V^*, on calcule

A^+ = V \sigma^+U^*,

\sigma^+, pseudo-inverse de la matrice diagonale \sigma, est une matrice diagonale dont les éléments non nuls sont obtenus en inversant les éléments non nuls (de la diagonale) de \sigma.

À partir d'une matrice dont le pseudo-inverse est connu, il existe des algorithmes spécialisés qui effectuent le calcul plus rapidement pour des matrices en rapport avec la première. 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.

Cas particuliers[modifier | modifier le code]


X^+ = \left\{\begin{array}
  {rl} 0                                 & \mbox{si}\ X=0; \\
  \frac{1}{\left\Vert X\right\Vert^2}X^* & \mbox{sinon}.   \\
\end{array}\right.

Pseudo-inverse d'un vecteur colonne

  • Le pseudo-inverse d’une matrice nulle est sa transposée (également nulle).
  • Le pseudo-inverse d’un vecteur colonne non nul est son vecteur adjoint multiplié par l’inverse de sa norme au carré. En particulier, le pseudo-inverse d’un scalaire (matrice à 1 ligne et 1 colonne) réel ou complexe non nul est son inverse.
  • Si le rang de A est égal à son nombre de lignes[1], la matrice B peut être choisie égale à l’identité et dans ce cas :
    A^+ = A^*(AA^*)^{-1}\,.
  • De même, si le rang de A est égal à son nombre de colonnes,
    A^+ = (A^*A)^{-1}A^*\,.
  • A fortiori si la matrice A est inversible, son pseudo-inverse est son inverse.
  • Si le pseudo-inverse de (A^*A) est connu, on peut en déduire A^+ par l’égalité :
    A^+ = (A^*A)^+A^*\, ;
  • De même, si (A A^*)^+ est connu, le pseudo-inverse de A est donné par :
    A^+ = A^*(AA^*)^+\,;

Exemple d’utilisation[modifier | modifier le code]

Article détaillé : Pseudo-solution.

Le pseudo-inverse donne une solution à un système d’équations linéaires, équivalente à celle que donnerait la méthode des moindres carrés[5].

Soit un système A x = b, on cherche un 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 A x = b est somme d'une solution particulière et de la solution générale de l'équation homogène A x = 0.

Lemme : Si (A A^*)^{-1} existe, alors la solution x peut toujours être écrite comme somme des pseudo-inverses de la solution du système et d’une solution au système homogène :

x = A^*(A A^*)^{-1}b + (I - A^*(A A^*)^{-1} A)y.\,

Démonstration : Ax=A A^*(A A^*)^{-1}b+A y - A A^*(A A^*)^{-1} A y=b+A y - A y = b.

Ici, le vecteur y est arbitraire (si ce n'est sa dimension). Le pseudo-inverse A^* (A A^*)^{-1} apparaît deux fois : si on l’écrit A^+\ , on obtient

x = A^+ b + (I - A^+ A)y.\

Le premier terme de la somme est la solution pseudo-inverse. 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 A x = 0\ , puisque (I - A^+ A)\ est la projection orthogonale sur le noyau de A\ , alors que (A^+A) = A^* (A A^*)^{-1} A\ est la projection orthogonale sur l’image de A^*.

Notes et références[modifier | modifier le code]

Notes[modifier | modifier le code]

  1. a et b (en) Adi Ben-Israel et Thomas N. E. Greville, Generalized Inverses : Theory and Applications, Springer-Verlag,‎ 2003, 2e éd. (1re éd. 1974) (ISBN 0-387-00293-6)
  2. (en) Eliakim Hastings Moore, « On the reciprocal of the general algebraic matrix », Bull. AMS, vol. 26,‎ 1920, p. 394-395 (lire en ligne)
  3. (en) Roger Penrose, « A generalized inverse for matrices », Proceedings of the Cambridge Philosophical Society, vol. 51,‎ 1955, p. 406-413
  4. Gene H. Golub, Charles F. Van Loan, Matrix computations, Johns Hopkins,‎ 1996, 257–258 p. (ISBN 0-8018-5414-8)
  5. (en) Roger Penrose, « On best approximate solution of linear matrix equations », Proceedings of the Cambridge Philosophical Society, vol. 52,‎ 1956, p. 17-19

Références[modifier | modifier le code]

  • (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Pseudoinverse » (voir la liste des auteurs)
  • (de) W. Mackens, H. Voß : « Mathematik I für Studierende der Ingenieurwissenschaften »
  • (de) A.Kielbasinski, H.Schwetlick : « Numerische lineare Algebra », Deutscher Verlag der Wissenschaften, 1988

Voir aussi[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Sur les autres projets Wikimedia :

Articles connexes[modifier | modifier le code]