EM 算法是十大经典的机器学习算法,【PS:MC是二十世纪十大算法】
回顾下经典的EM算法,对其理解加深
1. 学习的本质问题
-
, 这是学习的基本目标。人称,likelihood.
直接很难的,所以这里有两种方法转化为联合分布
;
- 直接对联合分布求边缘分布,
;
- 配凑的方法,
;
第一种方法,可用琴生不等式处理。第二种方法,得到的是一个等式,详细的推导过程如下:
然后对在的分布下求上式左右的期望,
其中ELBO是后面第一项,KL散度是后面的第二项;
2. 优化求解
2.1 目标函数特点分析
-
散度大于等于0;
- ELBO 是
的下界 (lower bound);
2.2 两阶段的EM优化算法
- E-step: 固定
, 求
。【q是分布,求期望就好理解了】;
- M-step: 固定
, 求
; 【
是参数,最大化操作就记住了】;
E-step
怎么理解?
E-step
- 改变
, 使得
;
- 实现: KL散度为0,
;
- 评论:这里并没有优化
, 只是对隐变量
做出估计。
M-step
怎么理解?
M-step
- 改变
, 使得
变的更大;
- 那么
也必然变大了;
- 实现: 直接优化
, 具体为
, 后面这个部分被称为complete-data log likelihood
- 评论:这里优化ELBO中的
,从而实现对期望似然的最大化。