恢复前导奇异向量的快速方法

时间:2019-06-16 14:52:45

标签: algorithm linear-algebra svd

给定一个矩阵,有没有一种快速的算法可以恢复前导奇异矢量,即找到最接近Frobenius范数矩阵的秩1矩阵?

通过快速算法,我的意思是:

  [U, S, V] = svd(A);
  A1 = U(:,1)*S(1,1)*V(:,1)';

1 个答案:

答案 0 :(得分:0)

因此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)';

但是我想对于较大的矩阵,它可能会更好。