【问题标题】:How to solve a large sparse linear system from Scala如何从 Scala 解决大型稀疏线性系统
【发布时间】:2013-08-25 08:18:17
【问题描述】:

有一些questions 询问有关 Scala 的通用数学/统计框架。

我只对一个特定问题感兴趣,即解决大型稀疏线性系统。本质上,我正在寻找 scipy.sparse.linalg.spsolve 的等价物。

目前我正在研究ScalaNLP Breezebreeze-math,看起来它可以完成这项工作,只是这个库集合的重点是自然语言处理,所以使用它感觉有点奇怪。

Saddle 看起来也很有希望,但还不是很成熟,并且查看它的依赖关系,EJML 似乎没有稀疏功能,而 Apache commons math 有,但它是flaky

有没有人有一个目前可用的相当简单和有效的解决方案?

【问题讨论】:

  • 投票结束时有什么有用的建议吗?
  • Colt 仍然是我处理这类事情的首选库(但我知道我应该再试一次 Breeze)。
  • 我确信关闭者会引用“要求我们推荐或查找工具的问题,图书馆等等等等”语言。我个人认为这是一个完全合理的问题。

标签: scala linear-algebra solver


【解决方案1】:

虽然 ScalaNLP Breeze 说它是用于 NLP 的,但它的线性代数库相当通用,并不专门用于 NLP。话虽如此,您可以轻松地执行以下操作:

  val A = new CSCMatrix[Int]()
  val B = new CSCMatrix[Int]()

  val x = A \ B

【讨论】:

    猜你喜欢
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-07
    相关资源
    最近更新 更多