Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis

Variable Elimination Complexity

Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis消元Z主要有两步,一步是因子求积,第二步是边缘化,即对所有含有Z的因子进行一个求和,得到一个新的因子,并将变量Z边缘化掉。因此,每一个因子乘积最多被加一次(消元变量和他无关的时候就不用加这个因子了)。
Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis想要消元B,做因子乘积的时候,把和b有关的因子乘积乘起来,为了求右边那个大表格的每一行,我们需要乘以的二元因子数量是mk1m_{k}-1,如为了求取3个变量的联合分布需要把两个因子相乘。NkN_{k}就是你这scope的排列组合数量,23=82^{3}=8。因此整体的计算负担为Nk(mk1)N_{k}*(m_{k}-1)

Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis而在消元过程中,我们实际上需要累加所有的情况,因此,NkN_{k}就是计算量,需要被累加元素的个数。
Daphne Koller 概率图模型原理与技术(5)- Variable Elimination AnalysisDaphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis

Elimination on Graph

Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis 在消元的时候,我们涉及的变量越多,消元复杂度就越高。所以我们尽量应该选择孤独的变量来进行消元。首先我们需要把贝叶斯网络中的V-structure添加边变成马尔可夫网络。因为,V-Structure中的三个变量是通过条件概率对应的三元因子联系在一起的。
Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis由于对I的消元,我们生成了一个fill-edge,因为和I有关的因子被求和成了一个τ\tau,这个新因子包含的元素被联系在了一起。

Finding Elimination Order

Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis很遗憾又是NP-HARD。只能用一些贪婪搜索算法之类的。只能搞一些启发式算法,这些算法都不能保证找到最好的顺序。
Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis这些方法不保证好使。。。
Daphne Koller 概率图模型原理与技术(5)- Variable Elimination Analysis但是在某些情况下,如机器人SLAM中,用MIN-FILL就可以实现BA图模型的稀疏性,毕竟别人发了IJRR