Finite-Mixture-Modell basierend auf Dirichlet Distribution PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Finite-Mixture-Modell basierend auf Dirichlet-Verteilung

Dieser Blog-Beitrag ist der zweite Teil einer Artikelserie über Dirichlet-Prozessmischungsmodelle. Im vorherigen Artikel hatten wir eine Übersicht über verschiedene Clusteranalysetechniken und wir haben einige der Probleme / Einschränkungen besprochen, die durch ihre Verwendung entstehen. Darüber hinaus haben wir kurz die Dirichlet-Prozessmischungsmodelle vorgestellt, darüber gesprochen, warum sie nützlich sind, und einige ihrer Anwendungen vorgestellt.

Update: Das Datumbox Machine Learning Framework ist jetzt Open Source und kostenlos für herunterladen. Schauen Sie sich das Paket com.datumbox.framework.machinelearning.clustering an, um die Implementierung von Dirichlet Process Mixture Models in Java zu sehen.

Die Dirichlet-Prozessmischungsmodelle können am Anfang etwas schwer zu schlucken sein, vor allem, weil es sich um unendliche Mischungsmodelle mit vielen verschiedenen Darstellungen handelt. Glücklicherweise ist es eine gute Möglichkeit, sich dem Thema zu nähern, indem Sie von den Finite-Mixture-Modellen mit Dirichlet-Verteilung ausgehen und dann zu den unendlichen übergehen.

Infolgedessen werde ich in diesem Artikel kurz einige wichtige Verteilungen vorstellen, die wir benötigen. Wir werden sie verwenden, um das Dirichlet-Prior-Modell mit multinomialer Wahrscheinlichkeit zu konstruieren, und dann zum Finite-Mixture-Modell übergehen, das auf der Dirichlet-Verteilung basiert.

1. Beta-Verteilung

Das Beta-Distribution ist eine Familie kontinuierlicher Verteilungen, die im Intervall von [0,1] definiert ist. Es wird durch zwei positive Parameter a und b parametrisiert und seine Form hängt stark von der Auswahl dieser beiden Parameter ab.

Image

Abbildung 1: Beta-Verteilung für verschiedene a, b-Parameter

Die Beta-Verteilung wird üblicherweise zur Modellierung einer Verteilung über Wahrscheinlichkeiten verwendet und weist die folgende Wahrscheinlichkeitsdichte auf:

Image

Gleichung 1: Beta PDF

Wobei Γ (x) die Gammafunktion und a, b die Parameter der Verteilung sind. Beta wird üblicherweise als Verteilung von Wahrscheinlichkeitswerten verwendet und gibt uns die Wahrscheinlichkeit, dass die modellierte Wahrscheinlichkeit einem bestimmten Wert P = p0 entspricht. Per Definition kann die Beta-Verteilung die Wahrscheinlichkeit von binären Ergebnissen modellieren, die Werte wie wahr oder falsch annehmen. Die Parameter a und b können als Pseudozählungen für Erfolg bzw. Misserfolg betrachtet werden. Somit modelliert die Beta-Verteilung die Erfolgswahrscheinlichkeit bei Erfolgen und Misserfolgen.

2. Dirichlet-Verteilung

Das Dirichlet-Verteilung ist die Verallgemeinerung der Beta-Verteilung für mehrere Ergebnisse (oder mit anderen Worten, sie wird für Ereignisse mit mehreren Ergebnissen verwendet). Es wird mit k Parametern a parametrierti das muss positiv sein. Die Dirichlet-Verteilung entspricht der Beta-Verteilung, wenn die Anzahl der Variablen k = 2 ist.

Image

Abbildung 2: Dirichlet-Verteilung für verschiedene ai Parameter

Die Dirichlet-Verteilung wird üblicherweise zur Modellierung einer Verteilung über Wahrscheinlichkeiten verwendet und weist die folgende Wahrscheinlichkeitsdichte auf:

Image

Gleichung 2: Dirichlet PDF

Wobei Γ (x) die Gammafunktion ist, ist pi nimm Werte in [0,1] und Σpi= 1. Die Dirichlet-Verteilung modelliert die gemeinsame Verteilung von pi und gibt die Wahrscheinlichkeit von P.1=p1,P2=p2,…., P.k-1=pk-1 mit Pk= 1 - ΣPi. Wie im Fall von Beta ist die ai Parameter können als Pseudozählungen der Erscheinungen jedes i-Ereignisses betrachtet werden. Die Dirichlet-Verteilung wird verwendet, um die Wahrscheinlichkeit des Auftretens von k rivalisierenden Ereignissen zu modellieren, und wird häufig als Dirichlet (a) bezeichnet.

3. Dirichlet Prior mit multinomialer Wahrscheinlichkeit

Wie bereits erwähnt, kann die Dirichlet-Verteilung als Verteilung über Wahrscheinlichkeitsverteilungen angesehen werden. In Fällen, in denen wir die Wahrscheinlichkeit des Auftretens von k Ereignissen modellieren möchten, wäre ein Bayes'scher Ansatz zu verwenden Multinomial Likelihood und Dirichlet Priors .

Unten sehen wir das grafische Modell eines solchen Modells.

Image

Abbildung 3: Grafisches Modell von Dirichlet-Priors mit multinomialer Wahrscheinlichkeit

