推导EM算法,并证明收敛性。
Jensen’s inequality
定理:若是凸函数,
是随机变量,我们有:
- 若
是严格凸函数,也就是
恒成立,同时
(也就是概率为1),则等号成立。
- 若
是凹函数,则该定理也成立,只不过将大于等于换成小于等于。
忽略证明,该定理并不直观,可以用一个简单的例子帮助记忆:

收敛性证明
我们想用模型拟合数据,也就是求似然函数:
其中,是隐变量。如果
已知,那么直接用MLE求解即可,如果未知,则需要用EM算法迭代求解。
EM算法分为两步:
- E step:每次得到似然函数
的一个下界。
- M step:对该下界进行优化。
我们首先可以假设是
的分布,也就是满足:
因此可以得到:
这里用到了期望就是概率
的思想。我们将函数看成是在随机变量
上的概率分布,将函数
看成是
log function
。因此,第二个等式可以看作是。而由于
函数是凹函数,因此根据Jensen’s inequality,可以得到不等式三。
这样,对于任意的分布,我们给出了似然函数的下界。因此,我们如何选择一个合适的
呢?
我们如果对当前的有一个估计值,那么很自然的思想就是用这个估计值来得到不等式的下界。根据之前Jensen’s inequality不等式的分析,如果我们的随机变量是一个常量,那么等式一定成立,即:
因此,我们只需要即可。同时,由于
的条件需要满足,因此构造一个
函数为:
实际上,这个函数就是我们熟悉的在给定
下的后验分布。
如何证明收敛性呢?也就是需要证明始终成立。
由于我们选择的函数能使得等式成立,因此在第
次迭代时,有:
在第次时,我们的
是最大化右边的式子的来的,因此:
其中,第一个不等式是根据Jensen’s inequality,第二个不等式是根据最大化的性质来的。
如果我们定义:
那么,EM算法也可以看作是在上进行
coordinate ascent
:
- E step 时,固定
,根据
最大化
- 实际上是通过Jensen’s inequality的性质,定义
函数为后验概率满足等式)
- 实际上是通过Jensen’s inequality的性质,定义
- M step 时,固定
,根据
最大化
- 实际上是通过MLE进行最大化
GMM revisited
GMM的思想不再阐述,这里主要进行推导closed form。
E step
E step相对容易一些,我们对于当前步估计的所有参数值,计算的后验分布:
M step
根据上一步得到的的分布,我们最大化
的下界:
我们只需要分别对三个参数进行求导,即可得到:
这也就是我们上一个博客给出的EM算法的迭代过程。
网友评论