Madeni para atma örneklerine Beklenti Maksimizasyonu Uygulama


18

Son zamanlarda Beklenti Maksimizasyonu üzerinde kendi kendime çalışıyorum ve bu süreçte kendime bazı basit örnekler aldım:

Gönderen burada : üç sikke vardır c0 , c1 ve c2 ile p0 , p1 ve p2 attı Head iniş için ilgili olasılık. Toss c0 . Sonuç Head ise, c1 üç kez fırlatın, aksi takdirde c2 üç kez fırlatın . Tarafından üretilen gözlemlenmiş c1 ve c2 HHH, TTT, HHH, TTT, HHH: bu gibidir. Gizli veriler sonucudur c0. Tahmin p0 ,p1 vep2 .

Ve aralarından burada : İki sikke vardır cA ve cB ile pA ve pB atarken Head iniş için ilgili olasılık olmaktan. Her turda rastgele bir jeton seçin ve on kez atın; sonuçları kaydedin. Gözlenen veriler, bu iki jetonun sağladığı atım sonuçlarıdır. Ancak, belirli bir tur için hangi madalyonun seçildiğini bilmiyoruz. pA ve tahmin edin pB.

Hesaplamaları alabilmeme rağmen, bunların çözülme biçimlerini orijinal EM teorisiyle ilişkilendiremiyorum. Özellikle, her iki örneğin M-Adımı sırasında, bir şeyi nasıl en üst düzeye çıkardıklarını görmüyorum. Görünüşe göre parametreleri yeniden hesaplıyorlar ve bir şekilde yeni parametreler eskilerinden daha iyi. Dahası, iki E-Adım, orijinal teorinin E-Adımı'ndan bahsetmemek bile, birbirine benzemiyor.

Peki bu örnekler tam olarak nasıl çalışıyor?


İlk örnekte, aynı deneyin kaç örneğini elde ediyoruz? İkinci örnekte, "rastgele bir jeton seçin" yasası nedir? Kaç tur gözlemliyoruz?
Raphael

Bağladığım PDF dosyaları bu iki örneği adım adım çözüyor. Ancak, kullanılan EM algoritmasını gerçekten anlamıyorum.
IcySnow

@IcySnow, rastgele bir değişkenin beklenti ve koşullu beklenti kavramını anlıyor musunuz?
Nicholas Mancuso

Rasgele değişken ve koşullu olasılığın temel beklentisini anlıyorum. Ancak, koşullu beklentiye, türevine ve yeterli istatistiğe aşina değilim.
IcySnow

Yanıtlar:


12

(Bu cevap verdiğiniz ikinci bağlantıyı kullanır.)

Olabilirlik tanımını hatırlayın: bizim durumumuzda θ = ( θ A , θ B ) A ve B sikkelerinin sırasıyla kara kafaları olma olasılığı için tahmin edicilerdir, X = ( X 1 , , X 5 ) deneylerimizin sonuçlarıdır, her biri

L[θ|X]=Pr[X|θ]=ZPr[X,Z|θ]
θ=(θA,θB)X=(X1,,X5) ve 10 çevirir oluşan Z = ( Z 1 , ... , Z, 5 ) her bir deney için kullanılan para olmak.XiZ=(Z1,,Z5)

Biz maksimum olabilirlik tahmincisi bulmak istediğiniz İçeride ISTV melerin RWMAIWi'nin . Beklenti-En (EM) algoritması (en azından yerel) bulmak için böyle bir yöntemdir İçeride ISTV melerin RWMAIWi'nin . Koşullu beklentiyi bularak çalışır ve daha sonra θ değerini maksimize etmek için kullanılır . Fikir sürekli daha olası bir (yani daha olası) bularak olmasıdır İçeride ISTV melerin RWMAIWi'nin her tekrarında sürekli artacak Pr [ X , Z | θ ] sırayla, olasılık fonksiyonunu arttırır. EM tabanlı bir algoritma tasarlamadan önce yapılması gereken üç şey vardır.θ^θ^θθPr[X,Z|θ]

  1. Modeli oluşturun
  2. Model altında Koşullu Beklentiyi hesapla (E-Adım)
  3. Mevcut (M-Adımı) tahminimizi güncelleyerek olasılığımızı en üst düzeye çıkarınθ

Modeli Oluşturun

EM ile daha ileri gitmeden önce, tam olarak ne olduğunu hesaplamamız gerekir. E-adımında Pr [ X , Z | için tam olarak beklenen değeri hesaplıyoruz. θ ] . Peki bu değer nedir, gerçekten mi? Bu günlüğü izleyin Pr [ X , Z | θ ]logPr[X,Z|θ]