In dem obigen grafischen Modell ist α ein ak-dimensionaler Vektor mit den Hyperparametern von Dirichlet-Priors, p ist ein ak-dimensionaler Vektor mit den Wahrscheinlichkeitswerten und xi ist ein Skalarwert von 1 bis k, der angibt, welches Ereignis aufgetreten ist. Schließlich ist anzumerken, dass das P der mit dem Vektor α und damit P ~ Dirichlet (α) parametrisierten Dirichlet-Verteilung folgt, während das xi Variablen folgen der diskreten Verteilung (Multinomial), die mit dem p-Vektor der Wahrscheinlichkeiten parametrisiert ist. Ähnliche hierarchische Modelle können bei der Dokumentklassifizierung verwendet werden, um die Verteilung der Schlüsselworthäufigkeiten in verschiedenen Themen darzustellen.

4. Finite-Mixture-Modell mit Dirichlet-Verteilung

Mit Dirichlet Distribution können wir a konstruieren Modell mit endlicher Mischung Hiermit kann ein Clustering durchgeführt werden. Nehmen wir an, wir haben das folgende Modell:

Image

Image

Image

Image

Gleichung 3: Finite-Mixture-Modell mit Dirichlet-Verteilung

Das obige Modell setzt Folgendes voraus: Wir haben einen Datensatz X mit n Beobachtungen und möchten eine Clusteranalyse durchführen. Das k ist eine konstante endliche Zahl, die die Anzahl der Cluster / Komponenten angibt, die wir verwenden werden. Die ci Variablen speichern die Clusterzuordnung von Beobachtung X.inehmen sie Werte von 1 bis k an und folgen der diskreten Verteilung mit dem Parameter p, der die Mischungswahrscheinlichkeiten der Komponenten sind. Das F ist die generative Verteilung unseres X und wird mit einem Parameter parametrisiert Image Dies hängt von der Clusterzuordnung jeder Beobachtung ab. Insgesamt haben wir k einzigartig Image Parameter gleich der Anzahl unserer Cluster. Das Image Die Variable speichert die Parameter, die die generative F-Verteilung parametrisieren, und wir nehmen an, dass sie einer Basis G folgt0 Verteilung. Die Variable p speichert die Mischungsprozentsätze für jeden der k Cluster und folgt dem Dirichlet mit den Parametern α / k. Schließlich ist α ein ak-dimensionaler Vektor mit den Hyperparametern (Pseudocounts) der Dirichlet-Verteilung [2].

Image

Abbildung 4: Grafisches Modell eines endlichen Mischungsmodells mit Dirichlet-Verteilung

Eine einfachere und weniger mathematische Methode zur Erklärung des Modells ist die folgende. Wir gehen davon aus, dass unsere Daten in k Clustern gruppiert werden können. Jeder Cluster hat seine eigenen Parameter Image und diese Parameter werden verwendet, um unsere Daten zu generieren. Die Parameter Image Es wird angenommen, dass sie einer Verteilung G folgen0. Jede Beobachtung wird mit einem Vektor x dargestellti und aci Wert, der den Cluster angibt, zu dem er gehört. Folglich ist die ci kann als eine Variable angesehen werden, die der diskreten Verteilung mit einem Parameter p folgt, der nichts anderes als die Mischungswahrscheinlichkeiten ist, dh die Wahrscheinlichkeit des Auftretens jedes Clusters. Da wir unser Problem auf Bayes'sche Weise behandeln, behandeln wir den Parameter p nicht als konstanten unbekannten Vektor. Stattdessen nehmen wir an, dass das P Dirichlet folgt, das durch die Hyperparameter α / k parametrisiert wird.

5. Arbeiten mit unendlichen k Clustern

Das vorherige Mischungsmodell ermöglicht es uns, unbeaufsichtigt zu lernen, folgt einem Bayes'schen Ansatz und kann erweitert werden, um eine hierarchische Struktur zu haben. Trotzdem ist es ein endliches Modell, da es eine konstant vordefinierte k Anzahl von Clustern verwendet. Daher müssen wir vor der Clusteranalyse die Anzahl der Komponenten definieren. Wie bereits in den meisten Anwendungen erläutert, ist dies unbekannt und kann nicht einfach geschätzt werden.

Eine Möglichkeit, dies zu beheben, besteht darin, sich vorzustellen, dass k einen sehr großen Wert hat, der gegen unendlich tendiert. Mit anderen Worten, wir können uns die Grenze dieses Modells vorstellen, wenn k gegen unendlich tendiert. Wenn dies der Fall ist, können wir sehen, dass trotz der unendlichen Anzahl von Clustern k die tatsächliche Anzahl von aktiven Clustern (die mindestens eine Beobachtung haben) nicht größer als n sein kann (was ist) die Gesamtzahl der Beobachtungen in unserem Datensatz). Wie wir später sehen werden, ist die Anzahl der aktiven Cluster deutlich geringer als n und proportional zu Image.

Natürlich ist es nicht trivial, die Grenze von k auf unendlich zu setzen. Es stellen sich mehrere Fragen, wie zum Beispiel, ob es möglich ist, eine solche Grenze zu setzen, wie dieses Modell aussehen würde und Wie können wir konstruieren? und verwenden Sie ein solches Modell.

Im nächsten Artikel werden wir uns genau auf diese Fragen konzentrieren: Wir werden den Dirichlet-Prozess definieren, wir werden die verschiedenen Darstellungen von DP präsentieren und schließlich werden wir uns auf den chinesischen Restaurantprozess konzentrieren, der eine intuitive und effiziente Möglichkeit ist, einen Dirichlet-Prozess zu konstruieren.

Ich hoffe, Sie fanden diesen Beitrag hilfreich. Wenn Sie dies getan haben, nehmen Sie sich bitte einen Moment Zeit, um den Artikel auf Facebook und Twitter zu teilen. 🙂

Zeitstempel:

Mehr von Bezugsbox