机器学习(四):混合高斯模型GMM

高斯分布是描述自然规律的基础工具,混合高斯模型则突破了单一分布的限制,实现了对复杂数据分布的拟合,而EM算法则为含隐变量的混合高斯模型提供了高效的参数求解方案

一、高斯分布(GM):自然规律的概率刻画

高斯分布(Gaussian Distribution,简称GM),又称正态分布,是概率统计中最经典的连续概率分布之一,从高尔顿钉板实验中弹珠的下落分布,到人群的身高、体重指标,再到仪器的测量误差,高斯分布成为描述连续型随机变量的通用工具

(一)理论定义与参数估计

高斯分布的概率密度函数由**均值μ\muμ 方差σ2\sigma^2σ2**两个参数完全决定,其表达式为:
f(x)=12πσe−(x−μ)22σ2f(x)=\frac{1}{\sqrt{2 \pi} \sigma} e^{-\frac{(x-\mu)^{2}}{2 \sigma^{2}}}f(x)=2π σ1e−2σ2(x−μ)2

  • μ\muμ决定分布的中心位置
  • σ2\sigma^2σ2反映数据的离散程度

对于一组独立同分布的样本x1,x2,...,xnx_1,x_2,...,x_nx1,x2,...,xn,基于**极大似然估计(MLE)**可推导出参数的解析解:
μ=1n∑i=1nxi,σ2=1n∑i=1n(xi−μ)2\mu=\frac{1}{n} \sum_{i=1}^n x_i, \quad \sigma^2=\frac{1}{n} \sum_{i=1}^n (x_i-\mu)^2μ=n1i=1∑nxi,σ2=n1i=1∑n(xi−μ)2

即均值为样本的算术平均,方差为样本与均值偏差的平方平均。这种简单直观的参数估计方式,让高斯分布成为各类统计模型的基础假设


二、混合高斯模型(GMM):复杂数据的分布拟合

混合高斯模型(Gaussian Mixture Model,简称GMM)是由KKK个单高斯分布(GM)通过先验概率加权组合而成的概率模型,其核心思想是:复杂的多峰数据分布可由多个单峰高斯分布叠加拟合,每个样本由其中一个或多个高斯分布共同生成。GMM突破了单一高斯分布的限制,成为描述复杂数据分布的核心工具,也是无监督聚类、密度估计的经典模型。

(一)理论定义与似然函数

GMM假设随机变量XXX由KKK个相互独立的高斯分布混合生成,核心参数包括:

  1. 先验概率πk\pi_kπk :随机抽取一个样本,属于第kkk个高斯分布的概率,满足∑k=1Kπk=1\sum_{k=1}^K \pi_k=1∑k=1Kπk=1,体现了各高斯成分在模型中的权重;

  2. 单高斯分布参数(μk,Σk)(\mu_k, \Sigma_k)(μk,Σk) :第kkk个高斯分布的均值和协方差矩阵,决定该成分的分布特征

  3. 隐变量zzz:样本所属的高斯分布类别,是无法直接观测的隐藏信息

根据全概率公式 ,单个样本xix_ixi的概率为所有高斯成分的概率加权和:
P(xi)=∑k=1Kπk⋅N(xi∣μk,Σk)P(x_i) = \sum_{k=1}^K \pi_k \cdot N(x_i|\mu_k, \Sigma_k)P(xi)=k=1∑Kπk⋅N(xi∣μk,Σk)

  • N(xi∣μk,Σk)N(x_i|\mu_k, \Sigma_k)N(xi∣μk,Σk)为第kkk个高斯分布的概率密度函数

对于NNN个独立样本,其联合概率(似然函数)为所有单个样本概率的乘积,取对数后得到GMM对数似然函数
l(π,μ,Σ)=∑i=1Nlog(∑k=1Kπk⋅N(xi∣μk,Σk))l(\pi, \mu, \Sigma) = \sum_{i=1}^N log\left( \sum_{k=1}^K \pi_k \cdot N(x_i|\mu_k, \Sigma_k) \right)l(π,μ,Σ)=i=1∑Nlog(k=1∑Kπk⋅N(xi∣μk,Σk))

这是GMM参数估计的目标函数,但其存在**logloglog嵌套求和**的结构,无法像单高斯分布那样直接求导得到解析解。而EM算法的出现,恰好解决了这一难题。


三、EM算法:含隐变量模型的参数求解

期望最大化算法(Expectation-Maximization Algorithm,简称EM)是求解含隐变量概率模型 的通用迭代优化算法,由E步(期望步)和M步(极大步)交替执行,核心思想是通过构造似然函数的下界并逐步最大化,间接逼近原似然函数的最大值。EM算法并非只针对GMM设计

(一)算法核心:Jensen不等式与似然下界

EM算法的数学基础是Jensen不等式

