注意

RAFT 中的向量搜索和聚类算法正在迁移到一个名为 cuVS 的新库,该库专注于向量搜索。在此迁移过程中,我们将继续支持 RAFT 中的向量搜索算法,但在 RAPIDS 24.06 (6月) 版本后将不再更新它们。我们计划在 RAPIDS 24.10 (10月) 版本前完成迁移,并在 24.12 (12月) 版本中将它们从 RAFT 中完全移除。

Sparse#

此页面提供了 pylibraft.sparse.linalg.eigsh 包中公开暴露元素的 pylibraft 类参考。

pylibraft.sparse.linalg.eigsh(A, k=6, v0=None, ncv=None, maxiter=None, tol=0, seed=None, handle=None)[source]#

找到实对称方阵或复Hermitian矩阵 Ak 个特征值和特征向量。

求解标准特征值问题 Ax = wx,其中 w 是特征值,x 是相应的特征向量。

参数
a (spmatrix):一个维度为 (n, n) 的对称稀疏 CSR 矩阵。

a 必须是 cupyx.scipy.sparse._csr.csr_matrix 类型。

k (int):要计算的特征值和特征向量的数量。必须满足

1 <= k < n.

v0 (ndarray):迭代的起始向量。如果为 None,则使用一个随机

单位向量。

ncv (int):生成的 Lanczos 向量的数量。必须满足

k + 1 < ncv < n。如果为 None,则使用默认值。

maxiter (int):Lanczos 更新迭代的最大次数。

如果为 None,则使用默认值。

tol (float):残差 ||Ax - wx|| 的容差。如果为 0,则使用机器

精度。

返回
tuple

返回 wx,其中 w 是特征值,x 是特征向量。

另请参阅

scipy.sparse.linalg.eigsh() cupyx.scipy.sparse.linalg.eigsh()

注意

此函数使用厚重启 Lanczos 方法 (https://sdm.lbl.gov/~kewu/ps/trlan.html)。