【发布时间】:2015-06-15 17:13:16
【问题描述】:
我们在 Python 中使用 theano 和 numpy 来进行符号和数值计算,优化我们的机器学习计算(例如:矩阵乘法和 GPU 使用)。 Clojure 中有哪些相关工具可以进行机器学习(或者至少是矩阵乘法之类的事情)?
【问题讨论】:
标签: clojure machine-learning numeric symbolic-math
我们在 Python 中使用 theano 和 numpy 来进行符号和数值计算,优化我们的机器学习计算(例如:矩阵乘法和 GPU 使用)。 Clojure 中有哪些相关工具可以进行机器学习(或者至少是矩阵乘法之类的事情)?
【问题讨论】:
标签: clojure machine-learning numeric symbolic-math
Clojure 中用于数学运算、统计等的重要库/工具是 incanter。还有clatrix包装jBlas进行矩阵运算。
关于一般的机器学习,至少有两个库接口/包装Apache Spark,其中包括用于机器学习的MLlib:有sparking 和flambo。 clj-ml 基本上是 Weka 和一些附加内容的包装。最后,clojure-opennlp 是对opennlp 的封装,这是一个 NLP 工具包,可与 Python 中的 NLTK 相媲美。
这个list of ML tools 提供了更多的链接。
【讨论】:
对于矩阵/向量方面,core.matrix 是一个可插入库,其实现位于
vectorz-clj 正在积极开发中,并且存在其他高性能库。自述文件中的用法:
(def M (matrix [[1 2] [3 4]]))
(def v (matrix [1 2]))
(mul M v)
=> #<Matrix22 [[1.0,4.0],[3.0,8.0]]>
该项目的“导师”提到on an answer to this SO question GPU 是目标,但在文档中没有提及。
由于您的问题有点宽泛,您需要什么样的特定功能?你有没有尝试过?
【讨论】: