最大期望算法(EM)


K均值算法很easy(可參见之前公布的博文),相信读者都能够轻松地理解它。

但以下将要介绍的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中进行数据挖掘的实例。

未完,待续...

-----------------------------------------------------------------

本文參考文献:

1、斯坦福的公开课——机器学习 。由Andrew Ng主讲

2、JerryLead的博客

3、数据挖掘导论,Pang-Ning Tan,Michael Steinbach,Vipin Kumar 著

转载于:https://www.cnblogs.com/wzzkaifa/p/7232647.html

机器学习中的EM算法具体解释及R语言实例(1)相关推荐

  1. python 梯度提升树_机器学习:梯度提升算法|python与r语言代码实现

    梯度提升算法 10.1 GBM GBM(梯度提升机)是一种在处理大量数据以进行高预测的预测时使用的Boosting算法.Boosting实际上是一个学习算法的集合,它结合了几个基本估计量的预测,以便比 ...

  2. 数据科学和机器学习中使用的最多的20个R语言包

    We list out the top 20 popular Machine Learning R packages by analysing the most downloaded R packag ...

  3. 机器学习笔记之EM算法(二)EM算法公式推导过程

    机器学习笔记之EM算法--EM算法公式推导过程 引言 回顾:EM算法公式 推导过程 引言 上一节介绍了隐变量和EM算法,以及 以EM算法公式为条件,证明了随着EM算法迭代步骤的增加,每次迭代得到新的模 ...

  4. 机器学习系列之EM算法

    机器学习系列之EM算法 我讲EM算法的大概流程主要三部分:需要的预备知识.EM算法详解和对EM算法的改进. 一.EM算法的预备知识 1.极大似然估计 (1)举例说明:经典问题--学生身高问题 我们需要 ...

  5. louvian算法 缺点 优化_机器学习中的优化算法(1)-优化算法重要性,SGD,Momentum(附Python示例)...

    本系列文章已转至 机器学习的优化器​zhuanlan.zhihu.com 优化算法在机器学习中扮演着至关重要的角色,了解常用的优化算法对于机器学习爱好者和从业者有着重要的意义. 这系列文章先讲述优化算 ...

  6. 机器学习中的分类算法

    机器学习中的分类算法 机器学习,模式识别中很重要的一环,就是分类,因为计算机其实无法深层次地理解文字图片目标的意思,只能回答是或者不是.当然现在卷积神经网络正在希望计算机能够看懂东西,这次我们先来看一 ...

  7. 机器学习笔记之EM算法(一)隐变量与EM算法公式的收敛性

    机器学习笔记之EM算法--隐变量与EM算法公式的收敛性 引言 隐变量 示例1 示例2 EM算法 包含隐变量的混合概率模型 EM算法的表达形式 EM算法的收敛性 EM算法的收敛性证明的条件与目标 EM算 ...

  8. 炼数成金数据分析课程---16、机器学习中的分类算法(交叉内容,后面要重点看)...

    炼数成金数据分析课程---16.机器学习中的分类算法(交叉内容,后面要重点看) 一.总结 一句话总结: 大纲+实例快速学习法 主要讲解常用分类算法(如Knn.决策树.贝叶斯分类器等)的原理及pytho ...

  9. 机器学习中树模型算法总结之 决策树(下)

    写在前面 首先回顾一下上一篇的相关内容,主要是理论的介绍了决策树的模型及几种常见的特征选择准则,具体可参见机器学习中树模型算法总结之 决策树(上).今天主要接着学习,包括决策树的生成(依赖于第一篇的三 ...

最新文章

  1. C# 操作Excel数据透视表
  2. AI开发者大会之语音语义技术实践与应用:2020年7月3日《NLP在教育行业的应用》、《AI防疫-语音语义技术在政务联络场景中的应用》、《智能客服机器人在售前导购场景中的应用实践》
  3. deepin ubuntu修改grub启动延时时间
  4. 【操作系统】进程间通信的五种方式
  5. 《统计学习方法》—— 感知机原始形式、感知机对偶形式的python3代码实现(三)
  6. java8时间类的好处_Java8——时间类
  7. android自定义ViewPager之——处理与ScrollView的事件冲突
  8. 有没有一种让人欲罢不能的学习方法?
  9. 网站技术分析报告之——开心网_转载
  10. COLORMAP_JET的颜色规律
  11. mysql Incorrect string value \xF0\x9F\x98\x84\xF0\x9F
  12. 学习日志之synthesis and optimization(4)——banding and sharing
  13. 使用安卓手机上的shh软件ConnectBot管理您的Linux服务器
  14. 2022-04-01每日刷题打卡
  15. PC端查看WiFi密码
  16. 基于JAVA口红专卖网站计算机毕业设计源码+数据库+lw文档+系统+部署
  17. 计算机大赛主题板报,中小学电脑制作大赛电子板报优秀作品国学.ppt
  18. IDE硬盘的容量限制
  19. 织梦安装会错版、乱码、二级目录安装问题
  20. 解决fonts.googleapis.com/css加载卡,谷歌字体本地加载下载

热门文章

  1. 【集训第四天·继续刷题】之 lgh怒刚ypj
  2. 《JS权威指南学习总结--第九章 类和模板》
  3. sql语句的进化--原始篇
  4. WF单元测试系列3:测试Activity的行为
  5. redis入门(数据类型)
  6. python学习笔记(四)、条件、循环及其他语句
  7. Java——BigInteger类和BigDecimal类
  8. 【noiOJ】P1996
  9. 最优秀的ajax框架 --转
  10. 大学最后一个学期了,感觉没对头。。。