EM算法知识点整理总结

本文介绍了EM算法如何处理数据中的缺失值,通过先猜测缺失值并利用MLE方法估计,然后不断迭代优化。同时,以GMM为例展示了其在估计高斯混合模型参数中的应用。最后,提到线性混合效应模型在多维情形下的扩展及其在Python中的实现。
摘要由CSDN通过智能技术生成

E-Expectation,M-Maximum,期望最大化算法,问题:①什么期望?②最大化什么目标?

参数估计最常用的方法之一是极大似然法(MLE),但是MLE只能处理完全数据,如果是不完全数据,例如数据缺失、有未被观测到的值(隐变量),MLE并不是最优方法了,EM算法可以很好地处理不完全数据。

当遇到有缺失值的情况,MLE只能利用没有缺失的值进行参数估计,此时简单的公式无法直接套用,需要人工计算,计算复杂度高。

那EM算法是如何处理缺失值的?EM算法是先对缺失值猜一个值(例如平均值),此时样本数据就可以按照常规MLE方法进行估计了,得到的缺失值估计值再与猜测值进行比较,如果差异大,重复上述步骤,直到达到停止条件。(参考B站统计学习的豆花例子)

EM算法中的目标函数为隐变量给定观测数据和当前参数估计的条件期望

\theta^{(t+1)} =\text{arg max} _{\theta}\int_ZP(Z|X,\theta^{(t)})\cdot \log P(X,Z|\theta) dZ \\=\text{arg max} _{\theta}E_{Z|X,\theta^{(t)}}[\log P(X,Z|\theta)]\\

EM算法的公式推导和收敛性证明见附件。

因此在设计算法的时候,需要计算出隐变量Z的后验概率、观测变量与隐变量的联合概率密度函数,然后计算出目标函数,对目标函数求各个参数的偏导,得到参数估计值,更新迭代至收敛。

高斯混合模型(Gaussian Mixture Model,GMM)是EM算法的一个典型例子。GMM的参数估计见附件。GMM也是在聚类中与K-Means聚类不同,高斯混合聚类采用概率模型来刻画每个样本的簇类,即为一种“软划分”方法。在k-means中,每个数据样本属于某一个簇,比如对于第1个数据,可以通过r_1=(0,1,0) 中的指示变量0,1来明确指出该数据属于哪个簇r。在GMM中,每个数据样本也是属于某一个簇,但它的指示变量不再是明确的0,1,而是用概率(隐变量)来表示,例如,数据x_1对应的簇z_1,也就是隐变量z_1z_1 ,它的期望值可以表示为E(z_1)=(0.7,0.2,0.1) 

还可以结合例子理解:一个班有男生和女生,男生和女生的身高分别服从正态分布N(\mu_1,\sigma_1^2),N(\mu_2,\sigma_2^2),现在需要估计参数\mu_1,\mu_2,\sigma_1^2,\sigma_2^2,在这个班级里抽样,得到身高的观测值,但是性别是隐变量,无法观测到。性别Z可以看成服从二项分布的变量,参数p未知,从而可以计算性别Z的后验概率、身高与性别的联合概率密度函数,用EM算法解决。

在Python中可以调用包实现

 from sklearn.mixture import GaussianMixture

补充多维情形下线性混合效应模型:

一般的线性混合效应模型表示为:

y=X\beta+Z\xi+e

其中,y为n\times 1的观测向量,X是n\times p维的已知设计阵,Z是n\times q维的已知设计阵,\alphap\times 1维的未知参数向量,是系数向量且非随机,认为是所有个体共有的,因此称为固定效应。\xiq\times 1维的随机向量,因此称为随机效应,e是n\times 1维的随机误差向量。通常有如下假设:

E(\xi)=0,Cov(\xi)=D,E(e)=0,Cov(e)=R

且随机误差向量e与随机向量\xi是相互独立的。其中D是非负定矩阵,R是正定矩阵。根据以上假设能够得到,y的协方差矩阵为

Cov(y)=ZDZ^{'}+R

假如矩阵D和R未知或依赖于多个未知方差参数,模型便很难处理,一般线性模型下的参数推断方法无法应用,为使其模型形式更容易进行处理,常假设随机向量\xi与随机误差e的方差具有一定的结构,如都依赖于一个有相同结构的未知参数向量,原模型可以写为

y = X\alpha +U_1\xi_1+U_2\xi_2+...+U_{k-1}\xi_{k-1}+e=X\alpha +\sum_{i=1}^kU_i\xi_i

其中,y为n\times 1的观测向量,X是n\times p维的已知设计阵,\alphap\times 1维的未知参数向量,\xi_im_i\times 1维随机效应向量,为了体现总体的自然差异性,\xi_i i.i.d\sim N(0,\sigma_i^2I)U_i是相应于第i个随机因素的n\times m_i维的设计阵,e是n\times 1维的随机误差向量,且e i.i.d \sim N(0,\sigma^2),并且Cov(\xi,e)=0,那么y\sim N(X\alpha,\Sigma(\sigma^2))

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值