概率图模型-7.团树传播算法


1.节点的势函数初始化
对应到j这个节点的因子做一个连乘积,就是j节点里面的全部因子
2.选取根节点,这个好说
3.计算消息,这个复杂了
\(以i到j节点为例\)
\(先计算除了j之外,i的其他邻居节点到i的消息,这个例子里面是s到i,t到i的消息(\delta_{k\to j}),k\in (Nb_i-{j}),k属于i的邻居节点(Nb_i) 减去j这个节点\)
\(再乘以i这个节点的势函数\psi_i\)
\(做完连乘积后,再做求和边缘化\)
\(S_{ij}代表i到j的一个割集\)
\(求和边缘化的操作是 i中的变量(C_i)减去割集中的变量(S_{ij}),对剩余的变量做求和边缘化\)
\(4.根节点的势函数乘以邻居节点的消息,和上面类似\)
\(5.计算X所在节点的边缘概率\)
\(节点r的势函数已经求出来了,对r中的元素(scope[r])减去X做求和边缘化\)

案例
这里第一步做了一个简化,原则是若相邻两个节点的变量,一个是另外一个的子集,那就把子集那个节点消去了,有点像剪枝的操作,这个里面7是6的子集,消去7,消去后的6又是5的子集,就消去了6
保留1,2,3,5,4

传递消息

同时计算所有节点的边缘概率