连接树算法:原理、构建与应用详解
1. 连接树的定义与构建
连接树(Junction tree)是通过寻找团图(clique graph)的最大权重生成树得到的。树的权重定义为树中所有分隔符权重之和,其中分隔符权重是分隔符中变量的数量。如果团图包含环,则环上的所有分隔符都包含相同的变量。通过持续移除环上的链接,直到得到一棵树,我们就得到了连接树。
例如,对于图 6.4(a) 中的信念网络,经过道德化(moralisation)过程得到图 6.4(b)。识别该图中的团并将它们连接起来,得到图 6.4(c) 中的团图。从这个团图中可以得到多个可能的连接树,图 6.4(d) 给出了其中一个。
2. 为团分配势函数
给定一个连接树和一个定义为一组势函数 $\varphi(X_1), \ldots, \varphi(X_n)$ 乘积的函数,一个有效的团势函数分配是将势函数放置在连接树的团中,使得这些团的变量能够包含这些势函数,并且连接树团势函数的乘积除以连接树分隔符势函数等于该函数。
一种简单的实现方法是列出所有势函数,并任意排列连接树的团。然后,对于每个势函数,遍历连接树的团,直到找到第一个其变量是势函数变量子集的团。随后,每个连接树团上的势函数取分配给该团的所有团势函数的乘积。最后,将所有连接树分隔符的势函数设为 1。
例如,对于图 6.4(a) 中的信念网络,将其势函数分配到图 6.4(d) 的连接树中,分配结果是唯一的:
$\varphi(abc) = p(a)p(b)p(c|a, b)$
$\varphi(dce) = p(d)p(e|d, c)$
$\varphi(cf) = p(f|
超级会员免费看
订阅专栏 解锁全文
1350

被折叠的 条评论
为什么被折叠?



