【发布时间】:2021-02-27 16:10:58
【问题描述】:
我有一个具有3e5x3e5 维度的巨大稀疏矩阵。我想计算它的 svd,我需要所有奇异值。 scipy.sparse.linalg.svds 的实现将不起作用,因为它需要分配一个与稀疏矩阵具有相同维度的完整矩阵。有没有办法有效地做到这一点?如果没有,我正在考虑按顺序获取奇异值,例如:
#A is the sparse matrix. l is how many singular values are calculated in each iteration.n is dim(A)
i=0
while i < n:
# it will give you, the ith to (i+l)th largest/smallest singular values.
get_range_of_singular_values(A,i,i+l)
i = i + l
但我不知道支持它的 API?有关如何解决此问题的任何线索?我还需要奇异向量,所以如果解决方案没有提供它们,它们就没有用了。
【问题讨论】:
标签: python scipy sparse-matrix linear-algebra