pgmpy 返回不正确的条件概率
pgmpy returning incorrect conditional probabilities
我正在尝试使用 pgmpy Python package 来学习一组特定状态之间的转换概率,但是当我拟合模型时,我发现条件概率不正确。
作为我正在谈论的这类问题的一个非常简化的例子,考虑由两个状态 A 和 B 组成的贝叶斯网络,具有从 A 到 B 的单个有向边 运行。并且假设我们已经观察到只要 A 为零,B 就为一,而只要 A 为一,B 就为零。描述这种情况的代码由:
import pandas as pd
from pgmpy.models import BayesianModel
data = pd.DataFrame(data={'A': [0, 0, 1, 1, 1, 1], 'B': [1, 1, 0, 0, 0, 0]})
model = BayesianModel([('A', 'B')])
model.fit(data)
然而,当我们通过调用 model.cpds[1]
检查拟合条件概率时,我们发现 pgmpy 已经学习了以下内容:
+------+------+------+
| A | A(0) | A(1) |
+------+------+------+
| B(0) | 0.5 | 0.5 |
+------+------+------+
| B(1) | 0.5 | 0.5 |
+------+------+------+
什么时候应该学会
+------+------+------+
| A | A(0) | A(1) |
+------+------+------+
| B(0) | 0.0 | 1.0 |
+------+------+------+
| B(1) | 1.0 | 0.0 |
+------+------+------+
有人可以向我解释一下这是怎么回事吗?这是一个极其基础的例子,感觉自己要疯了。谢谢
可通过 pip
安装的 pgmpy 版本有一个错误,导致它无法正确计算条件概率。从 git 克隆开发存储库并手动安装它可以解决此问题。感谢@lstbl 在这里解决这个问题:https://stats.stackexchange.com/questions/292738/inconsistencies-between-conditional-probability-calculations-by-hand-and-with-pg
我正在尝试使用 pgmpy Python package 来学习一组特定状态之间的转换概率,但是当我拟合模型时,我发现条件概率不正确。
作为我正在谈论的这类问题的一个非常简化的例子,考虑由两个状态 A 和 B 组成的贝叶斯网络,具有从 A 到 B 的单个有向边 运行。并且假设我们已经观察到只要 A 为零,B 就为一,而只要 A 为一,B 就为零。描述这种情况的代码由:
import pandas as pd
from pgmpy.models import BayesianModel
data = pd.DataFrame(data={'A': [0, 0, 1, 1, 1, 1], 'B': [1, 1, 0, 0, 0, 0]})
model = BayesianModel([('A', 'B')])
model.fit(data)
然而,当我们通过调用 model.cpds[1]
检查拟合条件概率时,我们发现 pgmpy 已经学习了以下内容:
+------+------+------+
| A | A(0) | A(1) |
+------+------+------+
| B(0) | 0.5 | 0.5 |
+------+------+------+
| B(1) | 0.5 | 0.5 |
+------+------+------+
什么时候应该学会
+------+------+------+
| A | A(0) | A(1) |
+------+------+------+
| B(0) | 0.0 | 1.0 |
+------+------+------+
| B(1) | 1.0 | 0.0 |
+------+------+------+
有人可以向我解释一下这是怎么回事吗?这是一个极其基础的例子,感觉自己要疯了。谢谢
可通过 pip
安装的 pgmpy 版本有一个错误,导致它无法正确计算条件概率。从 git 克隆开发存储库并手动安装它可以解决此问题。感谢@lstbl 在这里解决这个问题:https://stats.stackexchange.com/questions/292738/inconsistencies-between-conditional-probability-calculations-by-hand-and-with-pg