高斯模型混合模型–理论上可以拟合任意概率密度分布

高斯混合模型

  给定变量 x x x 的有限个观测数据 x 1 , x 2 , x 3 , ⋯   , x n x_1,x_2,x_3,\cdots,x_n x1,x2,x3,,xn,对变量 x x x 的概率分布 p ( x ) p(x) p(x) 进行建模的过程称为对变量 x x x 的密度估计,高斯混合模型(Gaussian Mixture Model,GMM)是一种得到了广泛使用且非常有效的密度估计方法,高斯混合模型是用来表示在总分布中含有 K K K 个高斯分布的概率模型,各个高斯分布称为总分布的子分布。混合高斯模型在计算观测数据在总体分布中的概率时,不需要观测数据提供关于子分布的信息。

  高斯分布,也称正态分布,是自然界中广泛存在的一种数据分布形式,其概率密度函数公式如 \href \href{#label}{公式1.1} \href 所示


N ( x ∣ μ , σ 2 ) = 1 2 σ 2 π e − ( x − μ ) 2 2 σ 2 (1.1) N\left(x \mid \mu, \sigma^{2}\right)=\frac{1}{\sqrt{2 \sigma^{2} \pi}} e^{-\frac{(x-\mu)^{2}}{2 \sigma^{2}}} \tag{1.1} N(xμ,σ2)=2σ2π 1e2σ2(xμ)2(1.1)
其中,参数 u u u 表示变量 x x x 的期望,参数 σ \sigma σ 表示变量 x x x 的标准差,更一般的情况下,当变量是多维数据时,即 x \boldsymbol{x} x 的维度 d > 1 d>1 d>1 时,多元高斯分布的概率密度函数如 \href \href{#公式1.2}{公式1.2} \href 所示:


N ( x ; μ , Σ ) = 1 ( 2 π ) d det ⁡ ( Σ ) exp ⁡ [ − 1 2 ( x − μ ) Σ − 1 ( x − μ ) T ] (1.2) N(\boldsymbol{x}; \boldsymbol{\mu}, \Sigma)=\frac{1}{\sqrt{(2 \pi)^{d} \operatorname{det}(\Sigma)}} \exp \left[-\frac{1}{2}(\boldsymbol{x}-\mu) \Sigma^{-1}(\boldsymbol{x}-\mu)^{T}\right] \tag{1.2} N(x;μ,Σ)=(2π)ddet(Σ) 1exp[21(xμ)Σ1(xμ)T](1.2)
其中, μ \boldsymbol{\mu} μ 是一个 d d d 维向量,代表了 x \boldsymbol{x} x 各个维度的的数学期望, Σ \Sigma Σ 是一个 d × d d\times d d×d 的矩阵,表示了变量 x \boldsymbol{x} x 各个维度之间的协方差矩阵。高斯混合模型可以看作 K K K 个高斯分布的组合,其概率分布形式如 \href \href{#公式1.3}{公式1.3} \href 所示:


P ( x ∣ θ ) = ∑ k = 1 K α k ϕ ( x ∣ θ k ) (1.3) P(\boldsymbol{x}\mid \theta)=\sum_{k=1}^{K} \alpha_{k} \phi\left(\boldsymbol{x}\mid \theta_{k}\right)\tag{1.3} P(xθ)=k=1Kαkϕ(xθk)(1.3)
其中, α k ⩾ 0 \alpha_{k} \geqslant 0 αk0 ∑ k = 1 K α k = 1 \sum\limits_{k=1}^{K} \alpha_{k}=1 k=1Kαk=1 θ = ( α 1 , α 2 , … , α K , θ 1 , θ 2 , … , θ K ) \boldsymbol{\theta}=(\alpha_1,\alpha_2,\dots,\alpha_K,\theta_1,\theta_2,\dots,\theta_K) θ=(α1,α2,,αK,θ1,θ2,,θK) 表示GMM模型的参数, θ k \boldsymbol{\theta}_k θk 表示GMM第 k k k 个高斯分布的参数,当 x \boldsymbol{x} x 维度为1时, θ k = ( μ k , σ k 2 ) \boldsymbol{\theta}_k=(\mu_k,\sigma_k^2) θk=(μk,σk2) ϕ ( x ∣ θ k ) \phi\left(\boldsymbol{x}\mid \boldsymbol{\theta}_{k}\right) ϕ(xθk) 由公式 \href \href{#1.1}{公式1.1} \href 给出;当 x \boldsymbol{x} x 维度大于1时, θ k = ( μ k , Σ k ) \boldsymbol{\theta}_k=(\boldsymbol{\mu_k},\Sigma_k) θk=(μk,Σk) ϕ ( x ∣ θ k ) \phi\left(\boldsymbol{x}\mid \boldsymbol{\theta}_{k}\right) ϕ(xθk) 由公式 \href \href{#1.2}{公式1.2} \href 给出。对于GMM模型的观测数据 x i    , i = 1 , 2 , 3 … , n \boldsymbol{x}_i \;,i=1,2,3\dots,n xi,i=1,2,3,n ,可以认为是经过两个采样步骤生成的:第一步,按照概率 α k \alpha_k αk 选择第 k k k 个高斯分布 ϕ ( x ∣ θ k ) \phi(\boldsymbol{x}|\boldsymbol{\theta}_k) ϕ(xθk) ,第二步,按照第 k k k 个高斯分布 ϕ ( x ∣ θ k ) \phi(\boldsymbol{x}|\boldsymbol{\theta}_k) ϕ(xθk) 采样生成观测数据 x i \boldsymbol{x}_i xi ,这里需要重点理解的是,我们并不知道观测数据 x i \boldsymbol{x}_i xi 来自于哪个高斯分布,记 ω i , k ∈ [ 1 , 2 , 3 … , K ] \omega_{i,k}\in [1,2,3\dots,K] ωi,k[1,2,3,K] 表示第 i i i 个观测数据 x i \boldsymbol{x}_i xi 来自第 k k k 个高斯分布的概率, ω i , k \omega_{i,k} ωi,k 是未知的,一般将其称为隐变量。下面将介绍利用期望极大算法估计GMM模型参数的思路。

  期望极大(Expectation Maximum,EM)算法是1977年由Dempster等人1 总结提出的,EM算法是含有隐变量的概率模型参数的极大似然估计法。关于EM算法本身正确性及收敛性的证明可以参考文献2 ,本文只介绍利用EM算法估计GMM模型参数的简要思路:

步骤 1:赋予GMM模型参数初值 θ 0 \boldsymbol{\theta}^0 θ0 ,初值的选择是任意的,但需要注意的是,EM算法只能收敛到局部最优解,所以EM算法对初值是敏感的。

步骤 2:利用当前GMM的模型参数为 θ t \boldsymbol{\theta}^t θt,求隐变量 ω i , k \omega_{i,k} ωi,k 的期望。

θ t \boldsymbol{\theta}^t θt 给定时,对于 \href \href{#公式1.3}{公式1.3} \href 而言, K K K 个高斯分布 ϕ ( x ∣ θ k ) \phi\left(\boldsymbol{x}\mid \boldsymbol{\theta}_{k}\right) ϕ(xθk) 都是确定的,因此可以求出观测数据 x i    , i = 1 , 2 , 3 … , n \boldsymbol{x}_i \;,i=1,2,3\dots,n xi,i=1,2,3,n 属于第 k k k 个高斯分布的概率,如 \href \href{#1.4}{公式1.4} \href 所示:


ω i , k t = α k t ϕ ( x ∣ θ k ) ∑ k = 1 K α k t ϕ ( x ∣ θ k ) (1.4) \omega_{i, k}^{t}=\frac{\alpha_{k}^{t} \phi\left(\boldsymbol{x}\mid \boldsymbol{\theta}_{k}\right)}{\sum\limits_{k=1}^{K}\alpha_{k}^{t} \phi\left(\boldsymbol{x}\mid \boldsymbol{\theta}_{k}\right)} \tag{1.4} ωi,kt=k=1Kαktϕ(xθk)αktϕ(xθk)(1.4)
步骤 3:基于当前的隐变量 ω i , k \omega_{i,k} ωi,k 的值,利用极大似然估计法更新GMM的模型参数为 θ ( t + 1 ) \boldsymbol{\theta}^{(t+1)} θ(t+1)

当隐变量 ω i , k \omega_{i,k} ωi,k 给定时,此时估计GMM模型参数就退化为一个不含隐变量的概率模型参数估计问题,可以利用极大似然估计法求得当前步骤模型参数的相合估计量,如下式所示:
当    d = 1    时 , { α k t + 1 = ∑ i = 1 N ω i , k t N μ k t + 1 = ∑ i = 1 N ω i , k t x i ∑ i = 1 N ω i , k t ( σ k 2 ) t + 1 = ∑ i = 1 N ω i , k ( x i − μ k t + 1 ) 2 ∑ i = 1 N ω i , k 当    d > 1    时 , { α k t + 1 = ∑ i = 1 N ω i , k t N μ k t + 1 = ∑ i = 1 N ω i , k t x i ∑ i ω i , k t Σ k t + 1 = ∑ i = 1 N ω i , k t ( x i − μ k t + 1 ) ( x i − μ k t + 1 ) T ∑ i = 1 N ω i , k t \begin{aligned} & \text{当}\;d=1\;\text{时}, \begin{cases} \alpha_{k}^{t+1}=\frac{\sum\limits_{i=1}^N \omega_{i, k}^{t}}{N}\\\\ \mu_{k}^{t+1}=\frac{\sum\limits_{i=1}^N \omega_{i, k}^{t} x_{i}}{\sum\limits_{i=1}^N \omega_{i, k}^{t}}\\\\ \left(\sigma_{k}^{2}\right)^{t+1}=\frac{\sum\limits_{i=1}^N \omega_{i, k}\left(x_{i}-\mu_{k}^{t+1}\right)^{2}}{\sum\limits_{i=1}^N \omega_{i, k}} \end{cases} \\ & \text{当}\;d>1\;\text{时}, \begin{cases} \alpha_{k}^{t+1}=\frac{\sum\limits_{i=1}^N \omega_{i, k}^{t}}{N}\\\\ \boldsymbol{\mu}_{k}^{t+1}=\frac{\sum\limits_{i=1}^N \omega_{i, k}^{t} \boldsymbol{x}_{i}}{\sum_{i} \omega_{i, k}^{t}}\\\\ \Sigma_{k}^{t+1}=\frac{\sum\limits_{i=1}^N \omega_{i, k}^{t}\left(\boldsymbol{x}_{i}-\boldsymbol{\mu}_{k}^{t+1}\right)\left(\boldsymbol{x}_{i}-\boldsymbol{\mu}_{k}^{t+1}\right)^{T}}{\sum\limits_{i=1}^N \omega_{i, k}^{t}} \end{cases} \end{aligned} d=1, αkt+1=Ni=1Nωi,ktμkt+1=i=1Nωi,kti=1Nωi,ktxi(σk2)t+1=i=1Nωi,ki=1Nωi,k(xiμkt+1)2d>1, αkt+1=Ni=1Nωi,ktμkt+1=iωi,kti=1Nωi,ktxiΣkt+1=i=1Nωi,kti=1Nωi,kt(xiμkt+1)(xiμkt+1)T

为什么高斯模型混合模型(GMM)理论上可以拟合任意概率密度分布呢?

百科搬运工

image-20220404112120271

image-20220404112801552

image-20220404112841935

image-20220404112916615

中文说明

  定理实际上比GMM可以逼近任何概率分布条件要强,因为只用了平移。另外因为高斯函数的积还是高斯函数,似乎用Stone-Weierstrass定理也可以。选用高斯分布的理由其实有很多,一方面因为中心极限定理,生活中高斯分布非常多,另一方面,它实在是太好算了。其实第二个理由更充分,毕竟对任意的概率分布不可能总是高斯逼近是最好的。不过一般的GMM效果都不错。

你可能需要的参考文献

分别对应百科第一段中引用的两个参考文献:

[1] Meir, A., 1963. Tauberian theorems. Israel Journal of Mathematics 1, 29–36. https://doi.org/10.1007/BF02759798
[2] Rudin, W., 1991. Functional analysis, 2nd ed, International Series in Pure and Applied Mathematics. New York : McGraw-Hill.


  1. Dempster, A.P., Laird, N.M., Rubin, D.B., 1977. Maximum likelihood from incomplete data via the EM algorithm. JOURNAL OF THE ROYAL STATISTICAL SOCIETY, SERIES B 39, 1–38. ↩︎

  2. 李航, 《EM算法及其推广》, 收入 统计学习方法, 第2版., 清华大学出版社, 2019, 页 175–183. ↩︎

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Anonymity~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值