Model mieszaniny procesowej Dirichleta PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Model mieszanki procesowej Dirichleta

Ten wpis na blogu jest czwartą częścią serii poświęconej Klastrowanie za pomocą modeli mieszanin procesowych Dirichleta. W poprzednich artykułach omawialiśmy modele skończonych mieszanin Dirichleta i przyjęliśmy limit ich modelu dla nieskończonych k klastrów, co doprowadziło nas do wprowadzenia procesów Dirichleta. Jak widzieliśmy, naszym celem jest zbudowanie modelu mieszanego, który nie wymaga od nas określenia liczby k klastrów/komponentów od początku. Później prezentacja różnych reprezentacji Procesów Dirichleta, nadszedł czas, aby faktycznie użyć DP do skonstruowania nieskończonego modelu mieszanki, który umożliwi nam tworzenie klastrów. Celem tego artykułu jest zdefiniowanie modeli mieszania procesów Dirichleta i omówienie wykorzystania chińskiego procesu restauracyjnego i próbkowania Gibbsa. Jeśli nie czytałeś poprzednich postów, zdecydowanie zalecamy to zrobić, ponieważ temat jest trochę teoretyczny i wymaga dobrego zrozumienia budowy modelu.

Aktualizacja: Platforma uczenia maszynowego Datumbox jest teraz open-source i bezpłatna pobieranie. Zapoznaj się z pakietem com.datumbox.framework.machinelearning.clustering, aby zobaczyć implementację modeli mieszania procesów Dirichleta w Javie.

1. Definicja modelu mieszaniny procesowej Dirichleta

Korzystanie z Procesów Dirichleta pozwala nam mieć model mieszany z nieskończonymi składnikami, które można uważać za przyjmujące granicę modelu skończonego dla k do nieskończoności. Załóżmy, że mamy następujący model:

obraz
obraz
obraz

Równanie 1: Model mieszaniny procesowej Dirichleta

Gdzie G jest zdefiniowane jako obraz i obraz używany jako skrócona notacja dla obraz która jest funkcją delta przyjmującą 1 jeśli obraz i 0 gdzie indziej. θi są parametrami klastra, które są próbkowane z G. Rozkład generatywny F jest konfigurowany przez parametry klastra θi i służy do generowania xi obserwacje. Na koniec możemy zdefiniować rozkład gęstości obraz czyli nasz rozkład mieszanki (przeliczalna nieskończona mieszanka) z proporcjami mieszania obraz i mieszanie składników obraz.

obraz

Rysunek 1: Model graficzny modelu mieszaniny procesowej Dirichleta

Powyżej widzimy odpowiednik modelu graficznego DPMM. G0 jest podstawowym rozkładem DP i jest zwykle wybierany do sprzężenia przed naszym rozkładem generatywnym F, aby ułatwić obliczenia i wykorzystać atrakcyjne właściwości matematyczne. α jest skalarnym hiperparametrem procesu Dirichleta i wpływa na liczbę klastrów, które otrzymamy. Im większa wartość α, tym więcej skupisk; im mniejsza α, tym mniej skupisk. Należy zauważyć, że wartość α wyraża siła wiary NS0. Duża wartość wskazuje, że większość próbek będzie odrębna i będzie miała wartości skoncentrowane na G0. G jest losowym rozkładem w przestrzeni parametrów pobranej z DP, który przypisuje prawdopodobieństwa parametrom. θi jest wektorem parametrów, który jest pobierany z rozkładu G i zawiera parametry klastra, rozkład F jest sparametryzowany przez θi i xi to punkt danych generowany przez generatywną dystrybucję F.

