computational complexity of svds

15 visualizzazioni (ultimi 30 giorni)
Bowen il 26 Ago 2023
Modificato: Christine Tobler il 28 Ago 2023
Could anyone give me some help on why MATLAB implement svds use Lanczos Bidiagonalization algorithms but not seemingly more computational efficient algorithm like randomized algorithm, like algorithms in the paper FINDING STRUCTURE WITH RANDOMNESS: PROBABILISTIC ALGORITHMS FOR CONSTRUCTING APPROXIMATE MATRIX DECOMPOSITIONS?
  1 Commento
Torsten il 26 Ago 2023
Modificato: Torsten il 26 Ago 2023
"randomized algorithm" sounds it has a wide range of application, but not computationally efficient for me.

Accedi per commentare.

Risposte (2)

John D'Errico
John D'Errico il 26 Ago 2023
Modificato: John D'Errico il 26 Ago 2023
Sorry, but no, we can't tell you why a choice was made. MathWorks does not give out that information.
You MIGHT be able to learn something if you make a technical support request, DIRECTLY to the tech support link. That is not Answers.
Or, you could write your own code, if you think that scheme is so much better. Nothing stops you from doing so.

Christine Tobler
Christine Tobler il 28 Ago 2023
Modificato: Christine Tobler il 28 Ago 2023
There is a recent function (introduced R2020b) called svdsketch, which is using randomized linear algebra. We recommend this for finding a low-rank approximation of a matrix, but not for finding individual singular value triplet, as it is focused on the whole matrix approximation, not on the residual of an individual triplet. It also doesn't allow for computing the smallest singular values, or singular values close to a shift, as svds does.


Scopri di più su Eigenvalues in Help Center e File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by