Finit Mixture Model baserad på Dirichlet Distribution PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Finite Mixing Model baserad på Dirichlet Distribution

Det här blogginlägget är den andra delen av en artikelserie om Dirichlet Process -blandningsmodeller. I föregående artikel hade vi en översikt över flera klusteranalystekniker och vi diskuterade några av de problem/begränsningar som uppstår genom att använda dem. Dessutom presenterade vi kortfattat Dirichlet Process Mixture Models, vi pratade om varför de är användbara och vi presenterade några av deras applikationer.

Uppdatering: Datumbox Machine Learning Framework är nu öppen källkod och gratis att ladda ner. Kolla in paketet com.datumbox.framework.machinelearning.clustering för att se implementeringen av Dirichlet Process Mixture Models i Java.

Modellerna från Dirichlet Process Blandning kan vara lite svåra att svälja i början, främst eftersom de är oändliga blandningsmodeller med många olika representationer. Lyckligtvis är ett bra sätt att närma sig ämnet genom att utgå från modellerna Finite Blandning med Dirichlet Distribution och sedan flytta till de oändliga.

Följaktligen kommer jag i den här artikeln att presentera några viktiga fördelningar som vi kommer att behöva, vi kommer att använda dem för att konstruera modellen Dirichlet Prior med Multinomial Likelihood och sedan flytta vi till den slutliga blandningsmodellen baserad på Dirichlet -distributionen.

1. Betadistribution

Smakämnen Betadistribution är en familj av kontinuerliga fördelningar som definieras i intervallet [0,1]. Det parametreras av två positiva parametrar a och b och dess form beror starkt på valet av dessa två parametrar.

bild

Figur 1: Betadistribution för olika a, b -parametrar

Betadistributionen används vanligtvis för att modellera en fördelning över sannolikheter och har följande sannolikhetstäthet:

bild

Ekvation 1: Beta PDF

Där Γ (x) är gammafunktionen och a, b parametrarna för distributionen. Beta används vanligtvis som en fördelning av sannolikhetsvärden och ger oss sannolikheten att den modellerade sannolikheten är lika med ett visst värde P = p0. Enligt dess definition kan Betadistribution modellera sannolikheten för binära utfall som tar värden sanna eller falska. Parametrarna a och b kan betraktas som pseudokonton för framgång respektive misslyckande. Således modellerar Betadistributionen sannolikheten för framgång med tanke på framgångar och b -misslyckanden.

2. Dirichlet Distribution

Smakämnen Dirichlet Distribution är generaliseringen av Betadistribution för flera utfall (eller med andra ord används det för händelser med flera utfall). Det parametreras med k parametrar ai vilket måste vara positivt. Dirichlet Distribution är lika med Betadistribution när antalet variabler k = 2.

bild

Figur 2: Dirichlet -distribution för olika ai parametrar

Dirichlet -fördelningen används vanligtvis för att modellera en fördelning över sannolikheter och har följande sannolikhetstäthet:

bild

Ekvation 2: Dirichlet PDF

Där Γ (x) är gammafunktionen, visas pi ta värden i [0,1] och Σpi= 1. Dirichlet -distributionen modellerar den gemensamma fördelningen av si och ger sannolikheten för P1=p1,P2=p2,…., Pk-1=pk-1 med Pk= 1 - ΣPi. Som i fallet med Beta, ai parametrar kan betraktas som pseudokonton av varje i -händelse. Dirichlet -distributionen används för att modellera sannolikheten för att k rivaliserande händelser inträffar och betecknas ofta som Dirichlet (a).

3. Dirichlet Prior med multinomial sannolikhet

Som nämnts tidigare kan Dirichlet -fördelningen ses som en fördelning över sannolikhetsfördelningar. I de fall där vi vill modellera sannolikheten för att k -händelser inträffar skulle en Bayesiansk metod vara att använda Multinomial Sannolikhet och Dirichlet Priors .

Nedan kan vi se den grafiska modellen för en sådan modell.

bild

Figur 3: Grafisk modell av Dirichlet Priors med multinomial sannolikhet

