高斯混合聚类
高斯混合模型
p(Y|θ)=∑k=1Kakϕ(Y|θk)
其中
ϕ(Y|θk)=12π‾‾‾√δkexp(−(y−uk)22δ2k)∑k=1Kak=1
高斯混合模型的意义可以这样理解,以 a1,a2,…,aK 定义的概率分布从K个高斯分布中选择一个,然后再用这个分布生成一个观测变量 yi ,这样的过程重复N次,得到观测变量序列 Y=y1,y2,…,yN .
聚类定义
设样本为
X=x1,x2,…,xM
,按照高斯混合模型的定义,这m个样本是由高斯混合模型生成m次得到的,每个样本的生成都由有k个高斯分布组成。如果对于样本j,第k个混合成分的概率为
γjk
。那么样本j的类标记为
Cj=argmaxkγjk
使用EM算法求解高斯混合模型
1.E步
Q(θ,θ(i))=∑Zp(Z|Y,θ(i))lnp(Y,Z|θ)
对于高斯混合模型来说,Y为观测变量,
γ
为隐变量
γjk={10如果yj由第k个高斯分布产生
完全似然函数
P(Y,γ|θ)=∏j=1Np(yj,γj1,γj2,..,γjK|θ)=∏j=1N∏k=1K(akϕ(yi|θk))γjk=∏k=1Kankk∏j=1Nϕ(yi|θk)γjk
其中 nk=∑Nj=1γjk,∑Kk=1nk=N
lnp(Y,γ|θ)=∑k=1K(∑j=1Nγjklnak+∑j=1Nγjk(−0.2ln(2π)−lnδk−(yj−uk)22δ2k))
Q函数为
Q(θ,θ(i))=∑k=1K(∑j=1N(∑γjkγjkp(γjk|yj,θ(i)k))lnak+∑j=1N(∑γjkγjkp(γjk|yj,θ(i)k))(−0.2ln(2π)−lnδk−(yj−uk)22δ2k))=∑k=1K(∑j=1Nγjk^lnak+∑j=1Nγjk^(−0.2ln(2π)−lnδk−(yj−uk)22δ2k))
γjk 的期望为
γjk^=∑γjkγjkp(γjk|yj,θ(i)k)=p(γjk=1|yj,θ(i)k)=p(γjk=1,yj|θ(i)k)∑kk=1p(γjk=1,yj|θ(i)k)=p(yj|γjk=1,θ(i)k)p(γjk=1,|θ(i))∑kk=1p(yj|γjk=1,θ(i)k)p(γjk=1,|θ(i))=akϕ(y|θ(i))∑kk=1akϕ(y|θ(i))
2.M步
对
uk
求导
∂Q∂uk=∑j=1Nγjk^yj−ukδ2k=0uk=∑Nj=1γjk^yj∑Nj=1γjk^
对 δk 求导
∂Q∂δk=∑k=1Nγjk^(−1δk+δ−3k(yj−uk)2)=0δ2k=∑jj=1γjk^(yj−uk)2∑jj=1γjk^
对 ak 求导
因为
∑Kk=1ak=1
, 拉格朗日函数为
L(a)=Q(θ,θ(i))+λ(∑k=1kak−1)∂L(a)∂ak=∑j=1Nγjk^ak+λ=0ak=−∑Nj=1γjk^λ∑k=1Kak=−∑Kk=1∑Nj=1γjk^λ=1λ=−Nak=∑Nj=1γjk^N