Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Grupowanie dokumentów i danych gaussowskich za pomocą modeli mieszanin procesów Dirichleta

Ten artykuł jest piątą częścią samouczka na Klastrowanie z DPMM. W poprzednich postach szczegółowo omówiliśmy podstawy teoretyczne metody oraz opisaliśmy jej matematyczne reprezentacje i sposoby jej konstruowania. W tym poście postaramy się powiązać teorię z praktyką, wprowadzając dwa modele DPMM: model wielowymiarowej mieszaniny normalnej Dirichleta, który można wykorzystać do grupowania danych gaussowskich, oraz model mieszaniny wielomianowej Dirichleta, który służy do grupowania dokumentów.

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. Model wielowymiarowej normalnej mieszaniny Dirichleta

Pierwszym modelem mieszanki Dirichlet Process, który zbadamy, jest model Dirichlet Multivariate Normal Mixture Model, który można wykorzystać do wykonywania klastrów na ciągłych zestawach danych. Model mieszaniny definiuje się następująco:

Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Równanie 1: Wielowymiarowy model normalnej mieszaniny Dirichleta

Jak widać powyżej, konkretny model zakłada, że ​​dystrybucja generatywna jest wielomianową dystrybucją Gaussa i wykorzystuje proces restauracji chińskiej jak wcześniej dla przypisania klastra. Ponadto dla rozkładu bazowego G0 używa wcześniejszej wartości Normal-Inverse-Wishart, która jest koniugat przed wielowymiarowego rozkładu normalnego z nieznaną średnią i macierzą kowariancji. Poniżej przedstawiamy Model Graficzny modelu mieszanki:

Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Rysunek 1: Model graficzny wielowymiarowego modelu normalnej mieszaniny Dirichleta

Jak wspomnieliśmy wcześniej, aby móc oszacować przypisania klastrów, użyjemy Zwinięte próbkowanie Gibbsa co wymaga wybrania odpowiedni sprzężony przeor. Ponadto będziemy musieli zaktualizować podane parametry a posteriori przeor i dowody”. Poniżej widzimy Szacunki MAP parametrów dla jednego z klastrów:

Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Równanie 2: Szacunki MAP dotyczące parametrów skupień

Gdzie d jest wymiarem naszych danych i Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI. jest średnią próbki. Ponadto mamy kilka hiperparametrów wartości normalnej-odwrotnej-Wishart, takich jak μ0 która jest początkową średnią, κ0 to średni ułamek, który działa jako parametr wygładzający, ν0 jest stopniami swobody ustawionymi na liczbę wymiarów i Ψ0 jest iloczynem odchylenia parami, który jest ustawiony na macierz jednostkową dxd pomnożoną przez stałą. Od teraz wszystkie poprzednie hiperparametry G0 będzie oznaczane przez λ, aby uprościć notację. Wreszcie mając wszystko powyższe, możemy oszacować prawdopodobieństwa wymagane przez Collapsed Gibbs Sampler. Prawdopodobieństwo, że obserwacja i będzie należeć do klastra k, biorąc pod uwagę przypisania klastra, zbiór danych i wszystkie hiperparametry α i λ DP i G0 podano poniżej:

Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Równanie 3: Prawdopodobieństwa używane przez Gibbs Sampler dla MNMM

Gdzie zi jest przypisaniem do klastra obserwacji xiX1:nie jest kompletnym zbiorem danych, z-i jest zbiorem przypisań skupień bez jednego z ith obserwacja, x-i jest kompletnym zbiorem danych z wyłączeniem ith obserwacja, ck,-ja to łączna liczba obserwacji przypisanych do skupienia k z wyłączeniem ith obserwacja podczas Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI. i Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI. są średnią i macierzą kowariancji skupienia k z wyłączeniem ith obserwacja.

2. Model mieszaniny wielomianowej Dirichleta

Model Dirichleta-Multinomial Mixture służy do przeprowadzania analizy skupień dokumentów. Poszczególny model ma nieco bardziej skomplikowaną hierarchię, ponieważ modeluje tematy/kategorie dokumentów, prawdopodobieństwa słów w każdym temacie, przypisania klastrów i generatywną dystrybucję dokumentów. Jego celem jest przeprowadzanie nienadzorowanej nauki i grupowanie listy dokumentów poprzez przypisywanie ich do grup. Model mieszaniny definiuje się następująco:

Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Równanie 4: Dirichlet-wielomianowy model mieszaniny

Gdzie φ modeluje prawdopodobieństwa tematu, zi to selektor tematów, θk są prawdopodobieństwami słów w każdym skupieniu i xi, j reprezentuje słowa dokumentu. Należy zauważyć, że ta technika wykorzystuje ramy bag-of-words który reprezentuje dokumenty jako nieuporządkowany zbiór słów, bez względu na gramatykę i kolejność słów. Ta uproszczona reprezentacja jest powszechnie stosowana w przetwarzaniu języka naturalnego i wyszukiwaniu informacji. Poniżej przedstawiamy Model Graficzny modelu mieszanki:

Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Rysunek 2: Graficzny model wielomianowego modelu mieszaniny Dirichleta

Konkretny model wykorzystuje Wielomianowy rozkład dyskretny dla rozkładu generatywnego i rozkłady Dirichleta dla a priori. ℓ to rozmiar naszych aktywnych klastrów, n całkowita liczba dokumentów, β kontroluje a priori oczekiwaną liczbę klastrów, podczas gdy α kontroluje liczbę słów przypisanych do każdego klastra. Aby oszacować prawdopodobieństwa wymagane przez Zwinięty próbnik Gibbsa Używamy następujące równanie:

Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Grupowanie dokumentów i danych gaussowskich za pomocą modeli Dirichlet Process Mixture Models PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
Równanie 5: Prawdopodobieństwa używane przez Gibbs Sampler dla DMMM

Gdzie Γ jest funkcją gamma, zi jest przypisaniem do klastra dokumentu xiX1:nie jest kompletnym zbiorem danych, z-i jest zbiorem przypisań skupień bez jednego z ith dokument, x-i jest kompletnym zbiorem danych z wyłączeniem ith dokument, Nk(z-i) to liczba obserwacji przypisanych do skupienia k z wyłączeniem ith dokument, Nz=k(x-i) jest wektorem z sumami zliczeń dla każdego słowa dla wszystkich dokumentów przypisanych do skupienia k wyłączając ith dokument i N(xi) jest rzadkim wektorem z liczbą każdego słowa w dokumencie xi. Wreszcie, jak widać powyżej, używając Collapsed Gibbs Sampler z chińską restauracją Przetwórz θjk zmienna przechowująca prawdopodobieństwo wystąpienia słowa j w temacie k może zostać zintegrowana na zewnątrz.

Znak czasu:

Więcej z Skrzynka odniesienia