M算法
EM算法也称期望最大化(Expectation-Maximum,简称EM)算法。
**它是一个基础算法,是很多机器学习领域算法的基础,**比如隐式马尔科夫算法(HMM)等等。
EM算法是一种迭代优化策略,由于它的计算方法中每一次迭代都分两步,
- 其中一个为期望步(E步),
- 另一个为极大步(M步),
所以算法被称为EM算法(Expectation-Maximization Algorithm)。
- 极大似然估计
- 根据已知条件,通过极大似然估计,求出未知参数;
- 极大似然估计就是用来估计模型参数的统计学方法。
- EM算法基本流程
- 1) 初始化参数;
- 2) 计算分布;
- 3) 重新估计参数;
- 4) 重复1-3步,直到参数不发生变化为止。
EM算法的实现思路:
- 首先根据己经给出的观测数据,估计出模型参数的值;
- 然后再依据上一步估计出的参数值估计缺失数据的值,再根据估计出的缺失数据加上之前己经观测到的数据重新再对参数值进行估计;
- 然后反复迭代,直至最后收敛,迭代结束。