truncated SVD decomposition problem

6 次查看(过去 30 天)
Vinh
Vinh 2013-11-15
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

回答(1 个)

Abhijeet Go-kar
Abhijeet Go-kar 2018-3-31
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.

类别

Help CenterFile Exchange 中查找有关 Linear Algebra 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by