什么是 自适应 MCMC?

自适应 MCMC 是一类采样算法,它利用运行期间收集的信息更新马尔可夫转移参数,同时约束适应过程以保持目标分布有效。

快速了解

规范文档官方规范

工作原理

把调参状态视为算法的一部分

在第 n 次迭代,自适应采样器根据运行协方差、对数 Proposal Scale 等调参状态选择 Kernel P_gamma_n。下一步既可能改变物理状态,也可能更新 gamma_n,所以只观察被采样状态时,该过程不再是一条齐次马尔可夫链。

有效适应应优化真实移动,而不是孤立追逐一个记忆中的接受率。尺度、相关性、尾部、约束、维度和目标估计量都会影响效率,因此控制器应有显式边界与可观测记录。

在 Kernel 变化时保护收敛性

Roberts 与 Rosenthal 的遍历性分析说明,仅在每个固定 Kernel 上满足不变性并不足够。

Diminishing Adaptation 约束相邻 Kernel 的差异趋于消失,Containment 则防止过程漂移到收敛时间任意恶化的 Kernel。这些是理论条件,不是短暂运行后可直接标记为真的日志字段。

保守实现会只在 Warmup 期间适应,在保留采样前冻结 Kernel;遇到分布变化时重新开始,而不是在后台静默重调。

同时审计适应过程与保留采样

应记录完整调参轨迹、更新计划、边界、目标统计量、接受移动、Warmup 长度、最终 Kernel、随机种子与软件版本。使用分散初值运行多链,并检查不同链是否收敛到相近尺度,避免某条链把病态区域隐藏在局部统计中。

对关键估计量评估 Bulk/Tail ESS、Monte Carlo Error、移动距离与墙钟时间。接受统计改善可以与偏置适应、模态遗漏或更差的尾部探索同时发生,因此仍需模拟真值与非自适应基线。

主要特点

  • 利用运行历史更新 Proposal 或转移配置
  • 在适应阶段使状态序列呈非齐次特征
  • 需要超越固定 Kernel 不变性的有效性论证
  • 通常使用递减步长或有限 Warmup 阶段
  • 可以学习尺度、协方差、方向或群体计划
  • 除常规 MCMC 诊断外还需要记录适应轨迹

常见用途

  1. 在 Warmup 期间学习随机游走 Proposal Scale
  2. 为相关后验参数估计 Proposal Covariance
  3. 针对不同模型几何调节采样器配置
  4. 降低重复贝叶斯工作流中的人工校准成本
  5. 在群体采样器中构建有边界的自适应组件

示例

loading...
Loading code...

常见问题

为什么自适应过程可能让 MCMC 失效?

某次转移会通过调参状态依赖更早的样本。即使每个固定 Kernel 都保持目标分布,任意切换这些 Kernel 仍可能破坏收敛,因此适应规则本身需要理论或结构化保证。

Diminishing Adaptation 和 Containment 是什么?

Diminishing Adaptation 要求相邻 Kernel 越来越相似;Containment 防止自适应过程进入收敛时间任意恶化的调参状态。两者构成常用充分条件框架,并不是能由一次短运行自动认证的指标。

Warmup 调参与持续自适应 MCMC 相同吗?

不同。若适应在 Warmup 后停止,保留样本来自一个固定转移 Kernel,可对该阶段应用标准 MCMC 推理;持续适应会在采样期不断改变 Kernel,必须使用有效的自适应构造。

自适应 MCMC 是否应该追求固定接受率?

接受率目标只能在明确假设下指导特定 Proposal Family,并不存在跨算法通用的最佳值。应比较单位时间的有效样本与 Monte Carlo Error,同时检查关键区域移动和尾部行为。

自适应链必须记录哪些信息?

至少记录初始状态、随机种子、适应统计量、Gain Schedule、边界、Warmup 长度、完整调参轨迹、最终冻结 Kernel、拒绝、告警,以及每个结果实际使用的保留样本。

相关术语

相关文章