给定一个矩阵,有没有一种快速的算法可以恢复前导奇异向量,即找到最接近 Frobenius 范数矩阵的 rank-1 矩阵?
我所说的快速算法是指任何比以下算法更快的东西:
[U, S, V] = svd(A);
A1 = U(:,1)*S(1,1)*V(:,1)';
最佳答案
所以 power method可用于此目的:
C = A*A';
v1 = power_method(C);
v2 = nanmean(A./v1,1)';
A1 = v1*v2';
但在我的实验中,它并不总是比高度优化的完整 svd 更快:
[U,S,V] = svd(A);
A1 = U(:,1)*S(1,1)*V(:,1)';
但我想对于大矩阵它可能会更好。
关于algorithm - 快速恢复领先奇异向量的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56619954/