对于凹函数f(x)=log(x)f(x)=log(x)f(x)=log(x),有f(E[X])≥E[f(X)]f(E[X]) ≥ E[f(X)]f(E[X])≥E[f(X)],即"函数的期望小于等于期望的函数"。利用这一性质,EM算法为GMM的对数似然函数构造证据下界(ELBO),将无法直接求解的原问题转化为"迭代优化下界"的简单问题

由于GMM中的隐变量(样本所属类别)无法观测,直接最大化对数似然函数无解。EM算法通过引入隐变量的分布Qi(z(i))Q_i(z^{(i)})Qi(z(i)) ,将对数似然函数转化为下界形式,通过不断优化Qi(z(i))Q_i(z^{(i)})Qi(z(i))和模型参数,让下界逐步逼近原似然函数,最终得到近似最优解

(二)EM算法迭代步骤

EM算法的迭代过程围绕**"估计隐变量→更新模型参数"**展开,适用于所有含隐变量的概率模型,具体步骤为:

  1. 参数初始化 :随机设定GMM的初始参数(π(0),μ(0),Σ(0))(\pi^{(0)}, \mu^{(0)}, \Sigma^{(0)})(π(0),μ(0),Σ(0)),设定收敛阈值ϵ\epsilonϵ;

  2. E步(期望步) :在当前参数下,计算隐变量的后验概率γ(i,k)=P(z(i)=k∣x(i);θ)\gamma(i,k)=P(z^{(i)}=k|x^{(i)};\theta)γ(i,k)=P(z(i)=k∣x(i);θ),即样本xix_ixi属于第kkk个高斯分布的概率,公式为:
    γ(i,k)=πk⋅N(xi∣μk,Σk)∑j=1Kπj⋅N(xi∣μj,Σj)\gamma(i,k) = \frac{\pi_k \cdot N(x_i|\mu_k, \Sigma_k)}{\sum_{j=1}^K \pi_j \cdot N(x_i|\mu_j, \Sigma_j)}γ(i,k)=∑j=1Kπj⋅N(xi∣μj,Σj)πk⋅N(xi∣μk,Σk)

    这一步的本质是"根据当前参数,补全模型的隐藏信息"

  3. M步(极大步) :将E步得到的后验概率视为已知权重,对GMM的参数进行加权极大似然估计,更新π,μ,Σ\pi, \mu, \Sigmaπ,μ,Σ:
    {Nk=∑i=1Nγ(i,k)μk=1Nk∑i=1Nγ(i,k)xiΣk=1Nk∑i=1Nγ(i,k)(xi−μk)(xi−μk)Tπk=NkN\begin{cases} N_k=\sum_{i=1}^N \gamma(i,k) \\ \mu_k=\frac{1}{N_k}\sum_{i=1}^N \gamma(i,k)x_i \\ \Sigma_k=\frac{1}{N_k}\sum_{i=1}^N \gamma(i,k)(x_i-\mu_k)(x_i-\mu_k)^T \\ \pi_k=\frac{N_k}{N} \end{cases}⎩ ⎨ ⎧Nk=∑i=1Nγ(i,k)μk=Nk1∑i=1Nγ(i,k)xiΣk=Nk1∑i=1Nγ(i,k)(xi−μk)(xi−μk)Tπk=NNk

    这一步的本质是"将隐变量的概率分布作为权重,求解新的模型参数"

  4. 收敛判断 :重复E步和M步,直到模型参数的变化量小于阈值ϵ\epsilonϵ,或对数似然函数值不再上升,此时的参数即为GMM的近似最优解。

EM算法保证了每次迭代的对数似然函数值非递减,因此一定能收敛到局部最优解。若需得到全局最优解,可通过多次随机初始化参数,选择似然函数值最大的结果。

相关推荐
柯儿的天空2 小时前
Mem0深度解析:给你的ai agent加上长期记忆,让ai从“健忘“到“过目不忘“
人工智能·gpt·自然语言处理·ai作画·aigc·ai编程·agi
FluxMelodySun2 小时前
机器学习(二十五) 降维:主成分分析(PCA)及特征值分解
人工智能·算法·机器学习
Cosolar2 小时前
Transformer训练与生成背后的数学基础
人工智能·后端·开源
CoovallyAIHub2 小时前
MSSP | 不停机不贴标监测旋转风机叶片:无人机+YOLOv5+DeepSORT,2MW 风机现场测试频率误差<2%
人工智能·架构
marteker2 小时前
Pinterest发布AI广告“增效秘籍”:全自动工具可降低超10%点击成本
人工智能·搜索引擎
喵叔哟2 小时前
29_内容生产质量网关Skill:草稿生成+事实校验+发布前检查
网络·人工智能
不开大的凯20772 小时前
B 端 AI 新图景:阿里悟空的战略价值与爱智能 ATOA 的行业实践
人工智能
码路高手2 小时前
Trae-Agent中的agent核心控制逻辑
人工智能·架构