Gaussian Mixture Models (GMM)
Czym jest GMM?
Gaussian Mixture Models (GMM) to probabilistyczny model grupowania, który zakłada, że dane są generowane z mieszanki wielu rozkładów Gaussa (normalnych). Każdy klaster w GMM jest reprezentowany przez jeden z tych rozkładów, opisany swoimi parametrami: średnią, kowariancją i wagą. Dzięki temu GMM jest w stanie modelować klastry o różnych kształtach i rozkładach w danych.
Kluczowe elementy GMM:
-
Średnia (\(\mu\)):
- Wskazuje środek każdego klastra.
-
Kowariancja (\(\Sigma\)):
- Określa rozprzestrzenienie punktów wokół średniej w danym klastrze (kształt i orientacja klastra).
-
Wagi (\(\pi\)):
- Prawdopodobieństwa przypisania punktu do danego klastra. Suma wag dla wszystkich klastrów wynosi 1.
-
Rozkład Gaussa (normalny):
- Każdy klaster jest modelowany za pomocą funkcji gęstości prawdopodobieństwa rozkładu normalnego: \[ \mathcal{N}(x \mid \mu, \Sigma) = \frac{1}{(2\pi)^{d/2} |\Sigma|^{1/2}} \exp\left(-\frac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu)\right) \] Gdzie \(d\) to liczba wymiarów danych.
Proces działania GMM:
-
Inicjalizacja parametrów:
- Losowe przypisanie wartości średnich (\(\mu\)), kowariancji (\(\Sigma\)) oraz wag (\(\pi\)) dla każdego klastra.
-
E-step (Expectation):
- Obliczanie prawdopodobieństwa przynależności każdego punktu do poszczególnych klastrów na podstawie aktualnych parametrów.
-
M-step (Maximization):
- Aktualizacja parametrów (\(\mu\), \(\Sigma\), \(\pi\)) w celu maksymalizacji prawdopodobieństwa obserwacji danych.
-
Sprawdzenie zbieżności:
- Proces powtarza się aż do osiągnięcia zbieżności (np. minimalnej zmiany w wartościach parametrów).
Zalety GMM:
- Elastyczność:
- GMM może modelować klastry o różnych kształtach, w tym eliptycznych, w przeciwieństwie do K-means, który zakłada klastry sferyczne.
- Probabilistyczne przypisanie:
- Każdy punkt może być przypisany do więcej niż jednego klastra z określonym prawdopodobieństwem.
- Wszechstronność:
- Sprawdza się zarówno w danych o różnorodnych kształtach, jak i w danych z dużą liczbą wymiarów.
Wady GMM:
- Wymaga określenia liczby klastrów:
- Liczba klastrów musi być zdefiniowana z góry, co może być trudne w przypadku nieznanych danych.
- Czułość na inicjalizację:
- Wyniki mogą zależeć od początkowych wartości parametrów.
- Koszt obliczeniowy:
- Algorytm może być czasochłonny w przypadku dużych zbiorów danych i wielu wymiarów.
Zastosowania:
- Segmentacja obrazu:
- Grupowanie pikseli na podstawie ich intensywności kolorów lub innych cech.
- Rozpoznawanie mowy:
- Modelowanie akustycznych cech dźwięku.
- Bioinformatyka:
- Klasyfikacja danych genetycznych, np. identyfikacja różnych typów komórek.
- Finanse:
- Klasyfikacja klientów na podstawie ich zachowań finansowych.
Przykład działania:
Rozważmy zbiór punktów w 2D, które są generowane przez dwa różne rozkłady Gaussa:
- Klaster 1: Średnia \((\mu_1 = 2, 2)\), kowariancja \(\Sigma_1 = \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix}\).
- Klaster 2: Średnia \((\mu_2 = 5, 5)\), kowariancja \(\Sigma_2 = \begin{bmatrix} 2 & 1 \\ 1 & 2 \end{bmatrix}\).
Kroki:
- Inicjalizacja parametrów: \(\mu_1, \mu_2\), \(\Sigma_1, \Sigma_2\), \(\pi_1, \pi_2\).
- W E-step: Obliczanie prawdopodobieństwa przynależności każdego punktu do klastra 1 lub 2.
- W M-step: Aktualizacja \(\mu, \Sigma, \pi\) w oparciu o obliczone prawdopodobieństwa.
- Po kilku iteracjach: Ostateczne przypisanie punktów do klastrów z najwyższym prawdopodobieństwem.
Wizualizacja GMM:
W przypadku danych 2D wynikiem GMM są elipsy reprezentujące granice klastrów (wyznaczone na podstawie \(\Sigma\)) oraz środki klastrów (\(\mu\)).
Gaussian Mixture Models to zaawansowany model grupowania, który sprawdza się w sytuacjach, gdy dane mają skomplikowaną strukturę i nie są łatwo separowalne innymi metodami.