La pseudo-inverse de Moore-Penrose d'une matrice A de taille nxp est une matrice B de taille pxn vérifiant les propriétés suivantes :
- ABA=A,
- BAB=B,
- AB et BA sont des matrices hermitiennes.
Soit r le rang de A (r devant être au plus égal à n et p).
- Dans le cas où r=n=m (matrice carrée inversible), la pseudo inverse de A est égale à son inverse.
- Si rang(r)=p<n, alors la pseudo-inverse vaut
- Si rang(r)=n<p, alors la pseudo-inverse vaut
D'un point de vue algorithmique, la pseudo-inverse d'une matrice A s'obtient généralement à partir d'une décomposition en valeurs singulières de A
en posant
où R est définie à partir de S en inversant ses valeurs non nulles et en la transposant.
Le calcul de la pseudo-inverse en matlab ou octave peut se calculer au moyen de la fonction pinv, qui repose sur une décomposition en valeurs singulières.
Frédéric Richard, Aix-Marseille Université
2012-12-05