05 · Bez nadzoru · 4 min czytania · aktualizacja
Czym jest model mieszaniny gaussowskiej i jak działa algorytm EM?
W skrócie
Mieszanina gaussowska zakłada, że dane pochodzą z kilku rozkładów normalnych. Algorytm EM na zmianę zgaduje przynależność punktów i poprawia rozkłady.
Co to jest
Model mieszaniny gaussowskiej (Gaussian Mixture Model, GMM) zakłada, że każdy punkt danych powstał tak: najpierw losowo wybrano jedną z K grup (z prawdopodobieństwami π₁…π_K), a potem wylosowano punkt z rozkładu normalnego tej grupy, o własnej średniej i macierzy kowariancji. Dopasowanie modelu to odgadnięcie tych parametrów z samych punktów, bez wiedzy, który punkt pochodzi z której grupy.
W przeciwieństwie do k-średnich GMM daje przynależność miękką: zamiast „pingwin należy do grupy 2” mówi „z prawdopodobieństwem 0,97 grupa 2, 0,03 grupa 1”. Do tego każda grupa może być elipsą dowolnie wydłużoną i obróconą, a nie tylko kulą. Model służy do klasteryzacji, estymacji gęstości i wykrywania anomalii (punkty o niskiej gęstości).
Mechanizm — dlaczego tak działa
Gdybyśmy znali przynależność punktów, zadanie byłoby trywialne: średnia i kowariancja każdej grupy z jej punktów. Gdybyśmy znali parametry grup, też łatwo: dla każdego punktu liczymy z twierdzenia Bayesa, jak prawdopodobne jest każde pochodzenie. Problem w tym, że nie znamy ani jednego, ani drugiego. Algorytm EM (Expectation–Maximization) rozwiązuje to błędne koło naprzemiennie.
Krok E: przy bieżących parametrach oblicz dla każdego punktu i każdej grupy „odpowiedzialność” r = π_k · N(x | μ_k, Σ_k) / suma po wszystkich grupach. To miękkie przypisanie, sumujące się do 1.
Krok M: potraktuj odpowiedzialności jak wagi i przelicz parametry: nowa średnia grupy to średnia ważona punktów, nowa kowariancja to ważona kowariancja, nowe π_k to średnia odpowiedzialność.
Dlaczego to działa? Można pokazać, że każdy pełny cykl E+M nie zmniejsza logarytmu wiarygodności danych. Krok E buduje dolne ograniczenie wiarygodności, które w bieżącym punkcie jest z nią równe, a krok M to ograniczenie maksymalizuje. Wiarygodność rośnie więc monotonicznie aż do zbieżności. Ale tylko do maksimum lokalnego — stąd wiele startów, zwykle z wyniku k-średnich.
K-średnich to szczególny przypadek GMM: wszystkie grupy z jednakową, kulistą kowariancją, która dąży do zera, przez co miękkie przypisanie staje się twarde. Dlatego GMM radzi sobie z grupami wydłużonymi i różnej wielkości, a k-średnich nie. Ceną jest liczba parametrów: pełna kowariancja w d wymiarach to d(d+1)/2 liczb na grupę. Przy wielu cechach i małej próbie łatwo o przeuczenie albo osobliwą macierz — wtedy upraszcza się kowariancję (diagonalna, wspólna, kulista) lub dodaje regularyzację. Liczbę grup wybiera się kryterium BIC, które karze za liczbę parametrów.
Na przykładzie
Pingwiny z Palmer Archipelago: 342 osobniki, cztery standaryzowane pomiary, trzy gatunki (151 Adeli, 123 Gentoo, 68 maskowych). BIC dla K = 1…6 (pełna kowariancja) wynosi kolejno 3118,0; 2586,8; 2553,6; 2600,7; 2660,8; 2717,7 — minimum przy K = 3, czyli tyle, ile jest gatunków. Dla porównania współczynnik sylwetki k-średnich wskazuje 2 grupy.
Zgodność z gatunkami: GMM z pełną kowariancją osiąga ARI 0,96, k-średnich 0,79. GMM myli się tylko na 5 pingwinach (2 Adeli, 3 maskowe), a wszystkie 123 Gentoo są w swojej grupie. Najlepszy start zbiegł w 5 iteracjach EM. Miękkie przypisanie jest pewne dla większości ptaków: tylko 7 z 342 (2%) ma najwyższe prawdopodobieństwo przynależności poniżej 0,9 — to właśnie osobniki na styku gatunków. Kształt kowariancji ma znaczenie: wersja kulista daje ARI 0,89, a diagonalna tylko 0,51, bo cechy pingwinów są silnie skorelowane wewnątrz gatunku (większy ptak ma dłuższy dziób i płetwę), a macierz diagonalna tego nie opisze. Wspólna pełna kowariancja (tied) daje ARI 0,96 i najniższe BIC (2515,8).
Dane: Palmer Penguins (pingwiny z Antarktydy)
W praktyce
- W scikit-learn:
GaussianMixture(n_components=3, covariance_type="full", n_init=5, random_state=0);predict_probazwraca miękkie przypisania,score_sampleslogarytm gęstości. - Liczbę grup wybieraj przez
bic()dla kilku K; porównuj też różnecovariance_type(full,tied,diag,spherical). - Standaryzuj cechy; przy problemach numerycznych zwiększ
reg_covar. - Do wykrywania anomalii: niski
score_samplesoznacza punkt w obszarze małej gęstości. - Gdy nie chcesz wybierać K, rozważ
BayesianGaussianMixture, który sam „wyłącza” zbędne składowe. - Typowy błąd: pełna kowariancja przy wielu cechach i małej próbie — model dopasuje elipsy do szumu.
Najczęstsze pytania
- Czym GMM różni się od k-średnich?
- K-średnich daje twarde przypisanie i zakłada kuliste grupy podobnej wielkości. GMM daje prawdopodobieństwa przynależności i pozwala na eliptyczne grupy różnej wielkości i orientacji. K-średnich jest granicznym przypadkiem GMM z identyczną, kulistą kowariancją.
- Czy EM zawsze znajduje najlepsze rozwiązanie?
- Nie. EM gwarantuje, że wiarygodność nie maleje, ale zatrzymuje się w maksimum lokalnym. Dlatego uruchamia się go wielokrotnie z różnych startów i wybiera wynik o najwyższej wiarygodności. Wiarygodność może też uciec w nieskończoność, gdy jedna składowa „zapadnie się” na pojedynczy punkt — przed tym chroni regularyzacja kowariancji.
- Do czego jeszcze służy algorytm EM?
- To ogólna metoda dopasowania modeli ze zmiennymi ukrytymi lub brakującymi danymi: ukryte modele Markowa (algorytm Bauma–Welcha), modele tematyczne, imputacja braków. Mieszanina gaussowska jest po prostu najczęściej pokazywanym przykładem.
Źródła
- Dempster A. P., Laird N. M., Rubin D. B., „Maximum Likelihood from Incomplete Data via the EM Algorithm”, Journal of the Royal Statistical Society, Series B 39(1), 1977.
- Bishop C. M., „Pattern Recognition and Machine Learning”, Springer 2006, rozdz. 9 (Mixture Models and EM).
- Hastie T., Tibshirani R., Friedman J., „The Elements of Statistical Learning”, 2nd ed., Springer 2009, rozdz. 8.5 (The EM Algorithm).
- Schwarz G., „Estimating the Dimension of a Model”, The Annals of Statistics 6(2), 1978.
- Dokumentacja scikit-learn, „Gaussian mixture models”: https://scikit-learn.org/stable/modules/mixture.html