贝叶斯网络图书馆

时间:2010-12-19 14:58:29

标签: machine-learning bayesian-networks

Hello号码计数器

正如标题所示,我正在寻找一个用于学习和推理贝叶斯网络的图书馆。我已经找到了一些,但我希望得到一个推荐。

快速概述中的要求:

  • 最好用Java或Python编写
  • 配置(也是网络本身)是a)可能和b)可能通过代码(而不仅仅是通过GUI)。
  • 可用源代码
  • 项目仍然维护
  • 越强大,越好

你推荐哪一个?

3 个答案:

答案 0 :(得分:11)

看看Weka。它在我的脖子上很受欢迎......它是开源的,用Java编写。

This将从摘要中告诉你Weka中的贝叶斯网络:

  • 贝叶斯的结构学习 使用各种爬山的网络 (K2,B等)和一般用途 (模拟退火,禁忌搜索) 算法。
  • 本地得分指标 实施;贝叶斯,BDe,MDL, 熵,AIC。
  • 全球得分指标 实施;留下一个cv,k-fold cv和累积cv。
  • 条件 基于独立的因果恢复 算法可用。
  • 参数 估计使用直接估计和 贝叶斯模型平均。
  • GUI for 轻松检查贝叶斯网络。

答案 1 :(得分:8)

所以在这里我给出了主观的答案。

根据我的经验,与统计相关的所有内容最好用R来解决。我经常看到,在与统计相关的领域中,R拥有最多的库,并且通常是最先进的算法/方法。

像我这样的大多数程序员喜欢使用他们所熟悉的语言,而学习新东西是一种权衡,主要是因为它很耗时。

因此,如果学习一门新语言是一个可行的选择,R是一个不错的选择,在我看来是最好的选择。

简要介绍与贝叶斯网络和贝叶斯干扰相关的R库。

贝叶斯: http://cran.r-project.org/web/views/Bayesian.html

图形模型: http://cran.r-project.org/web/views/gR.html

机器学习: http://cran.r-project.org/web/views/MachineLearning.html

R的主要优点:
   - 易于安装库:install.packages(“RWeka”)
   - 所有图书馆的帮助格式和风格相同    - 如果你知道R,很容易从一个库切换到下一个库。所以很容易测试所有可用的库,然后使用最适合的库

答案 2 :(得分:2)

从未使用它,但是MALLET库可能符合要求吗?