期望最大化(EM)算法是一种迭代统计方法,用于在含有潜在(未观测)变量的模型中寻找参数的最大似然估计。高斯混合模型(GMM)是一种概率模型,假设所有数据点由有限数量的、参数未知的高斯分布混合生成。EM算法是拟合GMM的标准方法,在期望步骤(E步)和最大化步骤(M步)之间交替进行,直至收敛。该技术支撑了Machine learning中的许多应用,包括聚类、密度估计和异常检测。
EM算法在1977年由Arthur Dempster、Nan Laird和Donald Rubin发表的论文中正式提出,尽管统计学文献中已有更早的版本。GMM本身可追溯到1894年Karl Pearson关于混合模型的早期工作,他使用矩方法将双组分高斯混合拟合到螃蟹数据。EM与GMM的结合成为无监督学习的基石,早于现代Deep learning方法,并在当代Artificial intelligence系统中仍具相关性。
数学表述
具有K个组分的GMM将数据点x的概率密度建模为K个高斯密度的加权和:p(x) = sum_{k=1}^K pi_k * N(x | mu_k, Sigma_k),其中pi_k是混合系数(总和为1),mu_k是均值向量,Sigma_k是协方差矩阵。潜在变量z指示每个观测由哪个组分生成。EM算法迭代两个步骤。在E步中,它根据当前参数估计,计算每个组分生成每个数据点的后验概率(责任度)。在M步中,它通过最大化期望的完整数据对数似然来更新参数(pi_k、mu_k、Sigma_k),并以责任度作为权重。该算法保证每次迭代的似然非递减,收敛到局部最优。
机器学习中的应用
在Machine learning中,GMM作为软聚类的灵活工具,每个点以不同概率属于所有簇,不同于k-means等硬聚类方法。它们用于图像分割、语音识别和异常检测。例如,在计算机视觉中,GMM对视频监控中的背景像素进行建模。在语音处理中,GMM历史上对声学特征进行建模,之后被基于Neural network的系统取代。EM算法也出现在隐马尔可夫模型中(通过Baum-Welch算法,这是其特例),以及一般统计模型中处理缺失数据。
与现代AI的关系
虽然Deep learning在许多高维任务中已取代GMM,但EM算法在概念上仍具影响力。EM的变体用于训练大型语言模型,例如机器翻译中的词对齐期望最大化。该算法在推断和优化之间交替的原则出现在变分自编码器和其他潜在变量模型中。MIT CSAIL和Stanford AI Lab等机构的研究人员继续研究EM的理论保证和效率。在实践中,GMM仍部署在生产系统中,用于说话人验证和金融风险建模等任务,通常与Generative AI技术结合使用。
扩展与变体
多种扩展解决了EM的局限性,如收敛缓慢和对初始化的敏感性。随机EM和增量EM使用小批量更新参数,提高了可扩展性。变分贝叶斯EM将参数视为随机变量,提供完整的后验分布。K-Means Clustering算法可视为GMM在等向协方差条件下的硬分配极限。对于高维数据,对角或绑定协方差矩阵可减少参数数量。Expectation propagation和蒙特卡洛EM变体处理难以计算的积分。这些发展使EM在Artificial intelligence时代保持相关性,通常作为更复杂模型中的基线或构建块。
实际考虑
为GMM实现EM需要选择组分数量K,通常通过贝叶斯信息准则(BIC)或交叉验证等信息标准。初始化可使用k-means结果或随机种子。算法可能收敛到局部最优,因此常见做法是多次重启。数值稳定性可通过使用对数似然和正则化处理奇异协方差矩阵来改善。在现代软件库(如scikit-learn)中,GMM的EM实现使用高效的线性代数例程。该算法每次迭代的时间复杂度为O(NKD^2)(对于全协方差),其中N是点数,D是维度,使其适用于中等规模数据集。对于大规模问题,AWS Trainium和其他专用硬件可加速矩阵运算,尽管EM通常不是端到端Machine learning流水线中的瓶颈。
历史背景
EM算法的发展源于遗传学和调查抽样中常见缺失数据的问题。其形式化统一了早期多种迭代方法,包括因子分析和混合模型的方法。1977年的论文成为统计学中被引用最多的论文之一。几十年来,EM已应用于天文学(估计星系分布)、经济学(建模收入分布)和生物学(基因表达聚类)等不同领域。其简洁性和理论优雅性使其成为Machine learning和统计学教科书中的标准主题,包括Christopher Bishop等人的著作。尽管Deep learning兴起,EM和GMM仍是数据科学家工具包中的基本工具,尤其适用于具有清晰潜在结构和中等维度的问题。
参见
- K-Means Clustering
- hidden-markov-model
- Variational Autoencoder
- Expectation propagation
- density-estimation