赞
踩
EM算法的核心思想是:根据已有的数据,借助隐藏变量,通过期望值之间的迭代,估计似然函数。
2.1 二分量混合高斯的EM算法
假设有数据Y,现在用两个高斯分布来对密度建模,参数为
。则Y的密度为:
(1)
参数为:
(2)
基于N个训练数据的对数似然是:
(3)
由于需要求对数似然函数项的和,直接极大化似然函数很难。我们引入取值为0或1的潜变量,如果
,则
取自模型2,否则取自模型1。则对数似然函数可以写为:
(4)
那么和
的极大似然估计将是
的那些数据的样本的均值和方差,
和
的极大似然估计将是
的那些数据的样本的均值和方差。
由于诸的值是实际上是未知的,所以用迭代的方式处理,用下式的期望代替(4)式中的每个
,即:
(5)
(5)式也称为模型2关于观测i的响应度。
二分量高斯的EM算法 |
表征数据 3. 极大化步:计算加权均值和方差: 和混合概率 4. 重复步骤2,3直到收敛。 |
2.2 多分量混合高斯的EM算法
多分量高斯的EM算法 |
其中k = 1,2…N. 3. 极大化步:计算加权均值和协方差:
其中: 4. 计算log似然: 检查参数和log似然是否已经收敛,如果没有收敛,重复步骤2. |
3.通用EM算法
假设一个完整的样本集D,其中的样本是,都服从某个特定的分布,假设其中的一部分数据丢失了。完整的数据和丢失的数据分布表示为:
和
,并且
。定义函数:
(6)
(6)式的左边是一个关于的函数,而
假设已经取固定值;右边表示关于丢失的特征求对数似然函数的期望,其中假设
是描述整个分布的参数。则通用EM算法可写为:
期望最大化算法(Expectation-Maximization algorithm) |
|
"广义期望最大化"(Generalized Expectation-Maximization ,GEM)算法比EM算法松一些。它只要求在"M步"选取一个有所改善的,而不要求最优的那一个。所以GEM的收敛速度没有EM算法快。
4. EM算法总结
(1)EM会收敛到局部极值,但不保证收敛到全局最优
(2)对初值很敏感:通常需要一个好的、快速的初始化过程
如矩方法得到的结果
在GMM中,用K-means聚类
(3)适合的情况
缺失数据不太多时
数据维数不太高时(数据维数太高的话,E步的计算很费时)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。