适用范围
假设训练样本的属性变量是不完整的
隐变量
令XX表示已经观测的变量集合,ZZ表示隐变量集,ΘΘ表示模型参数.如果对ΘΘ做最大似然估计,则应当最大化对数似然
LL(Θ∣X,Z)=lnP(X,Z∣Θ)LL(Θ∣X,Z)=lnP(X,Z∣Θ)
然而由于ZZ是隐藏变量,上式无法直接求解。此时我们可以通过对计算期望,来最大化已观测数据的对数“边际似然”(marginal likelihood)
LL(Θ∣X)=lnP(X∣Θ)=ln∑ZP(X,Z∣Θ)(A)(A)LL(Θ∣X)=lnP(X∣Θ)=ln∑ZP(X,Z∣Θ)
EM(Expectation_Maximization)算法
EM是常用的估计参数隐藏变量的利器,它是一种迭代式方法,其基本思想是:若参数ΘΘ已知,则可以对训练数据集推断出最优隐变量ZZ的值(步);反之,若ZZ的值已知,则可以方便对参数做极大似然估计(MM步)。
于是,以初始值为起点,对(AA),可以迭代执行以下步骤直至收敛:
- 基于推断隐变量ZZ的期望,记做ZtZt
基于已观测变量XX和ZtZt对参数ΘΘ做极大似然估计,记做Θt+1Θt+1
EM算法的步骤
E步
以当前参数ΘtΘt推断隐变量分布P(Z∣X,Θt)P(Z∣X,Θt),并计算对数似然LL(Θ∣X,Z)LL(Θ∣X,Z)关于ZZ的期望
Q(Θ∣Θt)=EZ∣X,ΘtLL(Θ∣X,Z)Q(Θ∣Θt)=EZ∣X,ΘtLL(Θ∣X,Z)
M步
寻找参数最大化的期望似然,即
Θt+1=argminΘQ(Θ∣Θt)Θt+1=argminΘQ(Θ∣Θt)