Complexity of svd and pinv ?

6 visualizaciones (últimos 30 días)
Betha Shirisha
Betha Shirisha el 27 de Abr. de 2015
Respondida: SAI SRUJAN el 26 de Sept. de 2024
What is the complexity of calculating SVD and pinv (psuedo inverse) of a matrix of size mxn ?

Respuestas (1)

SAI SRUJAN
SAI SRUJAN el 26 de Sept. de 2024
Hello Betha,
The complexity of calculating the Singular Value Decomposition (SVD) and the pseudoinverse (using SVD) of a matrix is as follows:
Singular Value Decomposition (SVD):
  • If you have a matrix with ( m ) rows and ( n ) columns, and ( m ) is greater than or equal to ( n ) (meaning the matrix is either square or taller than it is wide), the computational complexity is typically ( O(mn^2) ).
  • This complexity arises because the most computationally intensive part is reducing the matrix to a bidiagonal form, followed by the diagonalization of the bidiagonal matrix.
Pseudoinverse (using SVD):
  • To find the pseudoinverse of a matrix ( A ), we can use its SVD. If ( A = U \Sigma V^T ), the pseudoinverse ( A^+ ) is ( V \Sigma^+ U^T ). Here, ( \Sigma^+ ) is formed by taking the reciprocal of each non-zero element in ( \Sigma ) and transposing it.
  • The complexity here is also ( O(mn^2) ) since it primarily depends on the SVD computation.
These complexities apply to dense matrices. The actual performance may vary based on specific algorithms and optimizations used in the implementation.
I hope this helps!

Categorías

Más información sobre Linear Algebra en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by