当前位置:   article > 正文

机器学习---算法基础(十)EM算法_机器学习em算法

机器学习em算法

EM算法概述

EM算法即期望最大化(Expection Maximization)算法。是一种迭代算法,作为一种数据添加算法,在现在的DL学习中经常见到。

隐变量

隐变量指的是不可观测的随机变量,我们通常通过可以观测的变量来对隐变量来进行推测。例如我们知道1000个人的身高体重,但是我们并不了解这些样本中的男女比例,对于男女比例来说就是一个隐变量。

EM算法的感性理解

EM算法的公式推导

对于EM算法简单的说可以理解为以下几步:

  • 预测非隐变量的参数(E)
  • 根据预测的非隐变量的参数,估算隐变量(M)
  • 根据预测出的隐变量再重新更新非隐变量。。。

目前存在以下的数据:

假设现在有两枚硬币1和2,,随机抛掷后正面朝上概率分别为P1,P2。为了估计这两个概率,做实验,每次取一枚硬币,连掷5下,记录下结果,如下:
在这里插入图片描述其中使用哪种硬币就可以算作是隐变量。
我们首先假设两个硬币向上的概率为0.2和0.7。则在已知样本状况的情况下,在我们假设的概率下,发生的概率(可能性)如下所示:
在这里插入图片描述利用上面这个表,我们可以算出每轮抛掷中使用硬币1或者使用硬币2的概率。比如第1轮,使用硬币1的概率是:
0.00512/(0.00512+0.03087)=0.14
使用硬币2的概率是1-0.14=0.86
依次可以算出其他4轮的概率,如下:

在这里插入图片描述
上表中的右两列表示期望值。看第一行,0.86表示,从期望的角度看,这轮抛掷使用硬币2的概率是0.86。相比按照最大似然概率,直接将第1轮估计为用的硬币2,此时的我们更加谨慎,我们只说,有0.14的概率是硬币1,有0.86的概率是硬币2,不再是非此即彼。
这样我们在估计P1或者P2时,就可以用上全部的数据,而不是部分的数据,显然这样会更好一些。
这一步,我们实际上是估计出了z的概率分布,这步被称作E步。

我们按照期望最大似然概率的法则来估计新的P1和P2:

以P1估计为例,第1轮的3正2反相当于
0.143=0.42正
0.14
2=0.28反
依次算出其他四轮,列表如下:
在这里插入图片描述
P1=4.22/(4.22+7.98)=0.35
可以看到,改变了z值的估计方法后,新估计出的P1要更加接近0.4。原因就是我们使用了所有抛掷的数据,而不是之前只使用了部分的数据。
这步中,我们根据E步中求出的z的概率分布,依据最大似然概率法则去估计P1和P2,被称作M步。

EM算法公式推导

最大似然函数为:
在这里插入图片描述其中theta为我们所需要求的未知参数。
式(1)将p (xi) 用边缘分布列反向拆分为联合分布。

接下来,定义隐含变量Z的分布Qi:
在这里插入图片描述

我们在(1)式的 ln 里,分子分母同乘一个值,得到(2)式:
在这里插入图片描述
接下来需要利用到Jensen不等式和数学期望,在期望方程中,我们用到了
r)

如上公式。套用在(2)式中,我们定义为:
在这里插入图片描述
套用到Jensen不等式中,即为:
在这里插入图片描述

根据Jensen不等式,其中lnx为凹,公式如下:
在这里插入图片描述
接下来我们将(4)式展开,得到如下:
在这里插入图片描述

那么,我们可以得到L(θ) 和 (5) 的关系:
在这里插入图片描述
我们可以将(5)式看作是 θ 的函数,θ 又是概率模型中的参数,那么上式求得的左式,即为L(θ)的下界。
在这里插入图片描述

我们求θ的过程,可以看作图中右移的过程, 在给定θ之后,求Qi的过程,即为上移的过程。
在这里插入图片描述

EM算法的优势

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/690769
推荐阅读
相关标签
  

闽ICP备14008679号