Dirichlet Distribution PlatoBlockchain Data Intelligenceen perustuva äärellinen sekoitusmalli. Pystysuuntainen haku. Ai.

Direichlet-jakautumiseen perustuva äärellinen sekoitusmalli

Tämä blogi on toinen osa artikkelisarjasta, joka käsittelee Dirichlet Process -seosmalleja. Edellisessä artikkelissa meillä oli yleiskatsaus useisiin klusterianalyysimenetelmiin ja keskustelimme joistakin ongelmista / rajoituksista, jotka nousevat niiden käyttämisellä. Lisäksi esittelimme lyhyesti Dirichlet-prosessisekoitusmalleja, puhuimme miksi ne ovat hyödyllisiä ja esittelimme joitain niiden sovelluksista.

Päivitys: Datumbox Machine Learning Framework on nyt avoimen lähdekoodin ja ilmainen download. Tutustu pakettiin com.datumbox.framework.machinelearning.clustering nähdäksesi Dirichlet-prosessisekoitusmallien käyttöönotto Javassa.

Dirichlet-prosessiseosmalleja voi olla hieman vaikea niellä alussa ensisijaisesti siksi, että ne ovat äärettömiä sekoitusmalleja, joilla on monia erilaisia ​​esityksiä. Onneksi hyvä tapa lähestyä aihetta on aloittaa äärellisistä sekoitusmalleista, joissa on Dirichlet-jakauma, ja siirtyä sitten äärettömiin.

Tämän seurauksena esitän tässä artikkelissa lyhyesti joitain tärkeitä jakaumia, joita tarvitsemme. Käytämme niitä rakentamaan Dirichlet Prior multinomial Likelihood -mallilla ja siirrymme sitten äärelliseen sekoitusmalliin, joka perustuu Dirichlet Distributioniin.

1. Beetajakelu

- Beetajakelu on jatkuvien jakautumien ryhmä, joka on määritelty välille [0,1]. Sitä parametroidaan kahdella positiivisella parametrilla a ja b, ja sen muoto riippuu suuresti näiden kahden parametrin valinnasta.

kuva

Kuva 1: Beetajakauma erilaisille a, b-parametreille

Beetajakaumaa käytetään yleisesti todennäköisyyksien jakauman mallintamiseen, ja sillä on seuraava todennäköisyystiheys:

kuva

Kaava 1: Beta PDF

Missä Γ (x) on gammafunktio ja a, b jakauman parametrit. Beeta käytetään yleisesti todennäköisyysarvojen jakaumana ja antaa meille todennäköisyyden, että mallinnettu todennäköisyys on tietty arvo P = p0. Määritelmänsä mukaan beetajakelu pystyy mallintamaan binaaristen lopputulosten todennäköisyyden, joissa arvot ovat tosi tai vääriä. Parametreja a ja b voidaan pitää menestyksen ja epäonnistumisen pseudoc-tilinä. Siksi beetajakelu mallintaa onnistumisen todennäköisyyttä onnistumisten ja b epäonnistumisten vuoksi.

2. Dirichlet-jakauma

- Dirichlet-jakauma on beetajakauman yleistäminen useille tuloksille (tai toisin sanoen sitä käytetään tapahtumissa, joissa on useita tuloksia). Se parametroidaan k-parametrilla ai jonka on oltava positiivista. Dirichlet-jakauma vastaa beetajakaumaa, kun muuttujien lukumäärä k = 2.

kuva

Kuva 2: Dirichlet-jakauma erilaisille ai parametrit

Dirichlet-jakaumaa käytetään yleisesti todennäköisyyksien jakauman mallintamiseen, ja sillä on seuraava todennäköisyystiheys:

kuva

Kaava 2: Dirichlet PDF

Kun Γ (x) on gammafunktio, pi ota arvot [0,1] ja Σpi= 1. Dirichlet-jakauma mallintaa pi ja antaa P: n todennäköisyyden1=p1,P2=p2...., Pk-1=pk-1 P: n kanssak= 1 - ΣPi. Kuten Beeta, ai parametreja voidaan pitää pseudocounts -tapahtumina kunkin i-tapahtuman esiintymisissä. Dirichlet-jakaumaa käytetään k kilpailevien tapahtumien todennäköisyyden mallintamiseen, ja sitä kutsutaan usein nimellä Dirichlet (a).

3. Dirichlet-priori, jolla on moniarvoinen todennäköisyys

Kuten aiemmin mainittiin, Dirichlet-jakaumaa voidaan pitää jakautumisena todennäköisyysjakaumien välillä. Tapauksissa, joissa haluamme mallintaa k-tapahtuman esiintymisen todennäköisyyttä, tulisi käyttää Bayesin lähestymistapaa Multinomial todennäköisyys ja Dirichlet Priorit .

Alla näemme tällaisen mallin graafisen mallin.

kuva

Kuva 3: Graafinen malli moniromaalisella todennäköisyydellä varustetuista Dirichlet-prioreista

