代码之家  ›  专栏  ›  技术社区  ›  Björn Pollex

使用哪个机器学习库[关闭]

  •  33
  • Björn Pollex  · 技术社区  · 14 年前

    我正在寻找一个理想情况下具有以下功能的库:

    • 实现支持向量机
    • 是在C++中
    • 有一定的文件记录(这似乎是最难的)

    6 回复  |  直到 14 年前
        1
  •  16
  •   Davis King    11 年前

    只有几个ML库我已经用够了,所以我很乐意推荐它们; dlib毫升

    here ; 和出血边缘检查:

    hg clone http://hg.code.sf.net/p/dclib/code dclib-code
    

    最初的库创建者和当前的维护者是davisking。

    您的愿望列表与相关dlib功能:

    • :对于面向相对较少的用户/开发人员的免费开源库,这可能是最好的;除了在五年的开发历史中完善的常规文档之外,还有一个经常更新的 Intro to dlib 论坛 ; 还有一大套 (至少包括一个支持向量机)。

    • C++ 据我所知,C++中有100%个。

    • 支持向量机 算法:是;事实上,支持向量机模块一直是该库最新更新的焦点。

    • 层次聚类 算法:不开箱即用;那里 但是,打包的代码 k-均值聚类 不同,但计算 相似度量及其应用 这两者的核心——换句话说 要使现有的集群模块适应HC,需要花费一个多小时的时间 几行代码,但它也是 考虑到这一点,这不是一个大的努力 你几乎在办公室工作 数据表示级别。

    dlib-ml还有几点建议。它是一个成熟的库(现在是17.x版本,我相信1.x版本是在2005年末发布的),但是它仍然在积极开发中,正如repo日志(上一次更新,17.27,是2010年5月17日)和上一次提交(2010年5月23日)所示。此外,它还包括其他一些ML技术(如贝叶斯网络、核方法等)。第三,dllib-ml对矩阵计算和优化有极好的“支持”库——这两个库都是许多ml技术的基本构建块。

    在源代码中,我注意到dlib-ml是根据 BSL公司 (Boost?)。

        2
  •  10
  •   Finbarr    14 年前

    http://www.cs.waikato.ac.nz/ml/weka/ 是一个优秀的开源机器学习库,它满足了大多数的要求,除了C++之外,它是用java编写的。这是非常好的文件,实现支持向量机和聚类,我有很好的经验。

        3
  •  10
  •   Dženan    9 年前

    通用机器学习库:

    这两个类似于Weka。然而,他们考虑的是效率。

    1.鲨鱼(LGPL)

    https://github.com/Shark-ML/Shark/

    http://waffles.sourceforge.net/

    SVM和其他线性分类器:

    1.LibSVM(BSD风格)

    2.线性(BSD样式)

    http://www.csie.ntu.edu.tw/~cjlin/libsvm/

    它们都是C++的。

        4
  •  5
  •   Björn Pollex    14 年前

    scipy-cluster 现在是聚类部分。这是迄今为止我发现的最通用的实现。我想我会和你一起去 libSVM (它现在有一个Python接口)支持向量机部分。我将使用Python,因为在C++中没有找到合适的层次聚类实现方法( C Clustering Library

        5
  •  4
  •   griffin    14 年前

    它不是C++,但是你考虑使用R。特别是,看看 the machine learning view on CRAN ,其中显示了上述许多库,包括Weka和libsvm。

        6
  •  1
  •   jochenleidner    11 年前

    条件随机场(CRF): http://www.chokkan.org/software/crfsuite/

    隐马尔可夫模型(HMM): http://www.cs.au.dk/~asand/?page_id=152

    对于一般的ML库,请考虑Torch(截至本文撰写时的版本7): https://github.com/andresy/torch

    橙色系统在C++中实现,可以用作一个库,但重点是将其功能暴露为Python包装,用于灵活脚本和视觉编程: http://orange.biolab.si/