将期望最大化应用于抛硬币示例


18

最近,我一直在自学“期望最大化”,并在过程中掌握了一些简单的示例:

从这里开始:三个硬币,和带有,和c 1 c 2 p 0 p 1c0c1c2p0p1p2分别是被抛掷时落在头上的概率。投掷c0。如果结果是Head,则将掷c1三遍,否则将掷c2三遍。c1和产生的观测数据c2如下:HHH,TTT,HHH,TTT,HHH。隐藏数据是的结果c0。估计p0,p1和p2。

从这里开始:有两个硬币cA和cB其中pA和pB分别是被抛掷落在Head上的概率。每回合随机选择一枚硬币,掷十次;记录结果。观察到的数据是这两个硬币提供的抛掷结果。但是,我们不知道为特定回合选择了哪个硬币。估计pA和pB。

虽然我可以得到计算结果,但是我无法将它们的求解方式与原始的EM理论联系起来。具体来说,在两个示例的M-Step中,我都看不到它们如何使任何东西最大化。似乎他们正在重新计算参数,并且以某种方式,新参数比旧参数要好。而且,这两个电子步骤看上去甚至都不相似,更不用说原始理论的电子步骤了。

那么这些示例如何工作?


在第一个示例中,我们获得了多少个相同实验的实例?在第二个示例中,“随机选择一个硬币”的法则是什么?我们观察几轮?
— 拉斐尔

我链接的PDF文件已经逐步解决了这两个示例。但是,我不太了解所使用的EM算法。
— IcySnow

@IcySnow,您了解随机变量的期望和条件期望的概念吗?
— Nicholas Mancuso

我了解随机变量和条件概率的基本期望。但是,我对条件期望,它的导数和足够的统计量并不熟悉。
— IcySnow

Answers:


12

(此答案使用您提供的第二个链接。)

回忆一下可能性的定义: 其中在我们的情况下θ = (θ 甲,θ 乙)是用于概率估计该硬币A和B分别地磁头,X = (X 1,... ,X 5)是我们的实验的结果,各

L[θ|X]=Pr[X|θ]=∑ZPr[X,Z|θ]
θ=(θA,θB)X=(X1,…,X5)由10次翻转组成,并且 Z = (Z 1,… ,Z 5) 是每个实验中使用的硬币。X一世ž=(ž1个,…,ž5)

我们要找到最大似然估计θ。的期望最大化(EM)算法是找到(至少局部)一种这样的方法θ。它通过找到条件期望来工作,然后将其用于最大化θ。这个想法是通过 在每次迭代中不断寻找一个更可能(即更可能)的θ,我们将不断增加Pr [ X ,Z | θ ]继而增加似然函数。在继续设计基于EM的算法之前,需要完成三件事。θ^θ^θθ镨[X,ž|θ]

  1. 建立模型
  2. 在模型下计算条件期望(电子步)
  3. 通过更新当前对估计来最大化我们的可能性(M步)θ

构造模型

在继续使用EM之前,我们需要弄清楚我们正在计算的是什么。在E步中,我们正在精确计算的期望值。θ ]。那么,这个值到底是什么?观察该 日志Pr [ X ,Z | θ ]日志⁡镨[X,ž|θ] 原因是我们要进行5个实验,而且我们不知道每个实验都使用了哪种硬币。不等式是由于对数是凹面的并且应用了Jensen的不等式。我们需要下限的原因是我们无法直接计算原始方程式的arg max。但是,我们可以计算出最终的下限。

日志⁡镨[X,ž|θ]=∑一世=1个5日志⁡∑C∈{一种,乙}镨[X一世,ž一世=C|θ]=∑一世=1个5日志⁡∑C∈{一种,乙}镨[ž一世=C|X一世,θ]⋅镨[X一世,ž一世=C|θ]镨[ž一世=C|X一世,θ]≥∑一世=1个5∑C∈{一种,乙}镨[ž一世=C|X一世,θ]⋅日志⁡镨[X一世,ž一世=C|θ]镨[ž一世=C|X一世,θ]。
日志

现在什么是?给定实验X i和θ,这是我们看到硬币C的概率。使用条件概率,我们有Pr [ Z i = C | X i,θ ] = Pr [ X i,Z i = C | θ ]镨[ž一世=C|X一世,θ]CX一世θ

镨[ž一世=C|X一世,θ]=镨[X一世,ž一世=C|θ]镨[X一世|θ]。

