【问题标题】:C++ machine learning framework [closed]C ++机器学习框架[关闭]
【发布时间】:2011-12-30 18:38:23
【问题描述】:

我似乎找不到一个基于 C++ 的 ML/AI 框架来实现各种神经网络算法。在 Java 中工作时,我已将 Encog 用于这些目的,但我在 C++ 中看不到任何类似的功能方面的东西。我见过的最接近的是 FANN,但它缺少一些东西,例如 LMA 和退火。

编辑:我找到的最佳替代方案是 Shark,但正如我所说,它仍然缺乏并且只有更常用的功能,没有 LMA、退火或 PSO 或任何该级别的东西。

【问题讨论】:

  • google fu 很弱但是貌似encog 团队有分拆:code.google.com/p/encog-cpp
  • @AJG85 最后一次提交是 2010 年 10 月,对我来说看起来已经死了......
  • @TC1 你说死了,我说final。 :)
  • @JoãoPortela 在你说 final... 之前,你真的应该看看这 13 个提交... :)
  • Encog 看起来不是一个非常完整的框架。我认为您要求的是 Encog 的 C++ 版本,而不是多样化的 ML 框架。如果是这样,那么你正在寻找神经网络,准确地说。类似地,如果有人来找一个不同语言的对应物,比如 Shogun,很明显他们是以 SVM 为中心的,而不是对 NN 感兴趣。神经网络,如 SVM,或决策树,或者你有什么,只是机器学习和 AI 的一小部分。

标签: c++ frameworks artificial-intelligence machine-learning


【解决方案1】:

好的,经过几天断断续续的搜索,我想我可以很肯定地说没有这样的事情。现有的库都没有提供任何接近 Encog 复杂程度的东西,而且由于我想要在 C++ 中使用它的主要原因之一是我需要 QT 集成,所以我想我最终会使用 Encog和占碑。

无论如何,对于后来/从 Google 偶然发现这一点的人,基本上有三个框架/库确实提供了一些合理的功能,如果您不想要 LMA、PSO、退火或任何功能,它们应该就足够了那些更奇特的东西:

差不多就是这样。其余的都是不成熟的/死的,或者真的太缺乏功能了。如果我决定推出自己的项目(很有可能,因为我非常需要它来工作),我一定会用链接更新这个地方。

【讨论】:

    【解决方案2】:

    mloss 存储库有许多基于 C++ 的开源机器学习框架。就个人而言,我觉得dlib 非常有用。

    【讨论】:

    【解决方案3】:

    Encog 正在移植到 C/C++。

    https://github.com/encog/encog-c

    【讨论】:

      【解决方案4】:

      这是我见过的最好的神经网络:EBLearn

      【讨论】:

      • 最好提供一些细节。比如你认为它是最好的方式和原因。
      【解决方案5】:

      虽然 OpenCV 主要用于计算机视觉,但其 machine learning library (ml) 包含处理决策树、贝叶斯分类器、多层感知器、增强等的类。

      【讨论】:

      • 非常简洁,比我发现的任何东西都好,但 MLP 部分仍然只支持 RProp...
      猜你喜欢
      • 2012-07-11
      • 2010-10-13
      • 2023-02-20
      • 2010-12-10
      • 2017-12-25
      • 2013-02-04
      • 2011-06-16
      • 2018-11-16
      • 1970-01-01
      相关资源
      最近更新 更多