模型与两种推断方式
p(x) ∝ exp( Σ_i h_i x_i + J Σ_(i,j) x_i x_j ), x_i ∈ {-1,+1}
精确推断
枚举全部 2^9=512 个状态,精确计算归一化常数和每个格点的边缘概率。它是本 demo 的 ground truth。
树近似
从 3×3 网格的 12 条边中选出 8 条构成 spanning tree,在这棵树上运行精确 sum-product。因为树无环,BP 在有限步内精确;但被删除的 off-tree 边不再影响推断。
这里不重新调参数:保留下来的节点证据 h_i 和树边耦合 J 原样使用;没有保留的边等价于把该边耦合设为 0。因此本 demo 展示的是最朴素、最透明的“直接删除边”树近似。
树近似到底做了什么?
在本 demo 中,树近似不学习新参数,也不补偿被删掉的边。操作只有两步:先选择一棵包含全部 9 个格点的树;再把不在树上的边从模型中删除。
这样得到的树模型仍使用原来的局部证据 h_i 和保留边上的同一个 J。优点是推断清楚、快速、可解释;代价是被删除的邻居约束不再传递信息,所以边缘概率可能偏离 exact inference。
如果采用更高级的结构化变分或树加权方法,确实可能重新加权或优化参数;但那已经不是这里的朴素树近似。本页只回答“直接删除边会怎样”。
精确推断
树近似
数值比较:p(x_i=+1)
更偏向 -1
不确定 / 0.5
更偏向 +1
树图橙色边 = 被保留的 spanning tree;灰色虚线 = 被树近似删除的边。