【问题标题】:Different factor graphs from a bayesian network来自贝叶斯网络的不同因子图
【发布时间】:2022-08-21 13:01:59
【问题描述】:
我想知道是否可以将贝叶斯网络转换为几种不同形式的因子图,但仍保持与原始贝叶斯网络相同的条件概率。这样我们仍然可以通过因子图上的消息传递进行推断。
从下图中,我的直觉是我们可以将贝叶斯网络中的条件概率表转换(或重新计算/重新分配)到转换后的因子图上的所有因子节点。但我不确定如何进行计算。
那么任何人都可以帮助我解决这个问题,可能是这些图表上因子节点的条件概率表示例?
感谢您的帮助和建议...
标签:
graph
refactoring
probability
distribution
bayesian
【解决方案1】:
因子图描述了一个函数在较小函数(变量数量较少的函数)乘积中的分解。贝叶斯网络描述了条件(或边际)概率分布乘积中联合概率分布的因式分解。每个概率分布都可以看作一个函数。因此,有一个(唯一的)因子图描述了与贝叶斯网络完全相同的联合分布分解。每个因子节点恰好代表 BN 中的一个条件概率分布。
例如,贝叶斯网络A->B 对分解P(A,B)=P(A).P(B|A) 进行编码。因此,可以使用 2 个因子 f(A)=P(A) 和 f(A,B)=P(B|A) 构建一个表示 f(A,B)=P(A,B) 的因子图。
在https://pyagrum.readthedocs.io/en/1.3.0/notebooks/23-Models_MarkovNetwork.html 中,您可以看到(在单元格 14 中)对应于贝叶斯网络(在单元格 13 中)的因子图。在下面的单元格中,您可以看到 2 种表示中的一些计算测试。