背景
我们可以将复杂问题转换成稀疏问题,稀疏性可以直接通过查看因子图来理解。从下图中我们可以很清楚的知道该因子图是稀疏的。接下来,我们将充分理解问题的稀疏结构,并介绍如何使用消元算法来有效地求解MAP推理问题。
稀疏矩阵及其因子图
我们将从上文提到的因子图入手,分析如何从数学表达式到图的表达,充分理解稀疏性和条件独立性如何在图中体现。根据上文的推导,我们得到了线性化和白化之后的最小二乘表达式:
矩阵Ai可以分解为对应于每个变量的块,并收集在一个大的块稀疏雅可比矩阵中。
举个例子,设Ax=b的增广矩阵形式为下式,其对应的因子图如下图所示。
通过上文可知,求解该最小二乘问题可以采用Cholesky分解,前文已经介绍过,这里直接展示公式。
其信息矩阵计算后如下
通过构造,Λ是一个对称矩阵,并且如果问题存在唯一的MAP解,则它也是正定的。此处,我们可以看见信息矩阵与因子图的关系,接下来,我们将介绍另一种图与信息矩阵的对应关系——马尔科夫随机场,这种图可以很清楚的展现变量之间的相互关系。
稀疏矩阵及其马尔科夫随机场
马尔科夫随机场的定义
马尔科夫随机场(Markov Random Field,MRF)是一种无向图,其节点表示变量,边表示变量之间的依赖关系。MRF的核心特性是满足局部马尔科夫性(Local Markov Property):一个变量在给定其所有邻居节点的条件下,独立于图中的其他节点。这条性质可以让我们在马尔科夫随机场中轻松的识别出变量之间的独立性关系。
其联合概率可表示为所有团的势函数乘积的归一化形式:
其中Z是归一化常数(配分函数),ϕC是团C的势函数。
上述为一般MRF的联合概率,在计算机视觉和图像处理领域,成对MRF被广泛应用,概率密度表达式为
V是节点的集合,E是边的集合,这里也就是节点势函数乘边的势函数除归一化因子。
其最大后验概率推理问题为
也就是在全局函数中找到一个未知数x*,使得p(x*) 最大。
同时,这里求解最大后验推理可等价为能量最小化问题。
设
则能量最小化问题可以表示为
信息矩阵Λ与马尔科夫随机场的关联
信息矩阵Λ已给出变量之间的相互关系,我们可以按照“非零块表示变量间直接交互,用一条边连接,零块表示无交互”的规律画出马尔科夫随机场,如图所示。这将信息矩阵和马尔科夫随机场关联起来。
MRF的缺陷
1、因子图能表达更细粒度的因子分解(如三元或更高阶因子),而转换为MRF时,这些因子会形成无向完全连接子图(clique),但丢失因子来源的具体信息。
2、在线性代数中,不同的矩阵A可能生成相同的Λ=A⊤A,导致矩阵稀疏性信息丢失(无法追溯原始问题中因子的具体形式)。
虽然MRF能够表示联合概率分布,但其无向图的团结构可能导致推断过程复杂度较高。并且,当我们需要更高精度的描述时,更适合采用因子图来建模。
消除算法
因子图提供了更细粒度的因子分解,但在某些情况下,将其转换为贝叶斯网络可以更高效地进行推断,消除算法正是实现这种转换的工具,因子图直接来自测量数据,消除算法帮助将这些因子转化为贝叶斯网络结构,从而简化后续的推断过程。
下面我将介绍如何从因子图通过消除算法转换为贝叶斯网络。
核心步骤:
1、首先,我们先确定消除顺序,消除顺序的详细介绍将放在下一章。假设此处的消除顺序为
。
2、第一步是消除 ,这一步需要收集所有与之直接相连的因子,并将其合并为一个乘积因子
。此处我们可以直接从稀疏雅可比矩阵中得到,与之有关的因子有
。
将这些约束拼接起来,可得到
每个因子对应一个线性约束,这里合并的因子为
这里 中
,分隔器
。
2、矩阵分解。将合并后的矩阵分解为条件概率和剩余因子。对增广矩阵进行部分QR分解。QR分解通过正交变换 Q 将原系统转换为上三角形式,使得被消除变量 的方程独立于后续变量。
是上三角矩阵,对应被消除变量
的系数;
是分隔器变量
的系数块;
和
是剩余因子的矩阵和向量。
3、提取条件概率参数、生成剩余因子
分解后的系统可等价于下面两个方程
条件概率方程:
剩余因子方程:
条件概率形式(假设噪声服从高斯分布):
生成剩余因子:
被传递到后续变量消除步骤中,作为新的因子参与计算。在消除变量
这个例子中,变量
写成了条件概率的形式,转换成了贝叶斯网络两条有向直线(黑箭头所示)。变量
合成了一个新的因子,在因子图中新建了一条连接线(红线所示)。这个过程如下图所示。
5、接着重复上述步骤,直至将因子图转换成贝叶斯网络。
Cholesky因子与贝叶斯网络的等价性
Cholesky因子的上三角结构对应有向无环图,即贝叶斯网络的结构。稀疏矩阵的三角分解(如Cholesky分解)与变量消除(Variable Elimination)在概率推理中具有等价性。
综上,我们可以知道,因子图是稀疏雅可比矩阵的图形化体现,MRF可以与信息矩阵Λ相关联,贝叶斯网络揭示了Cholesky因子的稀疏结构。至此,我们更加理解问题的稀疏结构。
后向替代求解MAP估计
通过反向消除顺序(从最后一个消除的变量开始),逐步计算每个变量的MAP估计:
求解
其中 是其父节点的最优值,
为上三角矩阵。
由于贝叶斯网络是有向无环图,可以确保父节点变量 在
之前已被处理,因此
已确定。
举个例子来理解 为什么在在之前就已被确定。
假设一个简单贝叶斯网络:
反向求解顺序:
步骤 1:求解 x3,无依赖(S3=∅),直接计算。
步骤 2:求解 x2,需 S2={x3},此时 x3 已确定。
步骤 3:求解 x1,需 S1={x2},此时 x2 已确定。
由此,我们介绍了如何使用消元算法来有效地求解SLAM中线性系统的MAP推理问题。
参考
1.《Factor Graphs for Robot Perception》