I den ovanstående grafiska modellen är α en ak -dimensionell vektor med hyperparametrarna från Dirichlet -prior, p är en ak -dimensionell vektor med sannolikhetsvärdena och xi är ett skalvärde från 1 till k som berättar vilken händelse som har inträffat. Slutligen bör vi notera att P följer Dirichlet -fördelningen parametrerad med vektorn α och därmed P ~ Dirichlet (α), medan xi variabler följer den diskreta distributionen (multinomial) parametrerad med sannolikhetens p -vektor. Liknande hierarkiska modeller kan användas i dokumentklassificering för att representera fördelningen av sökordfrekvenser för olika ämnen.

4. Slutlig blandningsmodell med Dirichlet -distribution

Genom att använda Dirichlet Distribution kan vi konstruera en Slutlig blandningsmodell som kan användas för att utföra klustering. Låt oss anta att vi har följande modell:

bild

bild

bild

bild

Ekvation 3: Slutlig blandningsmodell med Dirichlet -distribution

Ovanstående modell förutsätter följande: Vi har en dataset X med n observationer och vi vill utföra klusteranalys på den. K är ett konstant ändligt tal som visar antalet kluster/komponenter som vi kommer att använda. Ci variabler lagrar klustilldelningen av observation Xi, de tar värden från 1 till k och följer den diskreta distributionen med parameter p som är blandningens sannolikheter för komponenterna. F är den generativa fördelningen av vårt X och parametreras med en parameter bild som beror på klustertilldelningen för varje observation. Totalt har vi k unika bild parametrar lika med antalet av våra kluster. De bild variabel lagrar parametrarna som parametrerar den generativa F -distributionen och vi antar att den följer en bas G0 distribution. Variabeln p lagrar blandningsprocenten för var och en av k -klustren och följer Dirichlet med parametrarna α/k. Slutligen är a en dimensionell vektor med hyperparametrarna (pseudokonton) för Dirichlet -distribution [2].

bild

Figur 4: Grafisk modell för modell med slutlig blandning med Dirichlet -distribution

Ett enklare och mindre matematiskt sätt att förklara modellen är följande. Vi antar att våra data kan grupperas i k -kluster. Varje kluster har sina egna parametrar bild och dessa parametrar används för att generera vår data. Parametrarna bild antas följa någon distribution G0. Varje observation representeras med en vektor xi och aci värde som anger det kluster som det tillhör. Följaktligen är ci kan ses som en variabel som följer den diskreta fördelningen med en parameter p som inte är annat än blandningssannolikheterna, det vill säga sannolikheten för att varje kluster förekommer. Med tanke på att vi hanterar vårt problem på ett bayesiskt sätt behandlar vi inte parametern p som en konstant okänd vektor. Istället antar vi att P följer Dirichlet som parametreras av hyperparametrar α/k.

5. Arbeta med oändliga k -kluster

Den tidigare blandningsmodellen låter oss utföra inlärning utan övervakning, följer ett Bayesianskt tillvägagångssätt och kan utökas till en hierarkisk struktur. Ändå är det en ändlig modell eftersom den använder ett konstant fördefinierat k -antal kluster. Som ett resultat kräver det att vi definierar antalet komponenter innan vi utför klusteranalys och som vi diskuterade tidigare i de flesta applikationer är detta okänt och kan inte enkelt uppskattas.

Ett sätt att lösa detta är att föreställa sig att k har ett mycket stort värde som tenderar till oändlighet. Med andra ord kan vi föreställa oss gränsen för denna modell när k tenderar till oändlighet. Om så är fallet kan vi se att trots att antalet kluster k är oändligt kan det faktiska antalet kluster som är aktiva (de som har minst en observation) inte vara större än n (vilket är det totala antalet observationer i vår dataset). Som vi kommer att se senare kommer antalet aktiva kluster att vara betydligt mindre än n och de kommer att vara proportionella mot bild.

Att ta gränsen för k till oändlighet är naturligtvis icke-trivialt. Flera frågor reser sig som om det är möjligt att ta en sådan gräns, hur skulle den här modellen se ut och hur kan vi konstruera och använd en sådan modell.

I nästa artikel kommer vi att fokusera på exakt dessa frågor: vi kommer att definiera Dirichlet -processen, vi kommer att presentera de olika representationerna av DP och slutligen kommer vi att fokusera på den kinesiska restaurangprocessen som är ett intuitivt och effektivt sätt att konstruera en Dirichlet -process.

Jag hoppas att du tyckte att det här inlägget var användbart. Om du gjorde det, ta en stund att dela artikeln på Facebook och Twitter. 🙂

Tidsstämpel:

Mer från Datumbox