【发布时间】:2012-08-02 03:49:21
【问题描述】:
我有两个大的稀疏平方矩阵 A 和 B,需要以最有效的方式计算以下内容:A * B^-1。我有一种感觉,答案涉及使用scipy.sparse,但我一生都无法弄清楚。
经过大量搜索,我遇到了以下线程:Efficient numpy / lapack routine for product of inverse and sparse matrix?,但不知道最有效的方法是什么。
有人建议使用 scipy 的稀疏模块中内置的 LU 分解,但是当我尝试在样本矩阵上执行 LU 时说结果是奇异的(尽管当我只执行 * B^-1 时我得到了答案)。我也听说有人建议使用linalg.spsolve(),但我不知道如何实现它,因为它需要一个向量作为第二个参数。
如果它有帮助,一旦我有解决方案 s.t. A * B^-1 = C,我只需要知道矩阵 C 的一行的值。矩阵大约是 1000x1000 到 1500x1500。
【问题讨论】:
-
这些矩阵有多大?
标签: numpy sparse-matrix matrix-multiplication