Skip to content

算法Algorithm

Gibbs 采样器

施工中 · 内容逐步修订

Gibbs sampler · Gibbs sampling

轮流从目标联合分布的全条件分布抽取坐标,以条件更新组成保持联合目标不变的 Markov 核。

形式陈述 ​

设目标分布 Π 定义在乘积空间 X1×⋯×Xd,状态写作 x=(x1,…,xd)。假设每个坐标都有可采样的正规全条件分布

Πj(dxj∣x−j),

其中 x−j 表示除第 j 个坐标外的当前值。系统扫描的一轮依次执行

Xj(t+1)∼Πj(⋅∣X1(t+1),…,Xj−1(t+1),Xj+1(t),…,Xd(t)),

从 j=1 更新到 d。输入是当前向量与所有全条件采样器,输出是完成一轮后的向量;中间状态必须立即供后续坐标使用,不能全部仍条件在旧向量上却声称是同一系统扫描核。

一轮的计算成本是各坐标条件抽样与相关缓存更新成本之和,可记为 ∑j=1dCj;Cj 包括形成当前条件参数的工作,不能仅把每个坐标算一次常数操作。逐坐标原位更新保存 O(d) 个状态分量,条件采样器及充分统计量的额外工作存储另计。

单坐标核 Kj 保持 Π。以两个坐标为例,若更新前 (X,Y) 已服从目标联合分布,则更新 X 后,对任意集合 B,C,

P(Xnew∈B,Y∈C)=∫CΠ(B∣y)ΠY(dy)=Π(B×C).

更新没有改变 Y 的边缘分布,又恢复了目标的 X∣Y,所以联合分布也没有改变。故复合核 K=K1K2⋯Kd 也满足 ΠK=Π。系统扫描的整体核一般不必可逆;随机扫描以概率 pj>0 选择一个坐标,核 ∑jpjKj 同样保持目标,并在常见设置下由各 Kj 的可逆性继承可逆性。这里不需要目标归一化常数,因为全条件密度只需按 xj 归一化。

不变性之外,作为MCMC还要验证由条件支持生成的链不可约并正常返。若目标密度在一个乘积支持上处处为正,逐坐标更新通常能穿过这个支持;一般连通支持则未必提供这种坐标可达性。有确定约束、结构零或不相容条件时则不能凭更新形式推断遍历。轨道平均有限样本有相关性和初值偏差,一致性与中心极限定理分别需要相应遍历和矩条件。

全条件族还必须来自同一个正规联合分布。随意拼接几个看似合理的条件模型可能不相容;此时更新仍能形成某条链,却没有所宣称的联合后验作为目标。若只能近似抽全条件,在内层使用 MH 可形成 Metropolis-within-Gibbs,但接受步骤成为正确性的一部分,不能省略。

直觉

联合分布难以一次抽样时,固定其余坐标后的一维或低维切面常很简单。Gibbs 更新沿这些切面交替移动:每一步都把一个坐标“洗回”目标条件律,连续做完一轮仍保持完整联合律。

条件抽样接受率为一并不表示移动有效。若两个参数后验高度相关,固定一个时另一个只能在很窄的条件切面上变化,轨迹会沿斜长脊线以细小之字步前进。坐标选择与参数化决定这种几何,而“每步都接受”看不见它。

Gibbs 的坐标条件折线路径
例子与边界

令二元二值目标为

Y=0Y=1X=00.40.1X=10.20.3.

从 (X,Y)=(0,1) 开始。先更新 X:

P(X=1∣Y=1)=0.30.1+0.3=0.75.

若均匀数为 0.60,得到 X=1。再用这个新值更新 Y:

P(Y=1∣X=1)=0.30.2+0.3=0.60.

若第二个均匀数为 0.70,得到 Y=0,一轮终点为 (1,0)。本轮到达 (1,0) 的概率是 0.75×(1−0.60)=0.30,并非该点的目标质量 0.20。这并不矛盾:不变性要求起点已按整张目标表分布时,一轮后的分布仍是该表;它不要求从每个固定起点走一步就到达目标。实际使用时,可用多轮中的 1{X=1,Y=0} 平均估计 0.20,并计入轮次间相关性。

考虑只在 (0,0) 与 (1,1) 各放一半质量的目标。此时 X∣Y 与 Y∣X 都是确定的:从 (0,0) 出发永远留在那里,从 (1,1) 也一样。两个点的混合目标对核不变,但链分裂成两个闭类,任何长度都不能恢复一半一半。给目标加很小的非对角质量虽恢复不可约,跨越时间仍可能巨大。

另一边界是后验中近确定的层级尺度或强相关回归系数。逐坐标更新会造成极高自相关;把相关坐标分块、中心化或非中心化重参数化可能显著改善,但分块条件必须能精确或经校正地采样。维数增加本身不是结论,关键是条件切面与联合几何是否对齐。

推论与应用

共轭层级模型常把每个全条件化成标准分布,因而把复杂联合后验拆成可审计的抽样步骤。推导时应先写联合密度,再只保留与当前坐标有关的因子并核对正规化;这条链条能发现漏掉 Jacobian、约束或超参数项的错误。

有限Ising模型给这条推导链一个离散图实例:先写全部自旋的正联合质量,再消去与当前位无关的因子,得到局部场的Bernoulli全条件。同步地用旧向量更新所有位则是另一个核,二自旋反例显示它甚至不保持同一目标;热浴这个名称不能省略更新时序。

分块 Gibbs 用联合条件更新一组坐标,减少沿相关脊线的慢行,但大块抽样成本会提高。塌缩 Gibbs 先积分掉某些变量,可降低相关性,却会改变合法更新顺序;在部分塌缩方案中擅自重排步骤可能破坏不变性。优化应以每单位计算时间的函数特定误差为准,而不是以“每轮更新了多少坐标”计数。

对严格正的有限乘积目标,Dobrushin影响矩阵把预定扫描的差异写成可计算预算。改变坐标j对第i个全条件的影响放在第i行第j列,每次更新立即替换误配向量相应分量。它可分别认证指定边缘与联合事件,且明确排除未经校正的状态依赖选点。

参考资料
  • Aditya Guntuboyina, “STAT 238 — Bayesian Statistics, Lecture Twenty Six”, UC Berkeley,2026,“The Gibbs Sampler” 与 “Bivariate Normal”,条件更新及退化支持的反例。

  • Stuart Geman and Donald Geman, “Stochastic Relaxation, Gibbs Distributions, and the Bayesian Restoration of Images,” IEEE Transactions on Pattern Analysis and Machine Intelligence 6(6), 1984, pp. 721–741.

  • Alan E. Gelfand and Adrian F. M. Smith, “Sampling-Based Approaches to Calculating Marginal Densities,” Journal of the American Statistical Association 85(410), 1990, pp. 398–409.

  • George Casella and Edward I. George, “Explaining the Gibbs Sampler,” The American Statistician 46(3), 1992, pp. 167–174.

关系图谱13 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系