【问题标题】:Is there good library to do nonnegative matrix factorization (NMF) fast? [closed]是否有好的库可以快速进行非负矩阵分解(NMF)? [关闭]
【发布时间】:2012-11-28 16:33:54
【问题描述】:

我有一个稀疏矩阵,其形状为 570000*3000。我尝试nima 进行 NMF(使用默认的 nmf 方法,并将max_iter 设置为 65)。但是,我发现 nimfa 非常慢。有没有人使用更快的库来做 NMF?

【问题讨论】:

    标签: python c++ pca matrix-factorization nmf


    【解决方案1】:

    我以前用过libNMF。它是用 C 语言编写的,速度非常快。有一个paper 记录了算法和代码。

    该论文还列出了 NMF 的几个替代包(使用多种不同的语言(我已在此处复制以供将来参考)。

    免责声明:我没有尝试过任何其他软件包(MATLAB 除外)。

    【讨论】:

    • 作为对通过 Google 找到此内容的其他人的更新:Mlpack 是一个不错、快速、现代的 C++ 机器学习库,他们有一个名为“AMF - 替代矩阵分解”的模块",其中也有一些 NMF 算法:mlpack.org/docs/mlpack-2.0.1/…
    • 此答案中的大多数链接都已损坏。这又是一个很好的例子,说明为什么软件推荐不适合 SO 模型。
    • 我刚刚在 RcppML R 包中发布了一个非常快速的 NMF 实现。它利用 Eigen C++ 库并进行了广泛优化。它在 CRAN 上:install.packages("RcppML")。我会长期维护和开发它。
    猜你喜欢
    • 2015-10-06
    • 2017-09-06
    • 2017-07-10
    • 2021-02-24
    • 2015-10-11
    • 2012-11-29
    • 1970-01-01
    • 2014-09-04
    • 2012-05-02
    相关资源
    最近更新 更多