稀疏贝叶斯网络的因式分解
1. 引言
贝叶斯网络(BNs)是用于表示和编码不确定专家知识的概率图形模型。在决策和统计推断中处理不确定性方面表现出色,已有许多用于贝叶斯网络推理的算法。本文提出的并行算法基于Cozman(2000)的顺序变量消除算法,结合了稀疏矩阵因式分解方法,将推理过程分为符号阶段和数值阶段,旨在实现高效的并行推理。
2. 贝叶斯网络推理
- 贝叶斯网络结构 :贝叶斯网络由有向无环图(DAG)和局部概率密度组成。DAG定义网络结构,编码变量间的条件依赖关系;每个节点代表一个随机变量,节点间的弧表示变量间的直接依赖关系,其强度由条件概率分布表示。基于马尔可夫条件,贝叶斯网络编码唯一的概率分布:$P(X) = \prod_{i} P(X_{i} |X_{pa(i)})$。
- 推理查询 :贝叶斯网络推理基于查询,需计算查询变量$X_{Q}$在观察变量$X_{E}$给定条件下的后验边际分布。后验概率公式为:
$P(X_{Q} |e) = \frac{P(X_{Q},e)}{P(e)} = \frac{\sum_{X{X_{Q},X_{E}}} P(X)}{\sum_{X\X_{E}} P(X)}$ - 高效计算要点
- 确定必要变量 :并非所有变量都用于计算后验概率,可使用Bayes - Ball算法确定必要变量$X_{R}$,减少问题维度。
- 避免中间归一化 :中间