EM算法的讲解的内容包括以下几个方面:
1、最大似然估计
2、K-means算法
3、EM算法
4、GMM算法
EM算法本质是统计学中的一种求解参数的方法,基于这种方法,我们可以求解出很多模型中的参数。
1、最大似然估计
在求解线性模型的过程中,我们用到了最大似然估计(MLE)的思想。
EM算法达到的目的和最大似然估计是一样的,只不过EM算法可以帮助我们去计算一些隐藏变量的参数。即当极大似然估计无法解决某些问题的时候,我们需要使用EM算法这种迭代算法的思路,不断得逼近最后的参数解。
EM算法不是具体某一种模型,而是一种求解问题的思路。在统计学中这种算法思想用的特别多。
2、K-means算法
K-means算法的求解过程本质上就是EM算法的思想,面试中曾经有人问:K-means算法究竟是如何运用EM算法来实现的? 这样两个算法就通过一个问题来挂上钩了。
3、EM算法
然后讲到如何将EM算法用一种比较通式化的方法来实现求解过程,即但凡我们遇到一个可以用EM算法来解决的问题,我们如何去求解这个问题对应的参数。
就好比极大似然估计中,我们使用联合概率作为似然函数的值,然后求解极大值。当然首先不同的问题会有不同的联合概率,先要把这个联合概率构造出来。
4、GMM算法
最后使用EM算法解决一个问题:有一个模型叫做高斯混合模型(GMM),可以通过EM算法来帮助我们来求解它最后的参数值。
一、最大似然估计(MLE)回顾
最大似然估计(Maximum Likelihood Estimati) 就是利用已知的样本结果,反推最有可能(最大概率)导致这样结果的参数值的计算过程。直白来讲,就是给定了一定的数据,假定知道数据是从某种分布中随机抽取出来的,但是不知道这个分布具体的参数值,即“模型已定,参数未知”,MLE就可以用来估计模型的参数。
MLE的目标是找出一组参数(模型中的参数),使得模型产出观察数据的概率最大。
例子:假定盒子中有黑白两种球,数目未知,黑白球比例也未知,现只知道随机的十次有放回的抽样情况,求各个盒子中抽取出白球的概率?
MLE求解过程:
1、编写似然函数(即联合概率函数) <似然函数:在样本固定的情况下,样本出现的概率与参数θ之间的函数>;
2、对似然函数取对数,并整理;(一般都进行)
3、求导数。
4、解似然方程。
分析: 盒子中只有黑球和白球,假定白球的比例为p,那么黑球的比例为1-p。因为采取的是有放回的随机抽取,那么每次抽取出来的球的颜色服从同一独立分布情况,即每次抽取之间是独立互不影响的。
求解盒子1中抽取出白球的概率:
求解盒子2中抽取出白球的概率:
求解盒子3中抽取出白球的概率:
求解盒子4中抽取出白球的概率:
求解盒子5中抽取出白球的概率:
二、贝叶斯算法估计
贝叶斯算法估计是一种从先验概率和样本分布情况来计算后验概率的一种方式。
贝叶斯算法中的常见概念:
1、P(A)是事件A的先验概率或者边缘概率。
2、P(A|B)是已知B发生后A发生的条件概率,也称为A的后验概率。
3、P(B|A)是已知A发生后B发生的条件概率,也称为B的后验概率。
4、P(B)是事件B的先验概率或者边缘概率。
例子:现在有五个盒子,假定每个盒子中都有黑白两种球,并且黑白球的比例如下;现已知从这五个盒子中的任意一个盒子中有放回的抽取两个球,且均为白球,问这两个球是从哪个盒子中抽取出来的?
1、使用MLE(最大似然估计),结论是从第五个盒子抽取的球:
2、使用贝叶斯算法估计,结论是从第五个盒子抽取的球:假定抽出白球为事件B,从第i个盒子中抽取为事件Ai。
思路递进:
现在不是从五个盒子中任选一个盒子进行抽取,而是按照一定的概率选择对应的盒子,概率如下。假定抽出白球为事件B,从第i个盒子中抽取为事件Ai。结论是从第四个盒子抽取的球。
三、最大后验概率估计(MAP)
根据上面的例子我们得出了以下的结论:
(最大后验概率估计Maximum a posteriori estimation)MAP 和 MLE 样,都是通过样本估计参数θ的值;
1、在MLE中,是使似然函数最大的时候参数θ的值,MLE中假设先验概率是一个等值的;
2、而在MAP中,则是求θ使的值最大,这也就是要求θ值不仅仅是让似然函数最大,同时要求θ本身出现的先验概率也得比较大。
可以认为MAP是贝叶斯算法的一种应用: