【问题标题】:Fast integer matrix null space in Python?Python中的快速整数矩阵零空间?
【发布时间】:2019-07-17 13:17:05
【问题描述】:

我有一个 Python 程序,它接受系数只能为 -1、0 和 1 的矩阵。我需要计算这些矩阵的零空间。这些矩阵可能很大(数百万个条目),性能至关重要。

Scipy's null_space 具有可接受的性能,但问题是它将零空间作为正交矩阵返回。我希望得到的矩阵具有整数系数。

Sympy's nullspace 返回我想要的矩阵,但是因为它是纯 Python(也可能因为它使用高斯消除而不是更快的算法)性能非常差。

还有什么我可以尝试的吗?如果解决方案可以很容易地并行化就好了。

【问题讨论】:

    标签: python numpy matrix scipy linear-algebra


    【解决方案1】:

    您可以尝试 QR 分解。 Scipy 将 SVD 用于空空间。 QR 原则上更快。

    编辑:对 mathoverflow 的简短搜索显示此 https://mathoverflow.net/questions/61861/fast-algorithms-for-computing-nullspace-of-a-positive-semidefinite-matrix-over-z

    【讨论】:

    • 谢谢。我知道有很多可用的算法。我想知道是否已经有适用于 Python 的快速实现
    猜你喜欢
    • 1970-01-01
    • 2011-08-18
    • 2023-04-02
    • 2011-02-28
    • 2011-11-15
    • 2018-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多