truncated SVD decomposition problem

13 ビュー (過去 30 日間)
Vinh
Vinh 2013 年 11 月 15 日
回答済み: Abhijeet Go-kar 2018 年 3 月 31 日
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 Center および File ExchangeLinear Algebra についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by