首页 > 解决方案 > 使用 scipy.sparse.linalg.eigsh 获取所有特征向量

问题描述

我想获取特定实对称矩阵的所有特征值和特征向量。这显然是可能的numpy.linalg.eigh,然而,这个矩阵有一个特殊的稀疏结构,它允许用向量线性缩放点积。出于这个原因,我想使用scipy.sparse.linalg.eigsh,它允许 aLinearOperator代替输入数组,并使用隐式重启的 Lanczos 方法。

我的问题是scipy.sparse.linalg.eigsh不允许计算所有特征值和特征向量(即k=n),并且我的输入矩阵的秩通常等于n。有没有办法解决这个问题,或者任何其他功能是否允许类似的功能?

标签: pythonnumpyscipy

解决方案


推荐阅读