统计学习方法-第九章

本文介绍了EM算法的原理,通过三硬币问题阐述了算法在处理具有隐变量的概率模型中的应用。算法主要包括E步和M步,用于逐步优化参数估计。文中还探讨了算法的收敛性和在某些问题中的最优解性质。同时,讨论了EM算法在无法直接计算隐变量时的处理方法以及可能存在的问题。
摘要由CSDN通过智能技术生成

EM算法的原理

我反思了一下最近的文章,发现,我好像一直逻辑很混乱,所以我决定用,因果关联的方法写一写这样的问题。

解决的问题:在具有隐变量的情况下,计算概率函数中的未知参数。

隐变量通常参与过程,而不是独立作为因出现, P ( y ; Θ ) P(y;Θ) P(y;Θ)作为优化函数,并不存在Z这样的隐变量。但是引入Z可以极大的加快优化,作用相当于作了一条辅助线。

基本思路:
(1)初始化隐变量,在隐变量知道的情况下,函数变得很好解决了,计算出函数的未知参数 Θ 1 Θ_1 Θ1

注意:有的问题可能没有隐变量也能求解,但是将某些问题抽象成隐变量,就像添加了一些约束,在知道隐变量的情况下,能几乎直接的得出结论,EM算法的本质是抽象问题过程中的某些结果,加快优化。

如常见的3硬币问题,将硬币A的结果作为隐变量,或者在200人中选男孩女孩的混合高斯分布,将样本中的结果抽象为隐变量。在某些问题中,EM求得的解就是最优解,可以极大的加快速度。

(2)这个时候未知参数变得已知了,那么列出模型的方程概率,求出关于 Θ 1 Θ_1 Θ1的期望。
(3)在已有的观测数据情况下,对未知的隐变量进行最大释然估计,更新隐变量。
(4)当隐变量更新得差不多了, Θ n Θ_n Θn不再变化了,就可以得出结果了。

这当中有很多的问题,
(1)初始化的条件,求出未知参数,怎么求。
(2)基本没问题
(3)最大似然估计无法计算出隐变量怎么办
(4)函数如果不收敛怎么办,求到的解是不是最优解。

输入:观测数据Y,隐变量Z,联合分布 P ( Y , Z ; Θ ) P(Y,Z;Θ) P(Y,Z;Θ),条件分布 P ( Z ∣ Y ; Θ ) P(Z|Y;Θ) P(ZY;Θ)
输出: Θ Θ Θ
(1)初始化隐变量Z,开始迭代。
(2)E:选择 Θ 0 Θ^0 Θ0
Q ( Θ , Θ i ) = E z [ l o g P ( Y , Z ; Θ ) ∣ Y ; Θ i ] = ∑ Z l o g P ( Y , Z ; Θ ) ⋅ P ( Z ∣ Y ; Θ i ) Q(Θ,Θ^i) = E_z[logP(Y,Z;Θ)|Y;Θ^i] \\ =\sum_ZlogP(Y,Z;Θ)·P(Z|Y;Θ^i) Q(Θ,Θi)=Ez[logP(Y,Z;Θ)Y;Θi]=ZlogP(Y,Z;Θ)P(ZY;Θi)
其中 P ( Z ∣ Y ; Θ i ) P(Z|Y;Θ^i) P(ZY;Θi)是在 Y , Θ i Y,Θ^i YΘi条件下的观测量, P ( Z ∣ Y ; Θ i ) P(Z|Y;Θ^i) P(ZY;Θi)已知。
(3)M步:
Q ( Θ , Θ i ) = E z [ l o g P ( Y , Z ; Θ ) ∣ Y , Θ i ] Q(Θ,Θ^i) = E_z[logP(Y,Z;Θ)|Y,Θ^i] Q(Θ,Θi)=Ez[logP(Y,Z;Θ)Y,Θi]
这是一个求 Θ Θ Θ极大化的函数即,求导得到最大值。
(4)当隐变量更新得差不多了, Θ n Θ_n Θn不再变化了,就可以得出结果了。

三硬币问题

参考统计学习方法,Z为隐变量,表示掷硬币A出现的结果,该变量只有两个取值0,1 。
三硬币模型可以写作:
P ( y ; Θ ) = ∑ Z P ( y , z ; Θ ) = ∑ Z P ( z ; Θ ) P ( y ∣ z ; Θ ) = π p y ( 1 − p ) 1 − y + ( 1 − π ) q y ( 1 − q ) 1 − y P(y;Θ) = \sum_Z P(y,z;Θ) \\ =\sum_ZP(z;Θ)P(y|z;Θ) \\ =πp^y(1-p)^{1-y} +(1-π)q^y(1-q)^{1-y} P(y;Θ)=ZP(y,z;Θ)=ZP(z;Θ)P(yz;Θ)=πpy(1p)1y+(1π)qy(1q)1y
在这个公式中,Z没有体现。
E Z ∣ Y , θ ( i ) [ l o g ( P ( Y , Z ; θ ) ) ] = ∑ j = 1 n ∑ z j [ p ( z j ∣ y j ; θ ( i ) ) ⋅ l o g ( p ( y j , z j ; θ ) ) ] = ∑ j = 1 n ∑ z j [ p ( z j ∣ y j ; θ ( i ) ) ⋅ l o g ( p ( y j , z j ; θ ) ) ] = ∑ j = 1 n [ p ( z j = 1 ∣ y j ; θ ( i ) ) ⋅ l o g ( p ( y j , z j = 1 ; θ ) ) ] + [ p ( z j = 0 ∣ y j ; θ ( i ) ) ⋅ l o g ( p ( y j , z j =

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值