Octave / Matlab:稀疏矩阵上的PCA:如何只得到最重要的特征向量?

时间:2013-06-28 19:33:56

标签: matlab octave pca sparse-matrix

我正在使用Octave并且有一个巨大的稀疏矩阵,我必须得到它的特征值。但是,如果我只使用函数来获取所有特征值和特征向量,结果将占用太多空间,因为输入矩阵是稀疏的。

如何只获得有限数量的最重要的特征向量?

1 个答案:

答案 0 :(得分:2)

使用eigs代替eig

D = eigs(A,k);

这将返回矩阵k的{​​{1}}个最大特征值。根据{{​​3}},Octave确实支持稀疏矩阵Aeigs使用的技术与eigs不同,整体速度较慢,除了您描述的情况外,通常不应使用。

请确保查看eig参数的选项,以防您想要仅针对其实部的最大特征值,例如。

sigma的Matlab文档是this page