问题标签 [pomegranate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2710 浏览

python - 石榴中贝叶斯网络的样本

from_samples()我用石榴构建了一个贝叶斯网络。我能够从模型中获得最大可能的预测model.predict()。我想知道是否有一种方法可以有条件地(或无条件地)从这个贝叶斯网络中采样?即是否有来自网络的随机样本而不是最大可能的预测?

我看了看model.sample(),却是扬起NotImplementedError

此外,如果使用 无法做到这一点pomegranate,那么还有哪些其他库对 Python 中的贝叶斯网络非常有用?

0 投票
3 回答
807 浏览

bayesian-networks - Pomegranate 中的贝叶斯网络:ValueError:样本与模型的维数不同

我正在尝试使用 Pomegranate 包在 python 中建模贝叶斯网络。网络应该从数据中学习。所以我正在使用 .from_samples 方法。但是我在使用 .predict_proba() 方法时遇到了问题,它给了我错误。

这就是我构建模型的方式:

这就是我做预测的方式:

这是我得到的错误:

ValueError:样本的维数与模型的维数不同。您的帮助将不胜感激。

0 投票
2 回答
1363 浏览

python - 无法绘制石榴图(未找到 pygraphviz)

我不明白发生了什么,但我似乎不再能够从 PyCharm 内部绘制石榴图。我使用 conda 作为包管理器,并且已经完成了通常的操作:

但每次我model.plot()从 PyCharm 内部打电话时,我都会得到

我显然已经尝试过安装pygraphviz,但似乎没有什么区别

0 投票
1 回答
559 浏览

python - 使用 Pomegranate 拟合 Beta 分布

我正在尝试使用库pomegranate来近似 Beta 分布。但是,当我尝试从生成的数据中近似参数时,我得到了非常不同的参数。重现此类错误的代码如下

我不确定错误来自哪里。似乎测试文件test_distributions.py产生了正确的答案。如果有任何关于如何修复pomegranate或创建自定义模型的pomegranate建议将不胜感激。

注意我正在使用Python 3.6.8

0 投票
3 回答
307 浏览

python - 石榴无法检测到现有的pygraphviz

我正在尝试在 python 3.7、Win 10 环境中使用 Pomegranate 包。

我在安装 pygraphviz 包时遇到了麻烦(这是一场噩梦)。我终于在这篇文章之后安装了这个包。现在,当我尝试使用 pomegranate 时,它​​会抛出错误“必须安装 pygraphviz 以进行可视化”。我通过运行此文件确认 pygraphviz 已安装在我的系统上。

为什么石榴无法找到我的 pygraphviz 包?

在此处输入图像描述

0 投票
1 回答
203 浏览

python-3.x - AssertionError: model.start 应该有两条边,Rainy 有两条,Sunny 有两条

当我在 HMM 中制作模型时遇到问题 AssertionError 但无法弄清楚问题是什么?

AssertionError: model.start 应该有两条边,Rainy 有两条,Sunny 有两条

0 投票
5 回答
1726 浏览

python - Python 中的贝叶斯网络:构建和采样

对于一个项目,我需要创建包含属性之间特定依赖关系的综合分类数据。这可以通过从预定义的贝叶斯网络中采样来完成。在互联网上进行了一些探索后,我发现这Pomegranate是贝叶斯网络的一个很好的包,但是 - 就我而言 - 从这样一个预定义的贝叶斯网络中采样似乎是不可能的。作为一个例子,model.sample()提出了一个NotImplementedError(尽管这个解决方案是这样说的)。

有谁知道是否存在为贝叶斯网络的构建和采样提供良好接口的库?

0 投票
1 回答
84 浏览

python - 如何在石榴中加入先验信息?换句话说:石榴支持增量学习吗?

pomegranate假设我使用当时可用的数据拟合模型。一旦有更多数据进入,我想相应地更新模型。换句话说,是否可以在pomegranate不覆盖先前参数的情况下用新数据更新现有模型?需要明确的是:我不是指核外学习,因为我的问题与在不同时间点可用的数据有关,而不是在单个时间点提供过大的内存数据。

这是我尝试过的:

编辑

提出问题的另一种方式:是否pomegranate支持增量学习或在线学习?基本上,我正在寻找与scikit-learn's类似的东西partial_fit(),你可以在这里找到。

鉴于它pomegranate支持核心外学习,我觉得我忽略了一些东西。有什么帮助吗?

0 投票
0 回答
1687 浏览

python - 贝叶斯网络:与 R 相比,Python 中的结构学习非常慢

我目前正在研究使用贝叶斯网络对图像进行图像分类的问题。我试过使用pomegranate,pgmpybnlearn. 我的数据集包含超过 200,000 张图像,我在这些图像上执行了一些特征提取算法并获得了大小为 1026 的特征向量。

pgmpy

石榴

学习

用 R编写的程序在bnlearn几分钟内完成运行,而pgmpy运行数小时,石榴在几分钟后冻结了我的系统。您可以从我的代码中看到,我提供了前 20 行,用于在这两个程序中进行训练,同时pgmpy获取整个数据帧。由于我在 python 中进行所有图像预处理和特征提取,因此我很难在 R 和 python 之间切换进行训练。pomegranatebnlearn

我的数据包含从 0 到 1 的连续值。我还尝试将数据离散化为 0 和 1,但这并没有解决问题。

有什么方法可以加快这些 python 包的训练速度,还是我的代码做错了什么?

感谢您提前提供任何帮助。

编辑:

https://drive.google.com/file/d/1HbAqDQ6Uv1417zPFMgWBInC7-gz233j2/view?usp=sharing

这是具有 300 列和约 40000 行的数据集。如果您想尝试重现输出。

0 投票
1 回答
465 浏览

python - 在我的代码中安装 Pomegranate 的问题

大家好,所以对于我的编码课,我想使用概率测试其中一个练习示例。该文件导入 Pomegranate,但是当我尝试安装 Pomegranate 时,它​​一直给我这个错误:在此处输入图像描述