高斯混合模型是一种业界广泛使用的聚类算法,该方法使用了高斯分布作为参数模型,并使用了期望最大算法(EM)进行训练。
什么是高斯分布
高斯分布有时也被称作正态分布,是一个在数学、物理及工程等领域都非常重要的概率分布,在统计学的许多方面都有着重大的影响。
若随机变量X服从一个数学期望为 μ μ μ、标准方差为 σ 2 σ^2 σ2的高斯分布,记作:
X N ( μ , σ 2 ) X~N(μ,σ^2) X N(μ,σ2)
则其概率密度函数为:
公式中含有2个参数,参数 μ μ μ表示均值,参数 σ σ σ表示标准差,均值决定了其位置,标准差决定了分布的幅度。
有了概率密度函数,在已知参数 μ , σ μ,σ μ,σ的前提下,输入变量x,可以获得其相对应的概率密度。
高斯混合模型
定义:高斯混合模型是指具有如下形式的概率分布模型:
P ( y ∣ θ ) = ∑ k = 1 K α k φ ( y ∣ θ k ) P(y|θ)=\displaystyle\sum_{k=1}^{K}α_kφ(y|θ_k) P(y∣θ)=k=1∑Kαkφ(y∣θk) (1)
其中, α k α_k αk是系数,且 α k ≥ 0 , ∑ k = 1 K α k = 1 α_k≥0,\displaystyle\sum_{k=1}^{K}α_k=1 αk≥0,k=1∑Kαk=1; φ ( y ∣ θ k ) φ(y|θ_k) φ(y∣θk)是高斯分布密度函数,其中 θ k = ( μ k , σ k ) θ_k=(μ_k,σ_k) θk=(μk,σk)
φ ( y ∣ θ k ) = 1 2 π σ k e x p ( − ( y − μ k ) 2 2 σ k 2 ) φ(y|θ_k)=\frac{1}{\sqrt{2π}σ_k}exp(-\frac{(y-μ_k)^2}{2σ_k^{2}}) φ(y∣θk)=2πσk1exp(−2σk2(y−μk)2) (2)
称为第k个分模型。
一般混合模型可以由任意概率分布密度函数代替2中的高斯密度函数,现在只介绍最常用的高斯混合模型。
高斯混合模型参数估计的EM算法
假设观测数据 y 1 , y 2 … … y N y_1,y_2……y_N y1,y2……yN由高斯混合模型生成,
P ( y ∣ θ ) = ∑ k = 1 K α k φ ( y ∣ θ k ) P(y|θ)=\displaystyle\sum_{k=1}^{K}α_kφ(y|θ_k) P(y∣θ)=k=1∑Kαkφ(y∣θk)
其中 θ = ( α 1 , α 2 … α K ; θ 1 , θ 2 … θ K ) θ=(α_1,α_2…α_K;θ_1,θ_2…θ_K) θ=(α1,α2…αK;θ1,θ2…θK),我们用EM算法估计高斯混合模型的参数 θ θ θ
1明确隐变量,写出完全数据的对数似然函数
可以设想观测数据 y j y_j yj,j=1,2……N,是这样产生的:
1)首先依概率 α k α_k αk选择第k个高斯分布分模型 φ ( y