Dlaczego algorytm EM działa (ang. Expectation–maximization)?
Algorytm EM ma wiele zastosowań, w sytuacji gdy bezpośrednia maksymalizacji funkcji log-wiarogodności jest trudna. W wielu sytuacjach, problem maksymalizacji można uprościć, jeżeli przestrzeń parametrów rozszerzy się o dodatkowe - nieobserwowane zmienne.
Typowe przykłady takich sytuacji to uzupełnianie braków w danych oraz badanie mieszanin rozkładów.
Poniższy opis rozpoczniemy od ogólnego sformułowania algorytmu EM, a następnie przedstawimy konkretny przykład. Ostatni punkt to przedstawienie zastosowania algorytmu EM do maksymalizacji rozkładu a-posteriori.
Ogólne sformułowanie problemu
Oznaczmy przez obserwowaną zmienną losową (potencjalnie wielowymiarową) o rozkładzie z rodziny indeksowanej parametrem . Bezpośrednia estymacja metodą największej wiarygodności jest trudna, więc rozszerzamy przestrzeń o zmienne ukryte/nieobserwowane .
Łączny wektor zmiennych losowych pochodzi z rodziny indeksowanej parametrem . Gęstość tego rozkładu oznaczmy przez .
Algorytm EM
Algorytm EM ma następującą postać:
Wybierz początkową wartość wektora parametrów ,
Krok E (Expectation). Wyznacz warunkową wartość oczekiwaną dla aktualnego , gdzie to numer iteracji. Będziemy ją traktować jako funkcję po .
Krok M (Maximization). Wyznacz kolejną wartość , taką która maksymalizuje po .
Powtarzaj kroki 2-3 do spełnienia określonego warunku stop.
Dlaczego to działa?
Pytanie, na które musimy odpowiedzieć, to dlaczego optymalizacja pomaga w maksymalizacji funkcji wiarygodności.
Zacznijmy od rozkładu warunkowego a więc
Interesuje nas funkcja log-wiarogodności. Korzystając z powyższego, można ją wyrazić jako Zauważmy, że funkcje wiarygodności , i dotyczą różnych zmiennych, stąd różne oznaczenia.
Nałóżmy teraz obustronnie warunkową wartość oczekiwaną . Parametr będziemy w przyszłości wykorzystywali jako ustalony, roboczy, suboptymalny wektor parametrów. Otrzymujemy
Aby uprościć zapis poniżej, przyjmijmy takie standardowe oznaczenia dla prawej strony tego równania.
Rozłożyliśmy funkcję log-wiarogodności, którą chcielibyśmy maksymalizować po na dwa człony. Algorytm EM będzie bezpośrednio maksymalizował .
Funkcja ma swoje maksimum gdy wartość oczekiwana jest warunkowana tym samym rozkładem co będąca pod nią funkcja wiarygodności. Jest tak dlatego, że funkcja wiarygodności jest wypukła i można wykorzystać nierówności Jensena. Pośrednie kroki uzasadnienia tej właściwości są opisane w ćwiczeniu 8.2 Elements of Statistical Learning.
A więc , co z kolei oznacza, że jeżeli jesteśmy w stanie znaleźć , które zwiększy to z pewnością zwiększymy też .
A może tak policzyć coś na palcach?
Ogólne sformułowanie algorytmu EM umożliwia stosowanie go do rozmaitych sytuacji. Ale aby wyrobić sobie intuicję przeliczmy jeden prosty przykład, jednowymiarowej mieszaniny dwóch rozkładów normlanych różniących się tylko średnią. Dla większej liczby składowych, wymiarów i parametrów obliczenia przeprowadza się według tego samego schematu, jest jedynie więcej symboli.
Model mieszaniny. Dwie składowe rozkład mieszający i mieszanina
Mieszanina to w rozkład zmiennej a w rozkład zmiennej . Gęstość tego rozkładu można opisać jako
Nasz wektor parametrów to a funkcja log-wiarogodności ma postać Optymalizacja takiej sumy logarytmów sum nie jest prosta.
Zgodnie z duchem EM ułatwimy sobie zadanie dodając do modelu zmienne ukryte . Funkcja wiarogodności w takim modelu ma postać
Tę funkcję będzie nam łatwiej maksymalizować. Przyjrzyjmy się krokom w algorytmie EM.
Krok E
Chcemy wyznaczyć warunkową wartość oczekiwaną funkcji po . Człony funkcji wiarogodności zawierające się nie zmienią. Musimy jedynie policzyć co stanie się z członem .
a więc
Wyliczone wartości oczekiwane wstawiamy w miejsce .
Krok M
Funkcja jest już funkcją parametrów . Z uwagi na jej postać, można każdy z parametrów maksymalizować niezależnie. Wyznaczamy pochodną i przyrównujemy ją do zera.
Otrzymamy
Kroki E i M należy powtarzać aż nie uzyska się przyzwoitej zbieżności.
Estymacja MAP
Przedstawiony powyżej algorytm EM maksymalizuje funkcje wiarogodności. Rosnąca popularność metod Bayesowskich spowodowała, że jego odmiana jest też wykorzystywana do znajdowania estymatorów maksimum a-posteriori (MAP).
Punktem wyjścia jest wzór na rozkład a-posteriori
Algorytm EM jest ogólnym algorytmem maksymalizacji. Możemy wykorzystać go również do szukania maksimum rozkładu aposteriori, dodając w kroku E człon
Inne materiały
Alternatywne wyprowadzenie EM przez Andrew Ng http://cs229.stanford.edu/notes/cs229-notes8.pdf.