Yllä olevassa graafisessa mallissa α on ak-ulotteinen vektori Dirichlet-prioonien hyperparametrien kanssa, p on ak-ulotteinen vektori todennäköisyysarvoilla ja xi on skalaariarvo välillä 1 - k, joka kertoo tapahtuman tapahtuneen. Lopuksi meidän on huomattava, että P seuraa Dirichlet-jakaumaa, joka on parametroitu vektorilla α ja siten P ~ Dirichlet (α), kun taas xi muuttujat seuraavat diskreetin jakauman (multinomial) parametrointia todennäköisyyden p-vektorilla. Samankaltaisia ​​hierarkkisia malleja voidaan käyttää asiakirjojen luokittelussa edustamaan avainsanan taajuuksien jakautumisia eri aiheista.

4. äärellinen seosmalli Dirichlet-jakautumalla

Dirichlet-jakauman avulla voidaan rakentaa a Äärellinen sekoitusmalli jota voidaan käyttää klusteroinnin suorittamiseen. Oletetaan, että meillä on seuraava malli:

kuva

kuva

kuva

kuva

Kaava 3: äärellinen seosmalli Dirichlet-jakautumalla

Yllä oleva malli olettaa seuraavan: Meillä on tietojoukko X, jossa on n havaintoa, ja haluamme tehdä siihen klusterianalyysin. K on vakio äärellinen luku, joka osoittaa käytettävien klustereiden / komponenttien määrän. Ci muuttujat tallentavat havainnon X klusterimääritykseni, ne ottavat arvot välillä 1 - k ja seuraavat diskreettiä jakaumaa parametrilla p, joka on komponenttien sekoitustodennäköisyydet. F on X: n generatiivinen jakauma ja se parametroidaan parametrilla kuva joka riippuu kunkin havainnon klusterimäärityksestä. Kaiken kaikkiaan meillä on k ainutlaatuista kuva parametrit, jotka vastaavat klustereidemme määrää. kuva muuttuja tallentaa parametrit, jotka parametroivat generatiivisen F-jakauman, ja oletamme, että se seuraa emästä G0 jakeluun. P-muuttuja tallentaa seoksen prosenttimäärät jokaiselle k-klusterille ja seuraa Dirichlet-parametria α / k. Lopuksi α on ak-ulotteinen vektori Dirichlet-jakauman hyperparametrien (pseudocounts) kanssa [2].

kuva

Kuva 4: Graafinen malli äärellisestä seosmallista, jossa on Dirichlet-jakauma

Yksinkertainen ja vähemmän matemaattinen tapa selittää malli on seuraava. Oletetaan, että tietomme voidaan ryhmitellä k-klusteriin. Jokaisella klusterilla on omat parametrit kuva ja näitä parametreja käytetään tietojen luomiseen. Parametrit kuva oletetaan seuraavan jotakin jakaumaa G0. Jokainen havainto esitetään vektorilla xi ja aci arvo, joka ilmaisee klusterin, johon se kuuluu. Näin ollen ci voidaan nähdä muuttujana, joka seuraa diskreettiä jakaumaa parametrilla p, joka ei ole muuta kuin sekoitustodennäköisyydet, ts. kunkin klusterin esiintymisen todennäköisyys. Koska käsittelemme ongelmaamme bayesisella tavalla, emme käsittele parametria p vakiona tuntemattomana vektorina. Sen sijaan oletamme, että P seuraa Dirichletiä, jonka parametroivat hyperparametrit α / k.

5. Työskentely äärettömien k-klusterien kanssa

Edellisen sekoitusmallin avulla voimme suorittaa ohjaamattoman oppimisen, se noudattaa Bayesin lähestymistapaa ja sitä voidaan laajentaa hierarkkiseksi rakenteeksi. Siitä huolimatta se on äärellinen malli, koska siinä käytetään vakiona ennalta määritettyä k-määrää klustereita. Seurauksena on, että meidän on määritettävä komponenttien lukumäärä ennen klusterianalyysin suorittamista. Kuten aiemmin keskustelimme useimmissa sovelluksissa, tätä ei tunneta eikä sitä voida helposti arvioida.

Yksi tapa ratkaista tämä on kuvitella, että k: lla on erittäin suuri arvo, jolla on taipumus äärettömyyteen. Toisin sanoen voimme kuvitella tämän mallin rajan, kun k taipuu äärettömyyteen. Jos näin on, voidaan nähdä, että huolimatta siitä, että klustereita k on ääretön, aktiivisten klustereiden todellinen lukumäärä (ne, joilla on ainakin yksi havainto) ei voi olla suurempi kuin n (mikä on tietokokonaisuuden havaintojen kokonaismäärä). Itse asiassa kuten näemme myöhemmin, aktiivisten klustereiden määrä on huomattavasti pienempi kuin n ja ne ovat verrannollisia kuva.

K-rajan ottaminen äärettömyyteen on tietysti ei-triviaalia. Esiin nousee useita kysymyksiä, kuten onko mahdollista ottaa tällainen raja, miltä tämä malli näyttäisi ja kuinka voimme rakentaa ja käytä sellaista mallia.

Seuraavassa artikkelissa keskitymme tarkalleen näihin kysymyksiin: määrittelemme Dirichlet-prosessin, esittelemme DP: n eri esitykset ja viimein keskitymme kiinalaiseen ravintolaprosessiin, joka on intuitiivinen ja tehokas tapa rakentaa Dirichlet-prosessi.

Toivottavasti pidit tätä viestiä hyödyllisenä. Jos et, ota hetki jakaaksesi artikkeli Facebookissa ja Twitterissä. 🙂

Aikaleima:

Lisää aiheesta Datumbox