- 12 mei 2014
- Vasilis Vryniotis
- . 4 opmerkingen
Deze blogpost is het tweede deel van een artikelserie over Dirichlet Process-mengselmodellen. In het vorige artikel hadden we een overzicht van verschillende technieken voor clusteranalyse en we bespraken enkele van de problemen / beperkingen die opkomen door ze te gebruiken. Bovendien presenteerden we kort de Dirichlet-procesmengselmodellen, we bespraken waarom ze nuttig zijn en we presenteerden enkele van hun toepassingen.
Update: het Datumbox Machine Learning Framework is nu open-source en gratis voor Download. Bekijk het pakket com.datumbox.framework.machinelearning.clustering om de implementatie van Dirichlet Process Mixture Models in Java te zien.
De Dirichlet Process Mixture-modellen kunnen in het begin een beetje moeilijk te slikken zijn, vooral omdat het oneindige mengmodellen zijn met veel verschillende representaties. Gelukkig is een goede manier om het onderwerp te benaderen door uit te gaan van de eindige mengmodellen met dirichletdistributie en vervolgens naar de oneindige te gaan.
Daarom zal ik in dit artikel kort enkele belangrijke verdelingen presenteren die we nodig zullen hebben, we zullen ze gebruiken om het Dirichlet Prior met Multinomial Likelihood-model te construeren en dan gaan we over naar het Finite Mixture Model gebaseerd op de Dirichlet Distribution.
1. Beta-distributie
De Beta-distributie is een familie van continue distributies die is gedefinieerd in het interval van [0,1]. Het wordt geparametreerd door twee positieve parameters a en b en de vorm hangt sterk af van de selectie van die twee parameters.
Figuur 1: Beta-distributie voor verschillende a, b-parameters
De bรจtaverdeling wordt vaak gebruikt om een โโverdeling over kansen te modelleren en heeft de volgende kansdichtheid:
Vergelijking 1: Beta PDF
Waar ฮ (x) de gammafunctie is en a, b de parameters van de verdeling. Bรจta wordt vaak gebruikt als een verdeling van kanswaarden en geeft ons de kans dat de gemodelleerde kans gelijk is aan een bepaalde waarde P = p0. Volgens zijn definitie is bรจtadistributie in staat de waarschijnlijkheid van binaire uitkomsten te modelleren die waarden waar of onwaar aannemen. De parameters a en b kunnen worden beschouwd als de pseudocounts van respectievelijk succes en falen. Dus de Beta Distribution modelleert de kans op succes gegeven a successen en b mislukkingen.
2. Dirichlet-distributie
De Dirichlet-distributie is de veralgemening van bรจtadistributie voor meerdere resultaten (of met andere woorden, het wordt gebruikt voor evenementen met meerdere resultaten). Het wordt geparametreerd met k-parameters ai wat positief moet zijn. Dirichletverdeling is gelijk aan de bรจtadistributie als het aantal variabelen k = 2.
Figuur 2: Dirichlet distributie voor verschillende ai parameters
De Dirichlet-verdeling wordt vaak gebruikt om een โโverdeling over kansen te modelleren en heeft de volgende kansdichtheid:
Vergelijking 2: Dirichlet PDF
Waar ฮ (x) de gammafunctie is, is de pi neem waarden in [0,1] en ฮฃpi= 1. De Dirichlet-distributie modelleert de gezamenlijke distributie van pi en geeft de waarschijnlijkheid van P1=p1,P2=p2, ..., Pk-1=pk-1 met Pk= 1 - ฮฃPi. Net als bij Beta is de ai parameters kunnen worden beschouwd als pseudotellingen van de verschijningen van elke i-gebeurtenis. De Dirichlet-verdeling wordt gebruikt om de waarschijnlijkheid van het optreden van concurrerende gebeurtenissen te modelleren en wordt vaak aangeduid als Dirichlet (a).
3. Dirichlet Prior met multinomiale waarschijnlijkheid
Zoals eerder vermeld kan de Dirichlet-verdeling worden gezien als een verdeling over kansverdelingen. In gevallen waarin we de waarschijnlijkheid van het optreden van k-gebeurtenissen willen modelleren, zou een Bayesiaanse benadering worden gebruikt Multinomiale waarschijnlijkheid en Dirichlet-prijs .
Hieronder zien we het grafische model van zo'n model.
Figuur 3: grafisch model van dirichletpriors met multinomiale waarschijnlijkheid
In het bovenstaande grafische model is ฮฑ een ak-dimensionale vector met de hyperparameters van Dirichlet-priors, p is een ak-dimensionale vector met de waarschijnlijkheidswaarden en xi is een scalaire waarde van 1 tot k die ons vertelt welke gebeurtenis zich heeft voorgedaan. Ten slotte moeten we opmerken dat de P de Dirichlet-verdeling volgt die is geparametreerd met vector ฮฑ en dus P ~ Dirichlet (ฮฑ), terwijl de xi variabelen volgen de discrete distributie (multinomiaal) geparametreerd met de p-vector van waarschijnlijkheden. Vergelijkbare hiรซrarchische modellen kunnen worden gebruikt in documentclassificatie om de verdelingen van zoekwoordfrequenties voor in verschillende onderwerpen weer te geven.
4. Eindig mengselmodel met Dirichlet-verdeling
Door Dirichlet Distribution te gebruiken kunnen we een Eindig mengselmodel waarmee clustering kan worden uitgevoerd. Laten we aannemen dat we het volgende model hebben:
Vergelijking 3: Eindig mengselmodel met dirichletverdeling
Het bovenstaande model gaat uit van het volgende: We hebben een dataset X met n waarnemingen en we willen er clusteranalyse op uitvoeren. De k is een constant eindig getal dat het aantal clusters / componenten aangeeft dat we zullen gebruiken. De ci variabelen slaan de clustertoewijzing van waarneming X opi, ze nemen waarden van 1 tot k en volgen de discrete distributie met parameter p, de mengkansen van de componenten. De F is de generatieve verdeling van onze X en wordt geparametriseerd met een parameter wat afhangt van de clustertoewijzing van elke waarneming. In totaal hebben we k uniek parameters gelijk aan het aantal van onze clusters. De variabele slaat de parameters op die de generatieve F-verdeling parametreren en we nemen aan dat deze een basis G volgt0 distributie. De p-variabele slaat de mengpercentages op voor elk van de k-clusters en volgt de Dirichlet met parameters ฮฑ / k. Ten slotte is de ฮฑ een dimensionale vector met de hyperparameters (pseudocounts) van Dirichlet-distributie [2].
Figuur 4: grafisch model van eindig mengselmodel met dirichletverdeling
Een eenvoudigere en minder wiskundige manier om het model uit te leggen, is de volgende. We gaan er vanuit dat onze data gegroepeerd kunnen worden in k clusters. Elke cluster heeft zijn eigen parameters en die parameters worden gebruikt om onze gegevens te genereren. De parameters wordt verondersteld enige distributie G te volgen0. Elke waarneming wordt weergegeven met een vector xi en aci waarde die het cluster aangeeft waartoe het behoort. De ci kan worden gezien als een variabele die de discrete verdeling volgt met een parameter p die niets anders is dan de mengkansen, dat wil zeggen de waarschijnlijkheid dat elk cluster voorkomt. Aangezien we ons probleem op een Bayesiaanse manier aanpakken, behandelen we de parameter p niet als een constante onbekende vector. In plaats daarvan nemen we aan dat de P Dirichlet volgt die wordt geparametreerd door hyperparameters ฮฑ / k.
5. Werken met oneindig veel k-clusters
Het vorige mengmodel stelt ons in staat om zonder toezicht te leren, volgt een Bayesiaanse benadering en kan worden uitgebreid tot een hiรซrarchische structuur. Desalniettemin is het een eindig model omdat het gebruik maakt van een constant voorgedefinieerd k aantal clusters. Het resultaat is dat we het aantal componenten moeten definiรซren voordat we Clusteranalyse uitvoeren en zoals we eerder in de meeste toepassingen hebben besproken, is dit onbekend en kan het niet gemakkelijk worden geschat.
Een manier om dit op te lossen is door u voor te stellen dat k een zeer grote waarde heeft die naar het oneindige neigt. Met andere woorden, we kunnen ons de limiet van dit model voorstellen wanneer k naar oneindig neigt. Als dit het geval is, kunnen we zien dat ondanks dat het aantal clusters k oneindig is, het werkelijke aantal actieve clusters (de clusters met ten minste รฉรฉn waarneming) niet groter kan zijn dan n (wat is het totale aantal waarnemingen in onze dataset). Zoals we later zullen zien, zal het aantal actieve clusters aanzienlijk kleiner zijn dan n en evenredig met .
Natuurlijk is het niet triviaal om de limiet van k tot oneindig te nemen. Verschillende vragen rijzen, zoals of het mogelijk is om een โโdergelijke limiet te nemen, hoe zou dit model eruit zien en hoe kunnen we construeren en gebruik zo'n model.
In het volgende artikel zullen we ons precies op deze vragen concentreren: we zullen het Dirichlet-proces definiรซren, we zullen de verschillende representaties van DP presenteren en tot slot zullen we ons concentreren op het Chinese restaurantproces, een intuรฏtieve en efficiรซnte manier om een โโDirichlet-proces te construeren.
Ik hoop dat je dit bericht nuttig vond. Als dat zo is, neem dan even de tijd om het artikel op Facebook en Twitter te delen. ๐
- AI
- ai kunst
- ai kunst generator
- je hebt een robot
- kunstmatige intelligentie
- certificering van kunstmatige intelligentie
- kunstmatige intelligentie robot
- kunstmatige intelligentie robots
- kunstmatige intelligentiesoftware
- blockchain
- blockchain conferentie ai
- vindingrijk
- conversatie kunstmatige intelligentie
- crypto conferentie ai
- van dall
- Datumbox
- diepgaand leren
- google ai
- machine learning
- Machine learning en statistieken
- Plato
- plato ai
- Plato gegevensintelligentie
- Plato-spel
- PlatoData
- platogamen
- schaal ai
- syntaxis
- zephyrnet