假定我们现在有训练集,包含m个独立的样本,我们现在希望从中找到该组数据的模型的参数
。为了求解这个问题,我们先取参数的对数极大似然
但是我们不要忘了,我们还有隐变量,我们也要把z添加到似然函数当中去
正常极大似然估计是最大化上面那个式子,求导令其得0求得参数值,但是这里明显无法直接求出参数的。所以我们需要一些技巧来求解这个似然函数。
我们令代表隐变量
的一个分布,现在我们来改造一下似然函数(这里就是上下同时乘以
)
这里我们还要注意一下这个式子
这个代表什么意思呀?这个不就是的期望么?
这里用到了Jensen不等式,将等号变为大于等于号,而且因为这里的对数函数为凹函数,所以得出这个结论
但是我们还要考虑的一点是,什么情况下才能取到这个等号。
我们只有令上面这个式子等于c也就是为一个定值时才能取到等号。而且是一个分布,所以满足
这样结合上面的公式,我们得到这样一个结果
也就是说令为
的一个条件概率时就可以满足上面的条件。到这里就是EM算法中的E。
现在如果我们极大化这个式子
也就意味着在寻找似然函数的下界。发现没有我们将原来复杂的一个问题简单化了,现在我们尽可能的让上面的式子求其最大值,直到这个最大值等于原本的似然函数
,我们也就间接的得到了似然函数
的极大值,有点绕,但是我们能得到一个信息,就是可以求似然函数的极大值了。这个下界我们不妨用
来表示,且
与
有关。

固定,调整使下界与似然函数在点处相等,然后固定,调整使得下界达到最大值,此时得到新的,然后再固定,调整
使得下界
与似然函数相等,重复这个过程,直到收敛至似然函数的最大值。
现在我们把上面式子中的常数项去掉再看一下
上面这个式子就是EM算法中的M。
至此整个EM算法的数学公式推导过程已经完毕了。
