首页 > 解决方案 > MCMC 如何帮助贝叶斯推理?

问题描述

文献称MCMC中的metropolis-hasting算法是上个世纪最重要的算法之一,具有革命性。文献还说,正是 MCMC 的这种发展使贝叶斯统计再次诞生。

我了解 MCMC 的作用——它提供了一种从任何复杂概率分布中抽取样本的有效方法。

我也知道贝叶斯推理是什么——它是计算参数的完整后验分布的过程。

我很难在这里连接点:MCMC 在贝叶斯推理过程中的哪个步骤发挥作用?为什么 MCMC 如此重要,以至于人们说是 MCMC 让贝叶斯统计重生了?

标签: statisticsbayesianmontecarlomarkov-chainsmcmc

解决方案


您可能想在 StatsExchange 上问类似的问题。然而,这里是一个高水平的“建立一些直觉”答案的尝试(免责声明:我是计算机科学家而不是统计学家。前往 StatsExchange 进行更正式的讨论)

贝叶斯推理:

在最基本的意义上,我们遵循贝叶斯规则:p(Θ|y)=p(y|Θ)p(Θ)/p(y)。这里 p(Θ|y) 被称为“后验”,这就是您要计算的内容。p(y|Θ) 被称为“数据可能性”,通常由您的模型或您对数据的生成描述给出。p(Θ) 被称为“先验”,它在观察数据之前捕获了您对参数合理值的信念。p(y) 称为“边际似然”,使用总概率定律可以表示为 ∫ p(y|Θ)p(Θ) dΘ。这看起来非常简洁,但实际上 p(y) 通常难以解析计算,并且在高维(即当 Θ 具有多个维度时)数值积分是不精确且计算上难以处理的。的问题允许您分析地计算它,但在许多有用的模型中,这根本是不可能的。因此,我们转向近似后验。

有两种方法(我知道)来近似后验:蒙特卡洛变分推理。既然你问到 MCMC,我会坚持下去。

蒙特卡洛(和马尔可夫链蒙特卡洛):

统计学中的许多问题都涉及在概率分布下对函数的期望。根据大数定律,可以通过蒙特卡洛估计有效地逼近期望。因此,如果我们可以从分布中抽取样本(即使我们不知道分布本身),那么我们就可以计算所讨论的期望的蒙特卡罗估计。关键是我们不需要有一个分布表达式:如果我们只有样本,那么我们可以计算我们感兴趣的期望值。但是有一个问题......如何绘制样本?

已经有很多工作开发了从未知分布中抽取样本的方法。这些包括“拒绝”、“重要性”和“切片”采样。这些都是伟大的创新,在许多应用程序中都很有用,但它们都因无法扩展到高维度而受到影响。例如,拒绝抽样从已知的“提议”分布中抽取样本,然后根据需要评估似然函数和提议函数的概率接受或拒绝该样本。这在一维中很棒,但是随着维度的增长,给定样本被拒绝的概率质量急剧增加。

Markov Chain Monte Carlo 是一项创新,它附带了一些非常好的理论保证。关键思想是不要从提议分布中随机抽取样本,而是使用已知样本(希望样本处于高概率质量区域),然后在从提议分布中抽取一个小随机步骤. 理想情况下,如果第一次抽签是在高概率人群中,那么第二次抽签也很可能被接受。因此,您最终会接受更多的样本,并且不会浪费时间抽取将被拒绝的样本。令人惊奇的是,如果您在特定条件下(链必须是有限的、非周期性的、不可约的和遍历的)运行马尔可夫链足够长的时间(即无穷大),那么您的样本从模型的真实后验中提取。太棒了!MCMC 技术是绘制依赖样本,因此它比以前的方法扩展到更高的维度,但是在正确的条件下,即使样本是依赖的,它们就好像它们是从所需分布中绘制的 IID(这是在贝叶斯推理)。

将其捆绑在一起(并希望回答您的问题):

MCMC 可以看作是一种支持贝叶斯推理的工具(就像从共轭结构的分析计算一样,变分推理和蒙特卡洛是替代方案)。除了分析解决方案之外,所有其他工具都是近似的真正的后期。然后,我们的目标是使近似值尽可能好,并尽可能便宜地做到这一点(计算成本和计算一堆乱七八糟的代数的成本)。以前的采样方法不能扩展到高维度(这是任何现实世界问题的典型),因此贝叶斯推理在许多情况下在计算上变得非常昂贵且不切实际。然而,MCMC 为一种从高维后验中有效抽取样本的新方法打开了大门,在良好的理论保证下做到这一点,并且(比较)容易且计算成本低。

值得一提的是,Metropolis 本身也存在问题:它与高度相关的潜在参数空间作斗争,它需要用户指定的提案分布,并且样本之间的相关性可能很高,导致结果有偏差。因此,人们提出了更现代、有时更有用的 MCMC 工具来尝试解决这个问题。请参阅“Hamiltonian Monte Carlo”和“No U-Turn Sampler”了解最新技术。尽管如此,Metropolis 是一项巨大的创新,它突然使现实世界的问题在计算上变得易于处理。

最后一点:请参阅MacKay的此讨论,以获得对这些主题的非常好的概述。


推荐阅读