truncated SVD decomposition problem

11 views (last 30 days)
Vinh
Vinh on 15 Nov 2013
Answered: Abhijeet Go-kar on 31 Mar 2018
Hi everyone,
I am coding an algorithm that has the truncated SVD inside and I am wondering if there is any way to fast perform the truncated SVD.
For example: I have a matrix and I need to perform the SVD decomposition that will result in three matrices U, S, V. In the matrix S, I only want to keep k eigenvalues (k columns) with the condition that these eigenvalues > THRESHOLD*Largest_eigenvalue.
Currently, I perform the truncated SVD by first computing the SVD 'econ' and then keeping the k columns. I wonder if there is any other faster way to do this.
P/S: I do not know the k number before having the S matrix. What I have before doing the decomposition is the THRESHOLD value.
Thank you very much in advance.
Vinh

Answers (1)

Abhijeet Go-kar
Abhijeet Go-kar on 31 Mar 2018
The faster way to do truncated SVD is to find its analogue with PCA and perform the matrix operations accordingly. Rather than worry about the threshold of eigenvalues, just give a comparison statement of the dimensions of the matrix in the code, and perform the SVD on the matrices.

Categories

Find more on Eigenvalues in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!