Expectation Maximization Algorithm
EM 算法是一种从不完全数据或者含有隐含变量(hidden variable)的数据集中求
解概率模型参数的极大似然估计方法,采用迭代的方式,每次迭代分为两步:E 步:
求期望(expectation);M 步:求极大似然(maximization)。
1.从极大似然估计到 EM 算法
1.1 引出
在之前的学习过程中,我们知道在已知数据的分布而不知具体分布参数的时候,我
们会使用极大似然估计来估计出该分布的参数 ,具体过程为:
1 写出似然函数
2.对似然函数取对数,得到 log 形式
3.对对数似然函数求导,令其为 0,得到似然方程
4.求解似然方程,得到所求参数
极大似然估计,只是一种概率论在统计学的应用,它是参数估计的方法之一。假设
已知某个随机样本满足某种概率分布,但其中具体参数不清楚,参数估计就是通过
若干次试验,观察其结果,利用结果推出参数的估计值。最大似然估计是建立在这
样的思想上:已知某个参数能使这个样本出现的概率最大,我们当然不会再去选择
其他小概率的样本,所以干脆就把这个参数作为估计的真实值。
与最大似然估计不同的是,EM 所处理的是不完备的数据,其中含有隐含变量,也
就是说很难直接写出似然函数,我们需要通过隐含变量的介入,得到隐变量条件下
的似然函数,再进一步进行求解。
形式化描述:假设我们有一个观测样本集
(
)
,这些样本属于
不同的类别
,即模型中的隐变量数据,联合分布,条件
分布但任务是求模型的参数 ,此时因为隐变量的存在,使得观
测样本不是完全数据,最大似然很难直接用于求解,自然地想法是如果我们知道隐
变量,那么问题便会变得简单。此时问题变成
对于(1)式,即为似然函数,我们的目标是去最大化(1)式,所以我们根据联合
概率密度下求边缘概率密度的公式,于是我们得到了(2)式,显然去对一个和的
log 函数求导并不是一件容易的事情,于是我们引入隐含变量 Z 的分布,下面
我们会对其进行具体的分析和推导.