变分推理与 MCMC:何时选择一个而不是另一个?

机器算法验证 机器学习 贝叶斯 马尔可夫链蒙特卡罗 变分贝叶斯 近似推理
2022-01-19 11:04:07

我想我对 VI 和 MCMC 都有大致的了解,包括各种风格的 MCMC,如 Gibbs 采样、Metropolis Hastings 等。本文对这两种方法进行了精彩的阐述。

我有以下问题:

  • 如果我想做贝叶斯推理,我为什么要选择一种方法而不是另一种?
  • 每种方法的优缺点是什么?

我知道这是一个相当广泛的问题,但任何见解都会受到高度赞赏。

1个回答

如需详细答案,请参阅 Blei、Kucukelbir 和 McAuliffe此处这个简短的答案很大程度上来自于此。

  • MCMC 是渐近精确的;六不是在极限情况下,MCMC 将精确地逼近目标分布。VI 没有保修。
  • MCMC 的计算成本很高一般来说,VI 更快。

这意味着,当我们有计算时间来杀死并重视我们的估计精度时,MCMC 获胜。如果我们可以容忍为了权宜之计而牺牲它——或者我们正在处理如此庞大的数据,我们必须做出权衡——VI 是一个自然的选择。

或者,正如上述作者更雄辩和彻底地描述的那样:

因此,变分推理适用于我们想要快速探索许多模型的大型数据集和场景;MCMC 适用于较小的数据集和场景,我们很乐意为更精确的样本支付更高的计算成本。例如,我们可能会在一个环境中使用 MCMC,我们花了 20 年时间收集一个小而昂贵的数据集,我们确信我们的模型是合适的,并且我们需要精确的推理。在将文本概率模型拟合到十亿个文本文档时,我们可能会使用变分推理,并且推理将用于为大量用户提供搜索结果。在这种情况下,我们可以使用分布式计算和随机优化来扩展和加速推理,我们可以轻松探索许多不同的数据模型。