2. 马尔可夫链基础
马尔可夫链蒙特卡洛(MCMC)的“马尔可夫链”不是装饰词,它决定了采样器能否收敛、收敛到哪里、以及我们凭什么相信样本代表目标分布。本节把四个核心概念串成一条逻辑线:状态转移描述链怎么走,平稳分布描述链最终停在哪里,细致平衡给出构造平稳分布的充分条件,遍历性保证无论从哪个状态出发都能到达并停留在平稳分布上。最后用一个三状态的小例子,手算几步转移,观察分布如何收敛。
状态转移:用转移矩阵描述“下一步只依赖现在”
设状态空间为有限集合,例如 {A, B, C}。马尔可夫性指:给定当前状态,下一步的状态分布与更早的历史无关。把所有一步转移概率排成矩阵 P,其中 Pij 表示从状态 i 转移到状态 j 的概率,每行之和为 1。若用行向量 πt 表示第 t 步处于各状态的概率,则一步演化就是 πt+1 = πtP。
取一个具体例子(示例参数,非实测):
P = [[0.5, 0.3, 0.2],
[0.2, 0.6, 0.2],
[0.3, 0.3, 0.4]]
含义是:在 A 时有 50% 留在 A、30% 去 B、20% 去 C;在 B 时有 20% 回 A、60% 留在 B、20% 去 C;在 C 时三个去向分别为 0.3、0.3、0.4。注意对角线元素较大,链有“黏在当前位置”的倾向,这在 MCMC 中对应较高的接受率或较小的提议步长。
平稳分布:链的“不动点”
若某个概率分布 π 满足 πP = π,且各分量非负、和为 1,则称 π 为该链的平稳分布。直观地说,一旦链的分布达到 π,再走一步分布仍是 π,整体形态不再变化。平稳分布是 MCMC 的目标:我们设计转移规则,使目标分布 p(x) 恰好成为链的平稳分布,于是长期运行后样本的分布就逼近 p(x)。
对上例求解 πP = π 并归一化,可得平稳分布约为 π ≈ (0.316, 0.421, 0.263)(示例计算结果,保留三位小数)。可以验证:0.316×0.5 + 0.421×0.2 + 0.263×0.3 ≈ 0.316,其余分量同理。这个分布不是均匀的,说明链有偏好的“常住区域”,这正是 MCMC 想要的性质——让样本按目标概率密度聚集。
细致平衡:构造平稳分布的充分条件
直接解 πP = π 在状态多时很麻烦。细致平衡条件给出更易操作的充分条件:若存在分布 π 使得对所有 i、j 都有
π_i · P_ij = π_j · P_ji
则 π 必为平稳分布。原因是把等式两边对 i 求和,左边得到 (πP)j,右边得到 πj·ΣiPji = πj,于是 πP = π。细致平衡的物理含义是“任意两个状态之间的概率流双向相等”,链在微观层面没有净环流。Metropolis-Hastings 正是通过设计接受概率,把任意提议分布“修正”成满足细致平衡的形式,从而让目标分布成为平稳分布。需要强调:细致平衡是充分条件而非必要条件,存在满足平稳性但不满足细致平衡的链(如有净环流的周期链),但 MCMC 构造中我们几乎总是主动追求细致平衡,因为它可操作、可验证。
遍历性:从任意起点都能收敛
有平稳分布还不够,还要保证链真的会到达它。遍历性通常包含两层:不可约——任意两个状态之间都能以正概率在有限步内互达;非周期——不存在把所有状态按固定周期循环的划分。有限状态、不可约且非周期的链是遍历的,此时对任意初始分布 π0,都有 πt → π(按分量收敛),且时间平均也收敛到空间平均。上例的 P 所有元素为正,显然不可约且非周期,因此是遍历的。
反过来,若链可约(例如两个互不连通的子集),从不同起点会收敛到不同的平稳分布,样本就不能代表全局目标;若链周期(例如确定性地 A→B→C→A 循环),分布会在几个状态间振荡而不收敛。MCMC 实践中,提议分布过窄可能导致不可约性变差(难以跨越低概率区域),提议分布过宽则接受率过低、链几乎不动,二者都会拖慢收敛。
手算几步,观察收敛行为
从确定状态 A 出发,即 π0 = (1, 0, 0)。按 πt+1 = πtP 逐步计算(示例计算,保留三位小数):
| 步数 t | P(A) | P(B) | P(C) | 观察 |
|---|---|---|---|---|
| 0 | 1.000 | 0.000 | 0.000 | 起点确定在 A |
| 1 | 0.500 | 0.300 | 0.200 | 直接读出 P 的第一行 |
| 2 | 0.350 | 0.390 | 0.260 | 快速向中间靠拢 |
| 3 | 0.325 | 0.408 | 0.267 | 变化幅度明显减小 |
| 5 | 0.317 | 0.419 | 0.264 | 已非常接近平稳分布 |
| 8 | 0.316 | 0.421 | 0.263 | 与 π 在三位小数内一致 |
可以看到两个现象。第一,初始分布的影响迅速衰减:第 1 步还带着“从 A 出发”的强烈印记,到第 3 步已经很难看出起点。第二,收敛速度由 P 的第二大特征值模长决定,本例中该值约为 0.3 量级,因此误差大约每步缩小到三分之一,几步之后就进入平稳区。这解释了 MCMC 中“预热期(burn-in)”的由来:需要丢弃链达到平稳之前的样本。
把四个概念连起来看
在 MCMC 实践中,这四个概念对应四个必须检查的问题:转移核是否让目标分布满足细致平衡(构造正确性);目标分布是否为该核的平稳分布(收敛目标正确);链是否遍历(能否到达、是否会被周期卡住);实际运行中分布是否已经平稳(预热是否足够、样本是否可用)。前三个是设计阶段的数学保证,最后一个是运行阶段的诊断任务。一个常见的误区是只验证了细致平衡就认为万事大吉,却忽略了遍历性——例如提议分布方差设得过小,链在局部来回打转,虽然细致平衡成立,但混合极慢,有限步样本仍严重偏离目标。