Complexity of svd and pinv ?

6 Ansichten (letzte 30 Tage)
Betha Shirisha
Betha Shirisha am 27 Apr. 2015
Beantwortet: SAI SRUJAN am 26 Sep. 2024
What is the complexity of calculating SVD and pinv (psuedo inverse) of a matrix of size mxn ?

Antworten (1)

SAI SRUJAN
SAI SRUJAN am 26 Sep. 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!

Kategorien

Mehr zu Linear Algebra finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by