当可以使用最大后验估计时,基于MCMC的方法是否合适?


13

我已经注意到,在许多实际应用中,即使后验是分析性的,也使用基于MCMC的方法来估计参数(例如,因为先验是共轭的)。对我来说,使用MAP估算器比基于MCMC的估算器更有意义。谁能指出为什么在分析后验的情况下MCMC仍然是合适的方法?


2
您可以在实践中举一个例子吗?注意,与先验被共轭有条件共轭有区别。在许多Gibbs采样应用中,选择的先验是有条件共轭的,但先验本身不是共轭的。例如,考虑潜在的Dirichlet分配。
家伙

4
尚不清楚MAP也与此有关。贝叶斯估计量是后验均值,而不是后验模式。即使先验条件不是共轭的,您也可以经常进行一些优化以获得MAP估计量-STAN或多或少都可以进行此操作。进行MCMC的目的是估计后验分布,该分布具有比MAP估计器更多的信息。
家伙

Answers:


12

在这种情况下,无需使用MCMC:蒙特卡洛马尔可夫链(MCMC)是一种用于从分布生成值的方法。它会产生自相关值的马尔可夫链,其固定分布等于目标分布。即使目标分布具有分析形式,该方法仍然可以为您提供所需的信息。但是,在这种情况下,有一些更简单且计算量较小的方法,在这种情况下,您要处理具有良好解析形式的后验。

在后验分布具有可用的分析形式的情况下,可以通过使用标准演算技术从该分布进行优化来获得参数估计(例如MAP)。如果目标分布足够简单,则可能会得到参数估计量的闭式解,但是即使不是,也通常可以使用简单的迭代技术(例如,Newton-Raphson,gradient-descent等)来找到针对任何给定的输入数据优化参数估计。如果您具有目标分布的分位数功能的解析形式,并且需要从分布中生成值,则可以通过逆变换采样来实现,其计算强度比MCMC少,并且允许您生成IID值,而不是具有复杂自相关模式的值。

有鉴于此,如果您是从头开始编程的,那么在目标发行版具有可用的分析形式的情况下,似乎没有任何理由使用MCMC。可能这样做的唯一原因是,如果您已经编写了适用于MCMC的通用算法,可以用最少的精力来实现,并且您决定使用分析形式的效率要比进行所需的数学工作要重要。在某些实际情况下,您将要解决通常难以解决的问题,在这些问题中,MCMC算法已经设置好并且可以轻松实现(例如,如果您在RStan)。在这些情况下,运行现有的MCMC方法而不是导出问题的解析解决方案可能是最简单的方法,尽管后者当然可以用作检查工作的方法。


10

我不清楚您称其为解析后验原因,因此为什么这种分析性应该使人们无法使用MCMC。即使是一个后验分布是在封闭的形式,包括它的标准化常数,这是我的理解提供分析在此设置,没有理由贝叶斯估计是在封闭的形式提供,作为解决最小化问题当很大程度上取决于损失函数。π(θ)

minδΘL(θ,δ)π~(θ)f(x|θ)dθ
π~()π()

当归一化常数不可用时,

π~(θ)dθ
找到后验均值或中位数甚至是众数[不需要知道常数],最经常进行通过MCMC算法。例如,如果给定关节密度,则, 灵感来自阿里米哈伊尔哈克连接函数:它可以被适当地归一化(且确实),但条件期望的给出此密度,当下x,y(0,1)

fθ(x,y)=1+θ[(1+x)(1+y)3]+θ2(1x)(1y))[1θ(1x)(1y)]3θ(1,1)
Φ1(X)Y=yΦ(.)是Normal CDF,不能以封闭形式使用。但是,这是一个主要问题

还请注意,最大后验估计在贝叶斯设置中不是最自然的估计量,因为它不对应于损失函数,并且密度的闭合形式表示形式(即使达到常数)也无法找到MAP。一定很容易。或者使用与MAP有关的。


2

在我阅读时,这个问题在问两个有点正交的问题。一种是一种应使用MAP估计器来代替后验方法,另一种是如果后验具有分析形式,则是否应使用MCMC估计器。

关于后验均值上的MAP估计,从理论上讲,通常采用后验均值,如@Xian在其回答中所指出的。MAP估计器的真正优势在于,尤其是在后验方不是封闭形式的更典型情况下,与后验均值的估计相比,它们的计算速度快得多(即几个数量级)。如果后验近似对称(在很多样本量较大的问题中经常发生这种情况),则MAP估计值应非常接近后验均值。因此,MAP的吸引力实际上在于它可以是后均值的非常便宜的近似值。

请注意,知道归一化常数不会帮助我们找到后验模式,因此,在将后验识别为特定分布的情况下,从技术上来说,为后验提供封闭形式的解决方案不会帮助我们找到MAP估计。我们知道这是模式。

关于第二个问题,如果后验分布为封闭形式,则一般而言没有理由使用MCMC算法。从理论上讲,如果您对后验分布有一个封闭形式的解决方案,但对于某些函数的均值没有封闭形式,并且不能直接从该封闭形式的分布中抽取,那么您可能会求助于MCMC算法。但是我不知道这种情况的任何情况。


1

我认为即使存在封闭形式的解决方案,MCMC方法也不一定是不合适的。显然,当存在分析解决方案时,这是很好的:它们通常很快,可以避免对收敛性的担心(等)。

另一方面,一致性也很重要。从一种技术切换到另一种技术会使您的演示变得复杂:充其量,它是多余的细节,可能会使观众迷惑或分散您对实质性结果的注意力,而在最坏的情况下,它看起来像是在使结果产生偏差。如果我有多个模型,但只有少数几个模型接受封闭格式的解决方案,那么即使不是绝对必要,我也会强烈考虑通过同一MCMC管道运行它们。

我怀疑这一点,加上惯性(“我们有这个脚本可以工作”)占了您所看到的大部分内容。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.