
概率图模型:背景与整体框架
概率图模型(Probabilistic Graphical Models, PGM)可以理解为两件事的结合:一方面,它是用概率分布描述不确定性的概率模型;另一方面,它用图结构把变量之间的依赖关系、条件独立关系和计算结构表达出来。图并不是对概率的替代,而是一种让高维概率分布更容易表示、推断和学习的语言。这篇笔记重点回答一个问题:为什么我们需要概率图模型,以及它的基本框架由哪些部分组成。
1. 为什么需要概率图模型
在机器学习中,我们经常面对由许多变量共同组成的数据对象。设一个样本包含 $p$ 个随机变量:
$$
X=(X_1,X_2,\dots,X_p)
$$
如果要完整描述这些变量的不确定性,就需要考虑它们的联合分布:
$$
P(X_1,X_2,\dots,X_p)
$$
问题在于,当变量数量增加时,联合分布的参数规模会迅速膨胀。对于离散变量,可能的取值组合会随维度指数级增长;对于连续变量,精确计算和存储完整分布同样会变得不可行。这就是高维概率建模中的“维度灾难”。
因此,我们需要一种结构化表示方法。它既要保留变量之间的重要依赖关系,又要利用条件独立性简化模型的表示、计算和学习。概率图模型的目标正是:高效表示高维概率分布。
2. 概率基础:四条常用法则
概率图模型中的许多推导都建立在几个基础概率法则之上。首先是加法法则,也称边缘化。它用于从联合分布中消去不关心的变量。例如:
$$
P(X_i)=\sum_{X_{-i}}P(X_1,\dots,X_p)
$$
其中 $X_{-i}$ 表示除 $X_i$ 之外的其他变量。如果变量是连续的,求和应替换为积分。边缘化的意义是:从完整联合分布中得到某个变量或某组变量的边缘分布。
第二是乘法法则,也叫联合概率分解。对于两个变量,有:
$$
P(X,Y)=P(X)P(Y\mid X)
$$
这个公式说明,联合概率可以写成一个边缘概率与一个条件概率的乘积。
第三是链式法则。它是乘法法则在多变量情形下的推广:
$$
P(X_1,\dots,X_p)=\prod_{i=1}^{p}P(X_i\mid X_1,\dots,X_{i-1})
$$
链式法则告诉我们,任意联合分布都可以展开成一系列条件概率的乘积。但如果每个变量都依赖前面所有变量,这种展开仍然会非常复杂。
第四是贝叶斯法则。对于两个变量 $X$ 和 $Y$,有:
$$
P(X\mid Y)=\frac{P(Y\mid X)P(X)}{P(Y)}
$$
其中分母可以通过边缘化得到:
$$
P(Y)=\sum_x P(Y\mid X=x)P(X=x)
$$
贝叶斯法则的作用是把一个方向的条件概率转化为另一个方向的条件概率。在分类、推断和隐变量模型中,这一点非常重要。
3. 概率图模型的三大支柱
概率图模型通常围绕三类核心任务展开:表示、推断和学习。
表示(Representation) 关注如何编码联合分布。也就是说,我们要决定哪些随机变量作为节点,哪些依赖关系用边表示,以及图结构如何对应联合分布的因子分解。图结构的价值在于,它可以用直观方式表达变量之间的条件独立性,从而避免直接处理庞大的完整联合分布。
推断(Inference) 关注在模型已知的情况下计算我们关心的概率。例如,在给定观测变量后,求某些未知变量的后验分布:
$$
P(\text{未知变量}\mid \text{观测变量})
$$
推断可以分为精确推断和近似推断。精确推断包括变量消除等方法;当图结构复杂、精确计算代价过高时,则需要近似推断,例如 MCMC、变分推断或采样方法。
学习(Learning) 关注如何从数据中得到模型。学习可以是参数学习,也可以是结构学习。参数学习是在图结构给定时估计条件概率表、势函数或其他模型参数;结构学习则进一步尝试从数据中发现变量之间是否有边、边的方向如何以及哪种图结构更合适。对于包含隐变量的模型,还会涉及隐变量学习,典型方法包括 EM 算法。
4. 马尔可夫性质:条件独立的关键思想
概率图模型能够简化高维联合分布,核心依赖条件独立性。直观地说,条件独立性意味着:在给定某些变量之后,另外两组变量之间不再直接相关。
如果随机变量集合 $X_A$ 与 $X_C$ 在给定 $X_B$ 后条件独立,可以写作:
$$
X_A \perp X_C \mid X_B
$$
图中用一个简单结构表达了这一点:当 $X_B$ 位于 $X_A$ 与 $X_C$ 的依赖路径中时,给定 $X_B$ 后,$X_A$ 与 $X_C$ 可以条件独立。
马尔可夫性质可以概括为:每个变量在给定它的邻居之后,与非邻居变量条件独立。也就是说,图中的局部邻接关系决定了变量之间的直接依赖,而更远处的变量可以通过条件独立关系被屏蔽。
这一性质非常关键,因为它让紧凑表示和高效推断成为可能。没有条件独立性,模型往往只能退回到完整联合分布;有了条件独立性,联合分布就可以被拆成更小、更容易处理的局部因子。
5. 三类代表性图模型
概率图模型有多种具体形式。图中列出了三类代表性模型:贝叶斯网络、马尔可夫网络和马尔可夫链。
5.1 贝叶斯网络
贝叶斯网络(Bayesian Network, BN)使用有向无环图(Directed Acyclic Graph, DAG)表示变量之间的条件依赖关系。每个节点表示一个随机变量,有向边表示条件概率依赖。
如果 $Pa(X_i)$ 表示 $X_i$ 的父节点集合,那么贝叶斯网络对应的联合分布分解为:
$$
P(X)=\prod_i P(X_i\mid Pa(X_i))
$$
这种模型适合表达生成过程、因果方向或具有明确条件依赖方向的问题。
5.2 马尔可夫网络
马尔可夫网络(Markov Network, MN),也称马尔可夫随机场,使用无向图表示变量之间的相互作用。无向边只表示变量之间存在关联或局部相互作用,不强调方向。
马尔可夫网络通常用团上的势函数来分解联合分布:
$$
P(X)=\frac{1}{Z}\prod_c \psi_c(X_c)
$$
其中 $c$ 表示图中的团,$\psi_c(X_c)$ 是定义在团 $c$ 上的势函数,$Z$ 是归一化常数,也叫配分函数。无向图模型常用于图像建模、空间结构建模和结构化预测。
5.3 马尔可夫链
马尔可夫链(Markov Chain, MC)是一类具有一阶马尔可夫假设的有向图模型。它假设当前状态只依赖前一个状态,而不直接依赖更早的历史:
$$
P(X_i\mid X_1,\dots,X_{i-1})=P(X_i\mid X_{i-1})
$$
因此,序列变量的联合分布可以写成:
$$
P(X_1,\dots,X_n)=P(X_1)\prod_{i=2}^{n}P(X_i\mid X_{i-1})
$$
如果把初始分布并入统一记号,也可以写成图中所示的乘积形式:
$$
P(X)=\prod_{i=1}^{n}P(X_i\mid X_{i-1})
$$
其中 $X_0$ 可理解为初始条件。马尔可夫链是许多序列模型的基础,隐马尔可夫模型也建立在类似的时间依赖假设之上。
6. 从经典 PGM 到现代概率式 AI
经典概率图模型包括隐马尔可夫模型、条件随机场和因子图。隐马尔可夫模型常用于时间序列中的隐状态建模,例如语音、基因序列和其他序列数据;条件随机场常用于结构化预测,在自然语言处理和计算机视觉中都很常见;因子图则统一表达了有向模型和无向模型中的因子分解形式,也是许多消息传递算法的基础。
现代概率式 AI 中,许多深度生成模型也可以从概率图模型的角度理解。例如,变分自编码器通过潜变量刻画数据的生成过程;扩散模型通过逐步加噪和去噪建立概率生成机制。这些模型虽然通常由深度神经网络参数化,但它们仍然包含概率建模、隐变量、条件分布和推断等思想。
因此,概率图模型并不是一个只属于传统机器学习的主题。它提供了一种理解复杂模型结构的语言,也为现代生成模型和概率式人工智能提供了重要视角。
7. 总结
概率图模型的核心逻辑可以概括为:现实数据往往由许多相互依赖的变量组成,直接建模完整联合分布会遭遇维度灾难;通过图结构表达条件独立性,可以把复杂的联合分布拆解为更小的局部关系,从而让表示、推断和学习变得更可行。
一句话来说:
概率图模型用图结构表达高维随机变量之间的条件独立性,从而高效表示、计算和学习复杂概率分布。