什么是 序贯蒙特卡洛(SMC)?

序贯蒙特卡洛(SMC)是一类使用加权粒子逼近一系列概率分布,并通过传播、重加权、重采样及可选再生步骤更新粒子群的算法。

快速了解

规范文档官方规范

工作原理

让粒子群依次穿过目标分布

设 pi_0, ..., pi_T 为目标序列,其中 pi_0 易于采样,pi_T 是最终目标。每一阶段通过 Forward Kernel 传播粒子,再用增量 Importance Weight 修正相邻目标与 Proposal 的差异。即使传播后的边缘密度不可计算,也可通过恰当 Backward Kernel 得到可处理权重。

Dai 等人的 SMC Sampler 教程区分了通用固定空间 SMC Sampler 与 Particle Filter:后者的目标通常是随观测时间变化的 Filtering Distribution。

按需重采样并恢复粒子多样性

归一化权重可计算粒子 Effective Sample Size,例如 1 / sum(w_i^2)。当它低于已声明阈值时,Resampling 会删除低权重粒子并复制高权重粒子。这样能控制 Weight Degeneracy,却会产生共享祖先,并不会凭空创造新信息。

重采样后通常使用对当前目标不变的 MCMC Kernel 执行 Mutation,以恢复粒子多样性。Mutation 步数、重采样方法、触发阈值与目标计划都属于估计器契约,必须完整记录。

控制路径、谱系与 Monte Carlo Error

相邻目标差异过大时,权重会在 Mutation 发挥作用前坍缩。过度重采样会造成谱系贫化,重采样不足则让大部分计算消耗在近零权重粒子上;高维问题会让两类故障突然恶化。

应跟踪重采样前 Weight ESS、Unique Ancestors、重采样事件、Mutation 接受与移动、归一化常数增量和独立重复系统的差异。粒子 Weight ESS 不等于基于自相关的 MCMC ESS;当 SMC 使用 MCMC Rejuvenation 时,两者都可能需要。

主要特点

  • 用加权粒子群表示每个目标分布
  • 沿观测序列或人工桥接分布推进
  • 在阶段之间计算增量重要性权重
  • 在权重过度集中时重采样粒子
  • 可通过 MCMC Mutation 恢复粒子多样性
  • 能够附带估计归一化常数比

常见用途

  1. 非线性非高斯状态空间模型的在线推断
  2. 从先验到困难后验的回火采样
  3. 观测到达时的序贯贝叶斯更新
  4. 估计边际似然与归一化常数
  5. 稀有事件与受约束分布模拟

示例

loading...
Loading code...

常见问题

序贯蒙特卡洛与 MCMC 有什么区别?

MCMC 通常让一条或多条相关链逼近固定目标。SMC 让加权粒子群依次经过一系列目标,增加 Resampling 交互,并能估计归一化常数比。

所有序贯蒙特卡洛方法都是 Particle Filter 吗?

不是。Particle Filter 是 SMC 的一个家族,其目标序列通常随观测到达形成 Filtering Distribution。SMC Sampler 还可经过与真实时间无关的固定维回火、部分后验或约束目标。

SMC 为什么需要重采样?

反复重要性加权可能让几乎全部权重集中于少数粒子。重采样把计算重新分配给高权重粒子,但复制祖先会减少多样性,因此仍需 Mutation 与谱系诊断。

粒子 ESS 与 MCMC ESS 相同吗?

不同。粒子 ESS 描述某阶段归一化重要性权重的集中程度;MCMC ESS 描述序列相关对某个估计量的信息损失。带 MCMC Mutation 的 SMC 可能同时需要两种诊断。

什么情况会让 SMC 目标计划失效?

相邻目标重叠不足会造成权重突然坍缩并丢失模态。应监控重采样前 ESS、Unique Ancestors、增量归一化常数、Mutation 移动与独立重复差异,再细化路径或增加资源。

相关术语

相关文章