寻找k-最小特征值及其对应的大矩阵特征向量

问题描述 投票:1回答:1

对于大小为300,000 * 300,000的对称稀疏方阵,在任何语言或包中在一个小时左右内找到10个最小特征值及其对应的特征向量的最佳方法是什么。

sparse-matrix eigenvalue eigenvector
1个回答
1
投票

Lanczos算法在Hermitian矩阵上运算,是找到最低和最大特征值和相应特征向量的一种好方法。注意,真正的对称矩阵是Hermitian的定义。 Lanczos需要O(N)存储以及大致O(N)时间来评估极端特征值/特征向量。这与强力对角化形成对比,后者需要O(N^2)存储和O(N^3)运行时间。出于这个原因,Lanczos算法为许多以前在计算上不可行的问题提供了可能的近似解。

Here is a useful link到加州大学戴维斯分校的网站,该网站列出了许多语言/包中的Lanczos实现,包括FORTRAN,C / C ++和MATLAB。

© www.soinside.com 2019 - 2024. All rights reserved.