期望最大值(Expectation Maximization, EM)算法, 是一种求解含有隐变量(Latent Variable)的概率模型其参数的极大似然估计(Maximum Likelihood Estimation)方法, 或称为极大后验概率估计. EM算法可以说是一种框架或方法论.
许多算法都以EM算法作为基础, 如:
等. 首先准备EM算法的基础知识
基础知识
1. 凸函数与凹函数
假设函数f(x)在区间I上连续, 且对于∀x1,x2∈I和∀λ∈(0,1), 有:
f(λx1+(1−λ)x2)≤λf(x1)+(1−λ)f(x2)
则称f(x)为凸函数, 若不等号严格成立, 则称为严格凸函数.
相反, 若:
f(λx1+(1−λ)x2)≥λf(x1)+(1−λ)f(x2)
则称f(x)为凹函数, 若不等号严格成立, 则称为严格凹函数.
凸函数与凹函数的直观图像如下图所示.
2. 詹森不等式
已知f(x)为定义域I上的连续函数, x1,x2,⋯,xn是区间[a,b]⊆I内的任意一组实数, p1,p2,⋯,pn为满足条件k=1∑npk=1的一组非负有理实数, 那么:
如果f(x)为凸函数, 下面的不等式恒成立:
f(i=1∑npixi)≤i=1∑npif(xi)
如果f(x)为凹函数, 下面的不等式恒成立:
f(i=1∑npixi)≥i=1∑npif(xi)
以上两个不等式均为詹森不等式(Jensen Inequation).
因此如果X={x1,x2,⋯,xn}服从概率分布P, 即P(X=xi)=pi, 则詹森不等式等价于:
若f(x)为凸函数, 不等式f(E[X])≤E[f(X)]恒成立
若f(x)为凹函数, 不等式f(E[X])≤E[f(X)]恒成立