Metropolis-Hastings 算法中的接受率

机器算法验证 马尔可夫链蒙特卡罗 大都会黑斯廷斯
2022-03-02 04:36:27

在用于对目标分布进行采样的 Metropolis-Hastings 算法中,让:

  • πi是状态的目标密度i,
  • πj是建议状态的目标密度j,
  • hij是转换到状态的提议密度j给定当前状态i,
  • aij是提议状态的接受概率j给定当前状态i.

然后通过详细的平衡方程,选择proposal密度后h, 接受概率a计算为:

aij=min(1,πjhjiπihij).

如果h是对称的,即hij=hji, 然后:

aij=min(1,πjπi).

什么时候hi是以状态为中心的高斯分布i并且具有相同的方差σ2对全部i,h是对称的。来自维基百科

如果σ2太大,几乎所有 MH 算法下的步骤都会被拒绝。另一方面,如果σ2太小了,几乎所有的步骤都会被接受。

我想知道为什么接受概率的变化与提案密度的方差变化相反,正如上面引用中提到的那样?

2个回答

为了得到这个并简化问题,我总是首先考虑一个具有均匀(远程)先验分布的参数,因此在这种情况下,参数的 MAP 估计与 MLE 相同. 但是,假设您的似然函数足够复杂以具有多个局部最大值。

MCMC 在这个一维示例中所做的是探索后验曲线,直到找到最大概率值。如果方差太短,你肯定会卡在局部最大值上,因为你总是会在它附近采样值:MCMC 算法会“认为”它卡在目标分布上。但是,如果方差太大,一旦您陷入一个局部最大值,您将或多或少地拒绝值,直到找到其他最大概率的区域。如果您碰巧在 MAP 处提出该值(或类似的局部最大概率区域,该区域大于其他区域),那么您将最终拒绝几乎所有其他值:该区域与其他区域之间的差异会太大。

当然,以上所有都会影响收敛速度,而不是你的链的收敛“本身”。回想一下,无论方差如何,只要选择这个全局最大区域的值的概率是正的,你的链就会收敛。

然而,为了绕过这个问题,可以做的是在每个参数的老化期内提出不同的差异,并瞄准可以满足您需求的特定接受率(例如0.44,请参阅Gelman, Roberts & Gilks​​, 1995Gelman, Gilks​​ & Roberts, 1997以了解有关选择“良好”接受率问题的更多信息,这当然取决于您的后验分布形式)。当然,在这种情况下,链是非马尔可夫链,因此您不必使用它们进行推理:您只需使用它们来调整方差。

有两个基本假设导致这种关系:

  1. 平稳分布π()变化不会太快(即它有一个有界的一阶导数)。
  2. 大部分概率质量π()集中在域的一个相对较小的子集中(分布是“峰值”)。

让我们考虑“小σ2” 案例第一。让xi是马尔可夫链的当前状态和xjN(xi,σ2)成为建议的状态。自从σ2非常小,我们可以确信xjxi. 结合我们的第一个假设,我们看到π(xj)π(xi)因此π(xj)π(xi)1.

大额录取率低σ2来自第二个假设。回想一下,大约95%正态分布的概率质量在2σ它的平均值,所以在我们的例子中,大多数提案将在窗口内生成[xi2σ,xi+2σ]. 作为σ2变大时,此窗口会扩大以覆盖越来越多的变量域。第二个假设意味着密度函数在大多数域上必须非常小,所以当我们的采样窗口很大时π(xj)通常会非常小。

现在进行一些循环推理:因为我们知道 MH 采样器根据平稳分布生成分布的样本π, 一定是它在域的高密度区域产生了很多样本​​,而在低密度区域产生了很少的样本。由于大多数样本是在高密度区域生成的,π(xi)通常很大。因此,π(xi)很大并且π(xj)很小,导致接受率π(xj)π(xi)<<1.

这两个假设对于我们可能感兴趣的大多数分布都是正确的,因此提案宽度和接受率之间的这种关系是理解 MH 采样器行为的有用工具。