logPr[X,Z|θ]=i=15logC{A,B}Pr[Xi,Zi=C|θ]=i=15logC{A,B}Pr[Zi=C|Xi,θ]Pr[Xi,Zi=C|θ]Pr[Zi=C|Xi,θ]i=15C{A,B}Pr[Zi=C|Xi,θ]logPr[Xi,Zi=C|θ]Pr[Zi=C|Xi,θ].
The reason is that we have 5 experiments to account for, and we don't know what coin was used in each. The inequality is due to log being concave and applying Jensen's inequality. The reason we need that lower bound is that we cannot directly compute the arg max to the original equation. However we can compute it for the final lower bound.

Now what is Pr[Zi=C|Xi,θ]? It is the probability that we see coin C given experiment Xi and θ. Using conditional probabilities we have,

Pr[Zi=C|Xi,θ]=Pr[Xi,Zi=C|θ]Pr[Xi|θ].

Xihi=#heads in Xi

Pr[Xi,Zi=C|θ]=12θChi(1θC)10hi,  for  C{A,B}.
Now Pr[Xi|θ] is clearly just the probability under both possibilities of Zi=A or Zi=B. Since Pr[Zi=A]=Pr[Zi=B]=1/2 we have,
Pr[Xi|θ]=1/2(Pr[Xi|Zi=A,θ]+Pr[Xi|Zi=B,θ]).

E-Step

Okay... that wasn't so fun but we can start doing some EM work now. The EM algorithm begins by making some random guess for θ. In this example we have θ0=(0.6,0.5). We compute

Pr[Z1=A|X1,θ]=1/2(0.650.45)1/2((0.650.45)+(0.550.55))0.45.
This value lines up with what is in the paper. Now we can compute the expected number of heads in X1=(H,T,T,T,H,H,T,H,T,H) from coin A,
E[#heads by coin A|X1,θ]=h1Pr[Z1=A|X1,θ]=50.452.2.
Doing the same thing for coin B we get,
E[#heads by coin B|X1,θ]=h1Pr[Z1=B|X1,θ]=50.552.8.
We can compute the same for the number of tails by substituting h1 for 10h1. This continues for all other values of Xi and hi 1i5. Thanks to linearity of expectation we can figure out
E[#heads by coin A|X,θ]=i=15E[#heads by coin A|Xi,θ]

M-Step

With our expected values in hand, now comes the M step where we want to maximize θ given our expected values. This is done by simple normalization!

θA1=E[#heads over X by coin A|X,θ]E[#heads and tails over X by coin A|X,θ]=21.321.3+9.60.71.
Likewise for B. This process begins again with the E-Step and θ1 and continues until the values for θ converge (or to some alloweable threshold). In this example we have 10 iterations and θ^=θ10=(0.8,0.52). In each iteration the value of Pr[X,Z|θ] increases, due to the better estimate of θ.

Now in this case the model was fairly simplistic. Things can get much more complicated pretty quickly, however the EM algorithm will always converge, and will always produce a maxmimum likelihood estimator θ^. It may be a local estimator, but to get around this we can just restart the EM process with a different initialization. We can do this a constant amount of times and retain the best results (i.e., those with the highest final likelihood).


If any parts aren't clear I can try to expand them also.
Nicholas Mancuso

It gets much clearer now. What I don't really get is why the expected number of heads for coin A was calculated as: E[#heads by coin A|X1,θ]=h1⋅Pr[Z1=A|X1,θ]=5⋅0.45≈2.2? The problem mentioned in the first PDF is more complicated. If you don't mind, can you do some illustrative calculations for it as well? Many thanks for your answer.
IcySnow

@IcySnow, as far as the expectation calc goes: E[# heads by coin A|X1,θ]=# heads in X1Pr[Z1=A|X1,θ]=5Pr[Z1=A|X1,θ]. The reason is you can think of there being another indicator random variable if A was used. Computing expectation over indicator variables is simple the probability of that event.
Nicholas Mancuso

Sorry for the slow reply. Thanks to you, I can now really understand the logic behind the two coin examples, after going through your answer many times. There's one last thing I want to ask regarding this question: The example starting from page 8 in this slide cs.northwestern.edu/~ddowney/courses/395_Winter2010/em.ppt shows that in the M-Step, we have to first compute the derivative of the log-likelihood function and use it to maximize the expectation. Why isn't something like that in the coin toss examples' M-Steps? Because these M-Steps don't look like they're maximizing anything
IcySnow

I'm confused by the first displayed equation after "Constructing the Model". Can you explain where that came from? It looks to me like Pr[Zi=A|Xi,θ]+Pr[Zi=B|Xi,θ]=1, so the inner sum is 1 for every i, so the entire right-hand side becomes zero. I'm sure I'm missing something -- can you spell out the reasoning about how you got to that equation?
D.W.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.