EM算法
2017-10-12 本文已影响76人
初七123
前言
概率模型有时既含有观测变量,又含有隐变量或者潜在变量。如果概率模型的变量都是观测变量,那么给定数据,就可以用极大似然估计或者贝叶斯估计估计模型的参数。而EM算法是用来解决含有隐变量的情况。
隐含变量举例
对于一个高斯混合模型
高斯混合分布
给定观测数据 {y1, y2, y3,..., yk},要求估计模型的参数(α1, α2, α3,...,αk; θ1, θ2, θ3,...,θk)
可以想象观测数据是这样产生的,先依概率αk选择第k个高斯分布模型,然后依据高斯分布生成数据yi。这是观测数据是已知的;但是yi来自哪个高斯分布是未知的,所以我们可以设隐含变量
隐含变量
这里γ jk是0-1随机变量
这一对数似然函数极大化的苦难主要在于包含不可观测数据的项,所以我们需要用到EM算法来近似极大似然估计
EM算法
高斯混合模型的EM算法
用上面给出的EM算法我们就能得到高斯混合模型的极大似然估计
E步骤 求Q函数即期望
M步骤 Q函数极大化
得到如下结果
EM算法的原理
前面我们已经用EM算法导出了高斯混合模型的极大似然估计,但是此时我们还是不知道为什么EM算法能有效,所以下面就推导一下
我们面对含有一个隐变量的模型,目标是极大化观测数据Y关于参数的极大似然估计,即极大化
为此考虑迭代前后L(θ)的差
令
则
并且
即 B(θ,θi) 是L(θ)的下界,所以我们只要使 B(θ,θi) 越来越大即可。即选择θ(i+1)
极大化B(θ,θi)
由上面给出的条件有
所以证明了EM算法中的M步是有效的
收敛性
虽然已经知道了EM算法会使似然函数向好的方向发展,但是却还是不知道算法能否到达一个最终的结果
下面给出结论
EM算法的推广
EM算法可以解释为“F函数的极大极大算法”
从而导出广义的EM算法(GEM)
参考
《统计学习方法》