尽管我们已经取得了一些进展,但是我们还没有完成该模型。给定硬币翻转序列的概率是多少?令h i = #in  X i Pr [ X i,Z iX一世H一世=#进去 X一世 现在,Pr[Xi| θ]显然只是Zi=A或Zi=B的两种可能性下的概率。由于Pr[Zi=A]=Pr[

镨[X一世,ž一世=C|θ]=1个2⋅θCH一世(1个-θC)10-H一世,  对于  C∈{一种,乙}。
镨[X一世|θ]ž一世=一种ž一世=乙,我们有, 镨[ž一世=一种]=镨[ž一世=乙]=1个/2
镨[X一世|θ]=1个/2⋅(镨[X一世|ž一世=一种,θ]+镨[X一世|ž一世=乙,θ])。

电子步

好的,这并不是很有趣,但是我们现在可以开始进行一些EM工作。EM算法首先对进行一些随机猜测。在这个例子中,我们有θ 0 = (0.6 ,0.5 )。我们计算 Pr [ Z 1 = A | X 1,θ ] = 1 / 2 ⋅ (0.6 5 ⋅ 0.4 5)θθ0=(0.6,0.5) 该值与本文中的内容一致。现在我们可以从硬币A, E计算X1=(H,T,T,T,T,H,H,T,H,T,H)中的期望正面数

镨[ž1个=一种|X1个,θ]=1个/2⋅(0.65⋅0.45)1个/2⋅((0.65⋅0.45)+(0.55⋅0.55))≈0.45。
X1个=(H,Ť,Ť,Ť,H,H,Ť,H,Ť,H)一种 ħ 1 ⋅ 镨[ Ž 1 = 乙 对得到的硬币 B做同样的事情, E [ 硬币B的#个头  | X 1,θ ] = | X 1,θ ] = 5 ⋅ 0.55 ≈ 2.8。
Ë[#硬币头 一种|X1个,θ]=H1个⋅镨[ž1个=一种|X1个,θ]=5⋅0.45≈2.2。
乙
Ë[#硬币头 乙|X1个,θ]=H1个⋅镨[ž1个=乙|X1个,θ]=5⋅0.55≈2.8。
通过用代替10 - h 1,我们可以计算出相同的尾数。这个持续的所有其他值X 我和ħ 我 1 ≤ 我≤ 5。由于期望的线性,我们可以找出 E [ #个硬币A的头部  | X ,θ ] = 5 ∑ i = 1H1个10-H1个X一世H一世 1个≤一世≤5
Ë[#硬币头 一种|X,θ]=∑一世=1个5Ë[#硬币头 一种|X一世,θ]

M步

θ

θ一种1个=Ë[#头顶 X 通过硬币 一种|X,θ]Ë[#头和尾巴 X 通过硬币 一种|X,θ]=21.321.3+9.6≈0.71。
乙θ1个θθ^=θ10=(0.8,0.52)镨[X,ž|θ]θ

θ^


如果不清楚,我也可以尝试将其扩展。
— Nicholas Mancuso

现在变得更加清晰。我真正不明白的是,为什么硬币A的期望正面的数量计算如下:E [#heads by coin A | X1,θ] =h1⋅Pr[Z1 = A | X1,θ] =5⋅0.45 ≈2.2?第一个PDF中提到的问题更加复杂。如果您不介意,您是否也可以为此做一些说明性的计算?非常感谢您的回答。
— IcySnow

Ë[# 硬币头 一种|X1个,θ]=∑# 进去 X1个镨[ž1个=一种|X1个,θ]=5⋅镨[ž1个=一种|X1个,θ]。原因是您可以考虑使用A来获得另一个指标随机变量。计算对指标变量的期望很简单,即该事件的概率。
— Nicholas Mancuso

很抱歉回复缓慢。多亏您的帮助,经过多次回答,我现在才能真正理解这两个硬币示例背后的逻辑。关于这个问题,我还有最后一件事要问:该示例从这张幻灯片的第8页开始 cs.northwestern.edu/~ddowney/courses/395_Winter2010/em.ppt表明,在M步中,我们必须首先计算对数似然函数的导数,并使用它来最大化期望。为什么在抛硬币示例的M-Steps中没有这样的内容?因为这些M步看起来并没有使任何事情最大化
— IcySnow

我对“构建模型”之后显示的第一个方程感到困惑。您能解释它的来历吗?在我看来镨[ž一世=一种|X一世,θ]+镨[ž一世=乙|X一世,θ]=1个,因此内部总和为1 一世,因此整个右侧变为零。我确定我遗漏了一些东西-您能阐明有关该方程式的原因吗?
— DW
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.