Ważne jest, aby pamiętać, że θi są elementami przestrzeni parametrów Θ i „konfigurują” nasze klastry. Mogą być również postrzegane jako zmienne latentne na xi które mówią nam, z którego komponentu/klastra xi pochodzi i jakie są parametry tego komponentu. Tak więc dla każdego xi że obserwujemy, rysujemy θi z dystrybucji G. Przy każdym losowaniu rozkład zmienia się w zależności od poprzednich wyborów. Jak widzieliśmy w schemacie urny Blackwella-MacQueena, dystrybucję G można zintegrować, a nasze przyszłe wybory θi zależy tylko od G0: obraz. Oszacowanie parametrów θi z poprzedniej formuły nie zawsze jest wykonalne, ponieważ wiele implementacji (np. Chinese Restaurant Process) wiąże się z wyliczaniem przez wykładniczo rosnący k składowych. Stosowane są zatem przybliżone metody obliczeniowe, takie jak próbkowanie Gibbsa. Na koniec powinniśmy zauważyć, że chociaż k skupień jest nieskończonych, liczba aktywnych skupień wynosi obraz. Tak więci powtórzy się i wykaże efekt klastrowania.

2. Wykorzystanie chińskiego procesu restauracyjnego do zdefiniowania modelu nieskończonej mieszanki

Model zdefiniowany w poprzednim segmencie jest matematycznie solidny, ma jednak poważną wadę: dla każdego nowego xi które obserwujemy, musimy próbkować nowy θi biorąc pod uwagę poprzednie wartości θ. Problem w tym, że w wielu przypadkach próbkowanie tych parametrów może być trudnym i kosztownym obliczeniowo zadaniem.

Alternatywnym podejściem jest wykorzystanie chińskiego procesu restauracyjnego do modelowania ukrytych zmiennych zi zadań klastrowych. W ten sposób zamiast używać θi do oznaczenia zarówno parametrów klastra, jak i przypisania do klastra, używamy zmiennej latentnej zi aby wskazać identyfikator klastra, a następnie użyć tej wartości do przypisania parametrów klastra. W rezultacie nie musimy już próbkować a θ za każdym razem, gdy otrzymujemy nową obserwację, ale zamiast tego otrzymujemy przypisanie klastra przez próbkowanie zi z CRP. W tym schemacie nowe θ jest próbkowane tylko wtedy, gdy musimy utworzyć nowy klaster. Poniżej przedstawiamy model tego podejścia:

obraz
obraz
obraz

Równanie 2: Model mieszany z CRP

Powyższe jest modelem generatywnym, który opisuje, w jaki sposób dane xi a klastry są generowane. Aby przeprowadzić analizę skupień musimy wykorzystać obserwacje xi i oszacuj przypisania klastrów zi.

3. Wnioskowanie modelu mieszanego i próbkowanie Gibbsa

Niestety, ponieważ procesy Dirichleta są nieparametryczne, my nie mogę użyć algorytmu EM aby oszacować ukryte zmienne, które przechowują przypisania klastrów. W celu oszacowania przydziałów posłużymy się Zwinięte próbkowanie Gibbsa.

Zwinięte próbkowanie Gibbsa jest prostym algorytmem Markov Chain Monte Carlo (MCMC). Jest szybki i umożliwia nam zintegrowanie niektórych zmiennych podczas próbkowania innej zmiennej. Niemniej jednak ten algorytm wymaga od nas wybrania G0 który jest sprzężoną przed rozkładem generatywnym F, aby móc analitycznie rozwiązać równania i móc pobierać próbki bezpośrednio z obraz.

Kroki Collapsed Gibbs Sampling, których użyjemy do oszacowania przypisania klastrów, są następujące:

  • Zainicjuj zi przypisania klastrów losowo
  • Powtarzaj aż do zbieżności
    • Wybierz losowo topóri
    • Zachowaj pozostałe zj ustalone dla każdego j≠i: obraz
    • Przypisz nową wartość do zi obliczając „prawdopodobieństwo CRP”, które zależy od zj i xj wszystkich j≠i: obraz

W następnym artykule skupimy się na tym, jak przeprowadzić analizę skupień przy użyciu modeli Dirichlet Process Mixture. Zdefiniujemy dwa różne modele mieszania procesów Dirichleta, które wykorzystują proces restauracji chińskiej i próbkowanie zwiniętego Gibbsa w celu wykonywania klastrów na ciągłych zestawach danych i dokumentach.

Znak czasu:

Więcej z Skrzynka odniesienia