MCMC/EM 限制?MCMC 优于 EM?

机器算法验证 贝叶斯 马尔可夫链蒙特卡罗 期望最大化
2022-03-20 02:56:01

我目前正在学习使用 R 中的 JAGS 的分层贝叶斯模型,以及使用 Python 的 pymc(“黑客的贝叶斯方法”)。

我可以从这篇文章中得到一些直觉:“你最终会得到一堆看起来“好像”你设法从你想知道的复杂分布中获取独立样本的数字。就像我可以给出条件概率,然后我可以根据条件概率生成一个无记忆的过程。当我生成过程足够长的时候,那么联合概率可以收敛。然后我可以在生成序列的末尾取一堆数字。就像我从复杂的联合分布中抽取独立样本一样。例如,我可以制作直方图,它可以近似分布函数。

那么我的问题是,我是否需要证明 MCMC 对于某个模型是否收敛?我很想知道这一点,因为我之前学习了 GMM 和 LDA(图形模型)的 EM 算法。如果我可以直接使用 MCMC 算法而不证明它是否收敛,那么它可以比 EM 节省更多的时间。因为我必须计算预期的对数似然函数(必须计算后验概率),然后最大化预期的对数似然。它显然比 MCMC 更麻烦(我只需要制定条件概率)。

我还想知道似然函数和先验分布是否共轭。这是否意味着 MCMC 必须收敛?我想知道 MCMC 和 EM 的局限性。

1个回答

EM 是一种优化技术:给定具有有用潜在变量的可能性,它返回一个局部最大值,这可能是一个全局最大值,具体取决于起始值。

MCMC 是一种模拟方法:给定一个有或没有潜在变量的可能性,以及先验,它产生一个从后验分布近似分布的样本。该样本的第一个值通常取决于起始值,这意味着它们通常在老化(或预热)阶段被丢弃。

当该样本用于评估与后验分布相关的积分时[绝大多数情况],由于遍历定理,收敛特性与 iid Monte Carlo 近似的收敛特性基本相同。

如果需要更多,即保证的样本,则可以使用一些收敛性评估技术,例如在R 包 CODA中。从理论上讲,确保收敛的工具可能超出您的能力范围。例如,完美的抽样rewewal方法(xt,,xt+T)π(x|D)