树消除算法

 考虑到这样一个问题,结点关系如下图所示,已知结点G的状态为g=1,那么如何决定A的状态呢?

 

 

树消除算法_第1张图片

 

 

 

其实我们可以用Bayes准则,最大化后验概率(即条件概率),给定G的状态g=1的后验概率如下:

 

它正比于所有结点的全概率。

 

树分解:

如果我们直接枚举,则需要m^5的复杂度,当m增加的时候非常庞大,因此需要进行简化,比如进行树图分解:

树分解的复杂度和每次最多消除的状态数有关,对于上面的例子树图分解的结果如下:

 树消除算法_第2张图片

树消除算法:

1)以每个cluster为根,分别进行叶子至根的消息计算

2)每条边(C1,C2)上有两个消息:   和 

 

3)消息计算的先后顺序

 树消除算法_第3张图片

其中sep算子为取两个集合的交,然后边缘化到这个交集上,从而得到消息传递函数。

 4)最终得到p(a)的后验概率,选择最有可能的状态作为最终结果

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(c,算法)