华电北风吹
日期:2016-05-07
高斯混合模型属于EM框架的经典应用,不懂EM的先看参考博客一。具体重复的地方本文不重复讲。
高斯混合模型是一个无监督学习的密度估计算法,主要用思路是利用EM算法对混合高斯分布进行极大似然估计。
模型缺点:高斯核个数实现难以确定,EM算法的初始值敏感,局部最优等。
一、高斯混合分布
对于有
k
个高斯分布混合而成的混合高斯分布的概率密度函数有
对于随机变量
z
有
二、高斯混合模型介绍
在这一部分我们都先来看与混合高斯分布有关的两个问题。
1、若给出混合高斯分布的参数
2、、只给出混合高斯分布的采样样本
X={x(1),x(2),...,x(m)}
,求混合高斯分布的参数
ϕ,μ,Σ
。
这两个问题互为逆问题,第一个问题,由模型算样本概率第二个问题,由采样样本推算模型。第一个问题,一个全概率公式就可以搞定。第二个问题,就是本文要讨论的主要内容。
三、高斯混合模型
对于取样于高斯混合分布的
m
个随机取样样本
对于取样样本的对数似然函数为
l(ϕ,μ,Σ)=∑mi=1logp(x(i);ϕ,μ,Σ)(3-1)
由于每个样本
x(i)
可能来自于任意一个高斯核,在这里用一个隐变量
z(i)
表示样本i来自于高斯核
z(i)
。这样利用全概率公式公式(3-1)就可进一步写为
l(ϕ,μ,Σ)=∑mi=1logp(x(i);ϕ,μ,Σ)=∑mi=1log∑kz(i)=1p(x(i)|z(i);μ,Σ)p(z(i);ϕ)(3-2)
利用极大似然估计的方法直接对公式(3-2)求解的话,会发现似然函数求偏导的时候对数函数里面包含关于参数
ϕ,μ,Σ
的求和项,这使得极大似然求解特别麻烦。
而EM算法通过把似然函数转化为似然函数的一个如下形式的下确界,(具体细节,看参考博客)
J(Q,θ)=∑mi=1∑kz(i)=1Qi(z(i))logp(x(i)|z(i);μ,Σ)p(z(i);ϕ)Qi(z(i))(3-3)
在这个下确界形式中,对数函数里面不包含求和项,而使得极大似然估计变得容易。然后依次提高下确界形式的似然性达到求解原问题的目的。
EM迭代算法求解公式(3-2)的过程如下,
———————————————————————————-
Algorithm
GMM(EM)
给定初值
ϕ0,μ0,Σ0
Repeat
until
convergence
E−step:
For each i,j set
w(i)j:=p(z(i)=j|x(i);ϕ,μ,Σ)
M−step:
Update the parameters
ϕj:=1m∑mi=1w(i)j
μj:=∑mi=1w(i)jx(i)∑mi=1w(i)j
Σj:=∑mi=1w(i)j(x(i)−μj)(x(i)−μj)T∑mi=1w(i)j
———————————————————————————-
在
Algorithm
GMM
中,
E−step
不用多说,看不懂的先去看EM算法框架,求解方式如下
w(i)j=Qi(z(i)=j)=p(z(i)=j|x(i);ϕ,μ,Σ)=p(x(i)|z(i)=j;μ,Σ)p(z(i)=j;ϕ)∑kl=1p(x(i)|z(i)=l;μ,Σ)p(z(i)=l;ϕ)(3-4)
若知道了隐变量参数
z(i)
的分布,利用EM算法就可以对公式(3-3)求极大似然估计
θ=argmaxθJ(Q,θ)=argmaxθ∑mi=1∑kz(i)=1Qi(z(i))logp(x(i)|z(i);μ,Σ)p(z(i);ϕ)Qi(z(i))(3-5)
通过极大似然估计求解更新模型参数进行提升。在
Algorithm
GMM(EM)
中,
M−step
就是据此利用极大似然估计对模型参数
ϕ,μ,Σ
进行更新。
四、M-step推导
这一部分主要推导一下怎么用公式(3-5)求导得到M-step更新公式.
算了,不写了,打字麻烦,作为给看博客的你的课下作业了。
参考博客:
1、EM算法框架 http://blog.csdn.net/zhangzhengyi03539/article/details/51339534