期望最大化算法 (Expectation-Maximization Algorithm) 期望最大化算法(Expectation-Maximization Algorithm,简称 EM 算法)是一种通过迭代方式求解含有隐变量(Latent Variables)或缺失数据的概率模型极大似然估计(MLE)和最大后验估计(MAP)的通用方法。由 Arthur D
浏览 5更新 2025-10-26
期望最大化算法 (Expectation-Maximization Algorithm)
期望最大化算法(Expectation-Maximization Algorithm,简称 EM 算法)是一种通过迭代方式求解含有隐变量(Latent Variables)或缺失数据的概率模型极大似然估计(MLE)和最大后验估计(MAP)的通用方法。由 Arthur Dempster、Nan Laird 和 Donald Rubin 于 1977 年在《皇家统计学会杂志》上发表的经典论文《通过 EM 算法从不完整数据中求极大似然估计》中系统提出并命名。事实上,EM 的核心思想早已以特例形式存在于多个领域:Baum-Welch 算法(隐马尔可夫模型,1970)、McKendrick 的基因频率估计(1926)乃至 Newcomb 在 1886 年对缺失数据问题的处理均可视为 EM 的雏形。Dempster 等人的贡献在于统一了这些分散的特例,给出了收敛性的严格证明,并正式命名为 EM。如今 EM 算法已广泛应用于聚类分析、混合模型、隐马尔可夫模型、因子分析、项目反应理论和缺失数据处理等计算统计学领域。
由于积分(或求和)出现在对数内部,直接优化上式通常难以得到解析解,而数值优化又面临高维积分的计算困难。然而,若隐变量 Z 已知,完整数据的对数似然 logp(X,Z∣θ) 往往属于指数族分布,形式简洁且易于优化——这正是 EM 算法的出发点:既然真实隐变量未知,就以迭代方式利用当前参数推断隐变量的条件分布,用概率权重填补缺失信息,然后在此"完整数据"假设下优化参数。这种"先猜测、再优化"的迭代策略使得原本不可解的极大化问题变得可计算。
算法步骤
EM 算法每次迭代包含两个步骤:
E 步:期望步 (Expectation Step)
基于当前参数估计值 θ(t),计算隐变量 Z 的后验分布 p(Z∣X,θ(t)),并构造完整数据对数似然关于此后验的期望,即定义 Q 函数:
收敛性: EM 确保对数似然单调不减,这是其最重要的实用优势。收敛速率取决于缺失信息比例——Wu(1983)指出,当缺失信息量较大时,EM 仅以线性速率收敛,远慢于牛顿法的二次收敛。Murray(1977)进一步证明,若将 EM 视为一种不动点迭代,其收敛速率由完整信息矩阵与缺失信息矩阵之比的谱半径决定。
E 步不可解: 当后验 p(Z∣X,θ) 无解析形式时,需借助蒙特卡洛EM(MCEM)采样近似期望,或使用变分推断(Variational Inference)以可处理的分布族逼近真实后验。
奇异解: 在 GMM 等模型中,单一分量可能坍缩到单个数据点,导致协方差矩阵奇异(似然发散至无穷大)。实践中加入协方差矩阵的正则化项、使用共轭先验的 MAP-EM 框架,或在 M 步约束协方差的最小特征值,均可有效缓解此问题。
变体与推广
EM 算法衍生出多种变体以应对不同场景:ECM(Expectation Conditional Maximization)在 M 步中将参数分块条件优化,将高维极大化分解为一系列低维子问题,显著降低每次 M 步的计算复杂度;ECME 进一步允许某些条件最大化步直接优化原始对数似然而非 Q 函数,以牺牲部分理论简洁性换取更快的收敛速度;MCEM 在 E 步积分不可解析时使用 Markov Chain Monte Carlo(MCMC)采样近似期望,适用于贝叶斯后验推断场景;变分EM(Variational EM)在 E 步使用一族可处理的分布 q(Z∣ϕ) 近似真实后验,通过优化 ELBO 而非精确求解后验来回避计算瓶颈,广泛应用于主题模型(如隐含狄利克雷分布 LDA)和贝叶斯深度生成模型(如变分自编码器 VAE)。此外,随机EM(Stochastic EM, SEM)在 E 步中对每个隐变量进行随机采样而非计算期望,通过多次随机模拟的均值获得参数估计,在小样本和离散隐变量场景中表现稳健。