码迷,mamicode.com
首页 > 编程语言 > 详细

高斯混合和EM算法

时间:2014-10-30 20:50:13      阅读:448      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   os   ar   sp   数据   on   

给定训练集bubuko.com,布布扣,我们希望构建该数据联合分布bubuko.com,布布扣bubuko.com,布布扣

这里bubuko.com,布布扣,其中bubuko.com,布布扣bubuko.com,布布扣是概率bubuko.com,布布扣,并且bubuko.com,布布扣,用bubuko.com,布布扣表示bubuko.com,布布扣可能的取值。

因此,我们构建的模型就是假设bubuko.com,布布扣是由bubuko.com,布布扣生成,而bubuko.com,布布扣是从bubuko.com,布布扣中随机选择出来的,那么bubuko.com,布布扣就服从bubuko.com,布布扣个依赖于bubuko.com,布布扣的高斯分布中的一个。这就是高斯混合模型

bubuko.com,布布扣是潜在随机变量,即它是隐藏的或者观察不到的,这将使得估计问题变得棘手。

上面公式太多,作一个总结,总体意思是bubuko.com,布布扣关于bubuko.com,布布扣的条件分布符合高斯分布(即正态分布),这个bubuko.com,布布扣是潜在变量,它的值未知,但是bubuko.com,布布扣服从多项式分布,于是bubuko.com,布布扣关于bubuko.com,布布扣的条件分布就是高斯混合模型,而bubuko.com,布布扣是一个潜在变量值不确定,进而导致高斯混合模型的概率估计也变得棘手

可以看出,我们构建的高斯混合模型参数有bubuko.com,布布扣bubuko.com,布布扣,为了估计出这些参数,写出参数的似然函数:

bubuko.com,布布扣

变量bubuko.com,布布扣意味着每一个bubuko.com,布布扣来自于bubuko.com,布布扣个高斯分布中的哪一个,如果我们知道变量bubuko.com,布布扣的值,最大化似然函数问题将变得容易,似然函数将会变成如下形式:

bubuko.com,布布扣

那么参数的最大似然估计可以计算出:

bubuko.com,布布扣

可以看出,当bubuko.com,布布扣已知的时候,最大似然函数的的估计与前面讨论过的高斯判别分析模型(关于高斯判别模型参见生成式学习算法)几乎一样,除了这里bubuko.com,布布扣替代了高斯判别模型中类别标签的角色。

但是在这个问题中bubuko.com,布布扣是未知的,该怎么办?就得运用EM算法。在应用到我们的这个问题中,EM算法分两步,在E步骤中,算法试图猜测出bubuko.com,布布扣的值,在M步骤中,根据E步骤猜测的值更新参数。需要注意的是在M步骤中假定E步骤中的猜测是正确的,算法流程如下:

E-step: 对于每一个bubuko.com,布布扣,令:

  bubuko.com,布布扣

M-step: 更新参数:

  bubuko.com,布布扣

重复上面两步直至收敛(参数不再发生明显变化)

在E-step中计算bubuko.com,布布扣关于bubuko.com,布布扣的后验概率时,参数bubuko.com,布布扣bubuko.com,布布扣用的都是当前的值,第一步时可以随机初始化,用贝叶斯公式,我们可以得到:

bubuko.com,布布扣

分子上的bubuko.com,布布扣是由均值为bubuko.com,布布扣,方差为bubuko.com,布布扣的高斯分布在bubuko.com,布布扣处的概率密度给出,bubuko.com,布布扣由参数

bubuko.com,布布扣给出. 在E-step中对bubuko.com,布布扣的猜测只是猜测它是某个值得概率,被称作“软猜测”,与之对应的“硬猜测”就是一个最好的猜测,即不是0就是1.

和上面我们在推导bubuko.com,布布扣已知时,参数估计的公式相比,EM算法中的参数更新仅仅是用bubuko.com,布布扣代替了bubuko.com,布布扣.

EM算法和k-means算法(参考我的博文K-means聚类算法原理和C++实现)很类似,除了k-means是一个“硬” 类别分配(为每个样本选择一个确定的类别),而这里是以概率bubuko.com,布布扣的“软”分配(就是bubuko.com,布布扣取某个值的概率)。同k-means一样,EM算法也容易陷入局部最优,所以多次运行,每次都将参数初始化为不同的值将会是一个很好的解决办法。

 

EM算法就是不断重复猜测bubuko.com,布布扣的值,但是到底是如何进行的呢,如何保证收敛性呢,在下一篇博文将继续讨论,从而使得EM算法能够更加容易应用到各种存在潜在变量的参数估计问题中,而且将讨论如何保证算法收敛。

高斯混合和EM算法

标签:style   blog   http   color   os   ar   sp   数据   on   

原文地址:http://www.cnblogs.com/90zeng/p/Mixtures_of_Gaussians_and_the_EM_algorithm.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!