EM算法解决GMM问题

Note:本篇博文1,2部分主要是对书籍Pattern Recognition and Mechine Learning 第九章9.2节的翻译

高斯混合模型

高斯混合模型是几个高斯成分的简单线性叠加,可以提供比单高斯更加丰富的密度模型。
高斯模型的形式:
这里写图片描述
这就表示此模型是由K个高斯分布线性叠加而成。

高斯混合模型公式的推导

引入一个K维的二进制随机变量z,其中只有一个元素 zk 为1,其他元素都为0。因此 zk 的值满足 zk0,1 并且 kzk=1 。通过哪个元素不为0,可以看出向量z有K种可能的状态。

p(zk=1)=πk

πk 必须满足
0πk1
k=1Kπk=1

因为z是1-K维的表示,所以其分布可以写为
p(z)=k=1Kπzkk

同样的,在确定了z后x的条件概率是一个高斯分布
p(x|zk=1)=N(x|uk,k)

也可以写成:
这里写图片描述
由此得
这里写图片描述

后验概率

另外一个具有重要作用的度量是x确定时z的条件概率。我们可以使用 γ(zk) 来表示 p(zk=1|x) ,其值可以用贝叶斯公式求得
这里写图片描述
我们可以把 π 看作 zk=1 的先验概率, γ(zk) 看作已知x时的后验概率。

最大似然

假定一观测样本集 x1,...,xN ,我们希望用一个高斯混合模型来描述。我们用一个N*D的矩阵X来表示这个数据集,X的第n行为 xTn 。同样地,相应的隐含变量可以用N*K的矩阵Z表示,每一行是 zTn 。假定每个样本点是从概率分布中独立地抽取出来的,那么对数似然函数可以表示为
这里写图片描述

高斯分布的EM算法

更新参数

对上面的对数似然函数关于 μk 求偏导使之等于0,我们得到这里写图片描述
两侧乘 k 得到
这里写图片描述
对数似然函数关于 k 求导可得
这里写图片描述
最后,我们关于混合系数 πk 来最大化 lnp(X|π,μ,) 。考虑到约束条件 z=1 引入一个拉格朗日乘子:
这里写图片描述
πk 求导得到
这里写图片描述
最终得到(这里我推导不出来)
这里写图片描述

算法步骤

给一个高斯混合模型,我们的目标是最大化与参数(高斯成分的均值,协方差和混合系数)相关的对数似然函数。

1 Initialization

舒适化均值 μk ,协方差矩阵 k 和混合系数 πk ,并且估计对数似然函数(log likelihood)的初始值。

2 E step

利用当前参数计算
这里写图片描述

3 M step

重新估计参数
这里写图片描述
其中:
这里写图片描述

4 计算log likelihood

这里写图片描述
检查参数或者对数似然函数的收敛性。如果不满足收敛准则,返回第二步。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值