一、背景
在通常的概率模型的参数估计问题中,给定观测变量的数值,运用极大似然估计即可得到待估计参数的值。但是,当除观测变量外还存在一些隐含变量,单纯通过极大似然估计无法得到解析解。
而 EM算法 却可以解决含有 隐变量 的参数估计问题,它的主要思想是通过 迭代 的方法来 近似估计 待估参数的最优值。
符号说明。设观测数据为 ,待估计参数为 ,隐变量为 ,关于 的概率估计模型为 。称 为不完全数据, 连同 为完全数据。
二、概率模型
一般的,没有隐变量的情况下,关于 的概率模型为:
在引入隐变量后的概率模型为:
这本质上是一个全概率公式,不同隐变量的取值构成事件的总体。
三、模型最大化
极大似然估计的问题,归结为最大化上述含有隐变量的概率模型:
但是,上述极大化中存在隐含变量以及求和的对数,求解非常困难。
而EM用迭代的方式来最大化概率模型,若当前参数估计值为 ,我们希望下一轮的估计值 要满足 。
如何实现? 理论上,EM是通过近似估计来估计概率模型的最大值,方法是通过 Jensen不等式 得到 的一个下界,即
等价的,
因此, 就是 的下界,并当 时使得等号成立。因此,只要能够最大化下界,亦能够达到最大化概率模型的目的。因此,下一轮的估计值 为
下界函数曲线在每一轮迭代都是不相同的。优化过程如下图所示,黑色函数表示 ,橙色函数表示每轮迭代后的下界函数。
四、下界的解释
实际上,下界的精确形式为
我们不关注公式的具体推导过程,而是尝试直观的解释一下下界的含义。上式等价于
含义: 在当前轮参数 和 已知条件下关于完全数据对数似然的条件期望。即完全数据对数似然的加权平均,权重是在观测 和当前待估参数 的条件下隐变量的取值为 的概率。我们希望最大化这个加权平均,以更好的近似概率模型的最大值。如果对条件期望的含义不明确,可以参考 条件数学期望 。