EM算法

EM算法实际上是一个鸡生蛋,蛋生鸡的问题。

假设男生和女生的身高分布都服从正态分布。现在有一批身高数据,包含男生的数据和女生的数据,要求求出男生和女生各自的身高的正态分布的模型。

当我们知道了每个人是男生还是女生,我们可以很容易利用最大似然对男女各自的身高的分布进行估计。

反过来,当我们知道了男女身高的分布参数我们才能知道每一个人更有可能是男生还是女生。例如我们已知男生的身高分布为N(μ1=172,σ1^2=25), 女生的身高分布为N(μ2=162,σ2^2=25), 一个学生的身高为180,我们可以推断出这个学生为男生的可能性更大。

但是现在我们既不知道每个学生是男生还是女生,也不知道男生和女生的身高分布。这就成了一个先有鸡还是先有蛋的问题了。

EM的意思是“Expectation Maximization”,具体方法为:

1、先设定男生和女生的身高分布参数(初始值),例如男生的身高分布为N(μ1=172,σ1^2=25), 女生的身高分N(μ2=162,σ2^2=25)布为 ,当然了,刚开始肯定没那么准;

2、然后计算出每个人更可能属于第一个还是第二个正态分布中的(例如,这个人的身高是180,那很明显,他最大可能属于男生的那个分布),这个是属于Expectation 一步。

3、我们已经大概地按上面的方法将这200个人分为男生和女生两部分,我们就可以根据之前说的最大似然估计分别对男生和女生的身高分布参数进行估计。这个是 Maximization;

4、然后,当我们更新这两个分布的时候,每一个学生属于女生还是男生的概率又变了,那么我们就再需要调整E步;

5、……如此往复,直到参数基本不再发生变化为止。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载 http://blog.csdn.net/zouxy09 EM算法是一种迭代算法,用于含有隐含变量的概率模型...
    Jlan阅读 2,185评论 1 13
  • 参考文章:http://blog.csdn.net/sallyyoung_sh/article/details/5...
    文哥的学习日记阅读 4,246评论 0 2
  • 例子:现在随机抽取100个人的身高;其中男生身高服从N1 的正态分布,女生服从N2的正态分布; 如果我们很明确知道...
    冰鋒阅读 695评论 0 1
  • 1. 前提推导 2. EM算法 EM算法就是含有隐变量的概率模型参数的极大似然估计法。 延森不等式(Jensen'...
    Godlike_51阅读 404评论 0 0
  • EM算法的大概流程主要三部分:需要的预备知识、EM算法详解和对EM算法的改进。 一、EM算法的预备知识 1、极大似...
    尼小摩阅读 805评论 0 1