我试图了解这两种 MCMC 方案的相对优缺点以及不同的应用领域。
- 您什么时候使用 which 以及为什么?
- 什么时候一个可能会失败,而另一个不会(例如,HMC 在哪里适用但 SMC 不适用,反之亦然)
- 是否可以天真地授予一种方法与另一种方法相比的效用度量(即,通常是一种更好的方法)?
我试图了解这两种 MCMC 方案的相对优缺点以及不同的应用领域。
Hamiltonian Monte Carlo 在具有“奇怪”形状的连续目标分布中表现良好。它要求目标分布是可微的,因为它基本上使用目标分布的斜率来知道去哪里。完美的例子是香蕉形函数。
这是 Banana 函数中的标准 Metropolis Hastings:接受率为 66%,覆盖率很差。
当目标分布是多模态时,SMC(粒子过滤背后的方法)几乎是无与伦比的,尤其是当有多个单独的质量区域时。不是将一个马尔可夫链困在一个模式中,而是有几个并行运行的马尔可夫链。请注意,您使用它来估计一系列分布,通常是增加清晰度。您可以使用模拟退火(在目标上放置一个逐渐增加的指数)来生成不断增加的清晰度。或者通常,在贝叶斯上下文中,分布序列是后验序列:
SMC 的并行特性使其特别适合分布式/并行计算。
概括:
资料来源:大部分图像来自我结合两种方法(Hamiltonian Sequential Monte Carlo)撰写的论文。这种组合几乎可以模拟我们可以扔给它的任何分布,即使在非常高的维度上也是如此。