高斯混合模型
混合模型是一个用来表示在总体分布中含有K个子分布的概率模型,也就是说,混合模型表示了观测数据在总体中的概率分布,它由K个子分布组成的混合分布。
高斯混合模型可以看作是由K个单高斯模型组合而成的模型
定义如下:
高斯混合模型的概率分布为:
对于单高斯模型,可以用最大似然法估计参数
θ
\theta
θ的值
取对数,连乘转换为连加
对于高斯混合模型,对数似然则为:
EM算法
例子:
EM算法详解+通俗例子理解_呆呆象呆呆的博客-CSDN博客_em算法实例
对于M个相互独立的样本 x = ( x ( 1 ) , x ( 2 ) , . . . , x ( m ) ) x=(x^{(1)},x^{(2)},...,x^{(m)}) x=(x(1),x(2),...,x(m)),对应的隐含数据 z = ( z ( 1 ) , z ( 2 ) , . . , z ( m ) ) z=(z^{(1)},z^{(2)},..,z^{(m)}) z=(z(1),z(2),..,z(m)),此时 ( x , z ) (x,z) (x,z)为完全数据,则观测数据 x ( i ) x^{(i)} x(i)的概率为 P ( x ( i ) ∣ θ ) P(x^{(i)}|\theta) P(x(i)∣θ),完全数据 ( x ( i ) , z ( i ) ) (x^{(i)},z^{(i)}) (x(i),z(i))的似然函数为 P ( x ( i ) , z ( i ) ∣ θ ) P(x^{(i)},z^{(i)}|\theta) P(x(i),z(i)∣θ)
关于隐含数据分布 Q i ( z ( i ) ) Q_i(z^{(i)}) Qi(z(i)), ∑ z Q i ( z ) = 1 , Q i ( z ) ∈ [ 0 , 1 ] \sum_zQ_i(z)=1, Q_i(z)\in [0,1] ∑zQi(z)=1,Qi(z)∈[0,1]
可以把上式 Q i ( z ) Q_i(z) Qi(z)看成概率
用到了Jensen不等式
由 J e n s e n Jensen Jensen不等式可知,等式成立的条件是随机变量时常数,则有
对于任意的i,我们得到
方程两边同时累加和:
E步:计算联合分布的条件概率期望:
根据参数的初始值或上一次迭代的模型参数来计算隐含变量的后验概率,其实就是隐含变量的期望值。
M步:极大化 L ( θ ) L(\theta) L(θ),得到 θ \theta θ
首先我们固定 θ \theta θ,调整 Q ( z ) Q ( z ) Q(z) 使下界 J ( z , Q ) J ( z , Q ) J(z,Q) 上升至与 L ( θ ) L ( θ ) L(θ) 在此点 θ \theta θ处相等,然后固定 Q ( z ) Q ( z ) Q(z),调整 θ \theta θ使下界 J ( z , Q ) J ( z , Q ) J(z,Q) 达到最大值 θ t \theta_t θt
高斯混合模型参数估计
1、样本分类已知情况下的GMM
设样本容量为N,总类别为K,属于K个分类的样本数量分别是 N 1 , N 2 , . . . , N K N_1,N_2,...,N_K N1,N2,...,NK
属于第k个分类的样本集合为 L ( k ) L(k) L(k)
第k个类别的概率 α k = N k N \alpha_k=\frac{N_k}{N} αk=NNk
第k类的均值 μ k = 1 N k ∑ x ∈ L ( x ) x \mu_k = \frac{1}{N_k}\displaystyle\sum_{x\in L(x)}x μk=Nk1x∈L(x)∑x
第k类的协方差: Σ k = 1 N k ∑ x ∈ L ( x ) ( x − μ k ) ( x − μ k ) T \Sigma_k = \frac{1}{N_k}\displaystyle\sum_{x\in L(x)}(x-\mu_k)(x-\mu_k)^T Σk=Nk1x∈L(x)∑(x−μk)(x−μk)T
2、样本分类未知的情况下的GMM
论文中:
l o g L ( θ ) = ∑ n = 1 N l o g ∑ k = 1 K π k N ( R n ∣ 0 , Σ k ) logL(\theta)=\displaystyle\sum^N_{n=1}log\displaystyle\sum^K_{k=1}\pi_kN(R_n|0,\Sigma_k) logL(θ)=n=1∑Nlogk=1∑KπkN(Rn∣0,Σk)
N N N为样本的个数, K K K为子高斯的个数, π k \pi_k πk为混合系数, R n R_n Rn为第n个样本的雨线
E步:
假设模型参数已知的情况下求隐含变量z,E步就是求R由各个子高斯生成的概率
γ
n
k
\gamma_{nk}
γnk就是样本n属于第k个高斯的概率
M步:
-
属于第k个高斯的总个数(概率):<img
-
属于第K类的期望:
$\mu_k=\frac{1}{N_k}\displaystyle\sum^N_{n=1}\gamma_{nk}R_n$
-
属于第K类的方差:
通过最大似然调整每个高斯的均值方差。
通过最大似然调整每个高斯的均值方差。