Skip to content

HMC 的 leapfrog 积分器

Leapfrog integrator for HMC · Störmer–Verlet integrator for HMC

以半步动量、整步位置、半步动量的对称组合,离散 HMC 的可分 Hamilton 方程并保持可逆与辛结构。

领域
统计学
条目类型
算法

形式陈述

考虑可分Hamilton 系统

H(q,p)=U(q)+12pTM1p,M0,

其中 q,pRdU 可微。给定步长 ϵ,一次 leapfrog(Störmer–Verlet)更新依次为

pn+1/2=pnϵ2U(qn),qn+1=qn+ϵM1pn+1/2,pn+1=pn+1/2ϵ2U(qn+1).

输入是 (qn,pn)M、步长与势能梯度;输出是更新后的相空间点。L 步轨迹就是这张映射的 L 次复合,共需初始一次梯度,之后相邻步可复用端点梯度。若任何梯度或状态非有限,更新必须失败并把该 HMC 提议视作不可接受,而不能继续传播 NaN。

三段更新都是剪切映射,Jacobian 行列式为一;组合因而保持相空间体积。令动量翻转 R(q,p)=(q,p),更新映射 Φϵ 满足

RΦϵR=Φϵ1.

这种时间对称性和辛性使它适合作为 HMC 的确定性提议。它一般不精确保持 H,所以完整采样器仍需根据总能量误差做 Metropolis 校正。若解在固定时间区间足够光滑,单步局部误差为 O(ϵ3),固定总积分时间的全局状态误差为 O(ϵ2);这些阶数是 ϵ0 的结论,不是任意步长下的误差上界。

leapfrog 对可分 Hamiltonian 可以显式计算。若动能不可分、质量矩阵依赖位置或含约束,以上三行不再是对应系统的正确积分器,可能需要隐式或广义辛方法。形式相似的 Euler 更新既不时间对称,能量误差也可能系统漂移;少一次梯度并不补偿错误的长程几何。

直觉

先用当前位置的力推动半步动量,再让这个居中动量推动整步位置,最后用新位置的力补齐另半步。两侧完全对称,所以把时间和动量反过来能逐段撤销。半步并非记账技巧,而是让位置和动量在同一时间中心对齐。

辛性不等于每步能量不变。它让离散轨迹精确对应一个邻近的“修正 Hamiltonian”,于是稳定区内的能量误差多为有界振荡,而不是随步数单向累积。HMC 再用首尾真实能量差校正剩余误差。

例子与边界

对一维标准正态势能 U(q)=q2/2,取 M=1(q0,p0)=(1,0.5)ϵ=0.2。一轮为

p1/2=0.50.1(1)=0.6,q1=1+0.2(0.6)=0.88,p1=0.60.1(0.88)=0.688.

真实能量从 H0=12/2+(0.5)2/2=0.625 变为

H1=0.882/2+(0.688)2/2=0.623872,

误差为 0.001128。若从 (q1,p1) 用同一步长更新再翻转动量,代数上返回 (q0,p0);这项可逆性正是接受校正能配对正反提议的条件。

步长存在真实稳定边界。对同一单位谐振子,一步映射矩阵为

(1ϵ2/2ϵϵ(1ϵ2/4)1ϵ2/2).

只有 0<ϵ<2 时特征值位于单位圆上;取 ϵ=2.1 会进入线性不稳定区,位置、动量和能量沿步数指数增长。Metropolis 步最终会拒绝这些轨迹,保证目标不变,却造成链连续停留。对多尺度后验,最尖锐方向决定全局可用步长,因此宽阔方向可能被迫走很多小步。

有限精度还会使理论可逆性出现舍入差,但通常远小于截断误差;若梯度含不连续分支、随机噪声或状态相关近似容差,反演差可显著放大。此时不能只靠最终接受率判断映射是否仍满足 HMC 的提议假设。

推论与应用

HMC中,步数 L 与步长 ϵ 分别控制轨迹时间和离散精度。固定 Lϵ 而缩小 ϵ 会降低能量误差,却线性增加梯度成本;选择应按每次梯度带来的有效移动衡量。质量矩阵先重标度曲率,可放宽由最尖方向施加的步长限制。

调试顺序应从单步公式开始:核对梯度符号,检查动量翻转后的往返误差,再观察 ΔHϵ 缩小时是否呈预期阶数。只有这些局部结构成立,树构建、步长适配与后验诊断才有可靠基础。对刚性 funnel,减小步长能减少 divergence,但若成本不可接受,重参数化是改变问题几何而非继续榨取积分器。

参考资料
  • Ernst Hairer, Christian Lubich, and Gerhard Wanner, Geometric Numerical Integration, 2nd ed., Springer, 2006, Ch. VI, symplectic integration.
  • Radford M. Neal, “MCMC Using Hamiltonian Dynamics,” in Handbook of Markov Chain Monte Carlo, CRC Press, 2011, Ch. 5, §2.3 in chapter, pp. 113–162.
  • Benedict Leimkuhler and Sebastian Reich, Simulating Hamiltonian Dynamics, Cambridge University Press, 2004, Chs. 2–4.
关系图谱11 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

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

使用的工具

被这些条目使用