机器学习中的EM算法详解及R语言实例

CSDN:白马负金羁

最大期望算法(EM)

K均值算法非常简单(可参见之前发布的博文),详细读者都可以轻松地理解它。但下面将要介绍的EM算法就要困难许多了,它与极大似然估计密切相关。

1 算法原理

不妨从一个例子开始我们的讨论,假设现在有100个人的身高数据,而且这100条数据是随机抽取的。一个常识性的看法是,男性身高满足一定的分布(例如正态分布),女性身高也满足一定的分布,但这两个分布的参数不同。我们现在不仅不知道男女身高分布的参数,甚至不知道这100条数据哪些是来自男性,哪些是来自女性。这正符合聚类问题的假设,除了数据本身以外,并不知道其他任何信息。而我们的目的正是推断每个数据应该属于哪个分类。所以对于每个样本,都有两个需要被估计的项,一个就是它到底是来自男性身高的分布,还是来自女性身高的分布。另外一个就是,男女身高分布的参数各是多少。

既然我们要估计知道A和B两组参数,在开始状态下二者都是未知的,但如果知道了A的信息就可以得到B的信息,反过来知道了B也就得到了A。所以可能想到的一种方法就是考虑首先赋予A某种初值,以此得到B的估计,然后从B的当前值出发,重新估计A的取值,这个过程一直持续到收敛为止。你是否隐约想到了什么?是的,这恰恰是K均值算法的本质,所以说K均值算法中其实蕴含了EM算法的本质。

EM算法,又称期望最大化(Expectation Maximization)算法。在男女身高的问题里面,可以先随便猜一下男生身高的正态分布参数:比如可以假设男生身高的均值是1.7米,方差是0.1米。当然,这仅仅是我们的一个猜测,最开始肯定不会太准确。但基于这个猜测,便可计算出每个人更可能属于男性分布还是属于女性分布。例如有个人的身高是1.75米,显然它更可能属于男性身高这个分布。据此,我们为每条数据都划定了一个归属。接下来就可以根据最大似然法,通过这些被大概认为是男性的若干条数据来重新估计男性身高正态分布的参数,女性的那个分布同样方法重新估计。然后,当更新了这两个分布的时候,每一个属于这两个分布的概率又发生了改变,那么就再需要调整参数。如此迭代,直到参数基本不再发生变化为止。

在正式介绍EM算法的原理和执行过程之前,此处首先对边缘分布的概念稍作补充。

2. 收敛探讨

在下一篇中我们将讨论高斯混合模型(GMM),相当于是EM的一种实现。并给出在R中进行数据挖掘的实例。

4. 高斯混合模型

高斯混合模型(GMM,Gaussian Mixture Model)可以看成是EM算法的一种现实应用。利用这个模型可以解决聚类分析、机器视觉等领域中的许多实际问题。

4.1 模型推导

在讨论EM算法时,我们并未指定样本来自于何种分布。实际应用中,常常假定样本是来自正态分布之总体的。也就是说,在进行聚类分析时,认为所有样本都来自具有不同参数控制的数个正态总体。例如前面讨论的男性女性身高问题,我们就可以假定样本数据是来自如图13-5所示的一个双正态分布混合模型。这便有了接下来要讨论的高斯混合模型。

4.2 应用实例

软件包mclust提供了利用高斯混合模型对数据进行聚类分析的方法。其中函数Mclust()是进行EM聚类的核心函数,它的基本调用格式为

原文发布于微信公众号 - 大数据挖掘DT数据分析(datadw)

原文发表时间:2016-05-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI2ML人工智能to机器学习

最大似然估计的2种论证

前面(一步一步走向锥规划 - 最小二乘法)对最小二乘法OLS进行了描述,并且使用最大似然估计Maximum Likelihood Estimation, MLE...

412
来自专栏机器之心

学界 | NTIRE2017夺冠论文:用于单一图像超分辨率的增强型深度残差网络

选自SNU 作者:Bee Lim等 机器之心编译 参与:Smith 图像超分辨率(SR)问题,尤其是单一图像超分辨率(SISR)问题,在近几十年中已经受到了广泛...

3835
来自专栏计算机视觉战队

ECCV-2018最佼佼者的目标检测算法

转眼间,离上次9月3日已有9天的时间,好久没有将最新最好的“干货”分享给大家,让大家一起在学习群里讨论最新技术,那今天我给大家带来ECCV-2018年最优pap...

3273
来自专栏机器之心

专访 | 五一出游赏花,如何优雅地解释百度细粒度识别方案

1373
来自专栏PPV课数据科学社区

最新机器学习必备十大入门算法!都在这里了

我们向初学者介绍十大机器学习(ML)算法,并附上数字和示例,方便理解。 简介 “哈佛商业评论”的一篇文章(https://hbr.org/2012/10/da...

3246
来自专栏算法channel

它的梯度去哪儿了?

斯坦福 NLP 第 9 课介绍了 RNN 语言模型的一个问题:梯度消失现象。那么什么是梯度消失? 为什么 RNN 会出现梯度消失呢? 梯度消失问题需要引起重视吗...

892
来自专栏AI研习社

Kaggle Carvana 图像分割比赛冠军模型 TernausNet 解读

AI 研习社按:2017 年 7 月,美国二手汽车零售平台 Carvana 在知名机器学习竞赛平台 kaggle 上发布了名为 Carvana 图像掩模大挑战赛...

3596
来自专栏瓜大三哥

竞争型神经网络

自组织神经网络(self-Organization Mapping net,SOM)是基于无监督学习方法的神经网络的一种重要类型。自组织神经网络是神经网络最富有...

2805
来自专栏人工智能

最新机器学习必备十大入门算法!都在这里了

原文来源:KDnuggets 作者:Reena Shaw 「雷克世界」编译:BaymaxZ ? 我们向初学者介绍十大机器学习(ML)算法,并附上数字和示例,方便...

1927
来自专栏人工智能LeadAI

TensorFlow从0到1 | 第十四章:交叉熵损失函数——防止学习缓慢

通过上一篇 13 驯兽师:神经网络调教综述,对神经网络的调教有了一个整体印象,本篇从学习缓慢这一常见问题入手,根据Michael Nielsen的《Neural...

3597

扫码关注云+社区