“这给出不变性,不自动给遍历性。动量刷新、非退化 $M$ 与适当轨迹长度通常帮助探索,但共振、分离支持和数值发散仍可造成不可达或极慢区域。轨道均值继承MCMC的有限样本偏差与相关误差;接受校正…”
形式陈述 ​
NUTS 是Hamiltonian Monte Carlo的严格变体:目标仍为
原始 slice 版本从当前状态
只把满足
在欧氏质量矩阵下,记树两端为
它表示至少一个端点的速度已经指回另一端。实际递归还要对各子树检查判据;只检查最终两个端点可能跨过更早发生的回头。遇到回头、能量误差超过安全阈值或最大树深即停止扩展。最大树深让成本有界;频繁撞上它说明轨迹可能被人为截短,不是收敛证明。
正确性不来自“停在掉头前”。树的随机方向、对称停止与候选选择共同确保从任一候选反看都能构造兼容集合,从而保持扩展目标。任意选择最远端点会破坏这项对称性。步长常在 warmup 用 dual averaging 适配,质量矩阵也可从 warmup 学习;正式采样阶段固定这些参数,才能直接应用平稳核论证。
直觉
固定短轨迹会在平缓方向未走够,固定长轨迹又可能绕过等能面后折返,花梯度计算回到起点附近。NUTS 同时向前后探索并不断加倍,直到位移与端点速度的内积变负,说明继续走大概在重走旧路。
树中候选选择同停止同样重要。轨迹是一串相关的近等能状态;若总拿最后一点,停止规则会让某些位置因更容易触发回头而被系统偏爱。按有效集合对称选点,才把“自动决定走多远”变成合法转移核,而不是启发式优化轨迹。
例子与边界
对一维标准正态,取
到第四步,若左端仍为初始点,位移
回头判据不能修复坏几何。在 funnel 颈部,步长过大先产生 divergence,树可能在几何回头之前就失真;把最大树深调高只增加不可靠积分。强弯曲流形上,端点位移的欧氏内积也只是局部度量下的判据,质量矩阵失配会让一个方向过早停止、另一个方向走得过久。
多峰目标是另一边界。单条 Hamilton 轨迹若没有足够动量越过势垒,自动轨迹长度不会创造跨峰路径。表面上树深、接受率和峰内有效样本量都可能正常,模态权重仍然错误。需要分散初值、重参数化或跨温度方法检验,而不是把“无 U-turn 警告”解释为全局探索完成。
推论与应用
NUTS 去掉了固定
树倍增使单次迭代梯度数随机且最多按
参考资料
- Matthew D. Hoffman and Andrew Gelman, “The No-U-Turn Sampler: Adaptively Setting Path Lengths in Hamiltonian Monte Carlo,” Journal of Machine Learning Research 15(47), 2014, pp. 1593–1623.
- Radford M. Neal, “MCMC Using Hamiltonian Dynamics,” in Handbook of Markov Chain Monte Carlo, CRC Press, 2011, Ch. 5.
- Michael Betancourt, “A Conceptual Introduction to Hamiltonian Monte Carlo,” arXiv:1701.02434, 2017, §4.4.