La pseudoinversa di una matrice
di dimensioni
si può calcolare mediante la decomposizione SVD (Singular Value
Decomposition) di
.
È una fattorizzazione molto nota e ampiamente utilizzata, per la
trattazione della quale rimandiamo a testi specifici, per es.
[PTVF92], dove si può trovare anche una
implementazione in C dell'algoritmo.
Supponiamo dunque di conoscere la decomposizone SVD di
:

dove S è una matrice diagonale con elementi non negativi che prendono il nome di valori singolari. La sua pseudoniversa è:

dove
è una matrice diagonale i cui elementi sono il
reciproco di quelli di
non nulli, oppure 0.
Si può calcolare la pseudoinversa anche con

se
è
invertibile (ovvero se
ha rango pieno).