Latentti Dirichlet-allokaatio (LDA) ja Hierarkkinen Dirichlet-prosessi (HDP) ovat molemmat aiheen mallintamisprosesseja. Suurin ero on, että LDA vaatii aiheiden määrän määrittelyä, ja HDP ei t. Miksi niin on? Ja mitkä ovat molempien aiheiden mallintamismenetelmien erot, edut ja haitat?
Kommentit
- Pitäisikö HDP: n olla tietopohjainen valitsemiesi aiheiden lukumäärän suhteen? Käytännössä yritin suorittaa Blei ' HDP-toteutus ja se vain syö koko muistin, kunnes tapoin prosessin. Minulla on 16 Gt RAM-muistia ja hieman yli 100 kt analysoitavia lyhyitä asiakirjoja.
Vastaa
HDP on LDA: n laajennus, joka on suunniteltu vastaamaan tapaukseen, jossa seoksen komponenttien lukumäärää (”aiheiden” määrää asiakirjojen mallinnustermeillä) ei tunneta a priori. Joten tämä on syy siihen, miksi on ero.
LDA: ta käyttämällä asiakirjojen mallintamisessa kutakin ”aihetta” käsitellään sanojen jakaumana tunnetussa sanastossa. Jokaiselle dokumentille piirretään sekoitus aiheita. Dirichlet-jakelusta, a ja sitten jokainen asiakirjan sana on riippumaton piirustus kyseisestä seoksesta (ts. valitsemalla aihe ja käyttämällä sitä sitten sanan luomiseen).
HDP: lle (käytetään asiakirjan mallintamiseen) käytetään myös Dirichlet-prosessi aiheiden määrän epävarmuuden kaappaamiseksi. Joten valitaan yhteinen emäsjakauma, joka edustaa korpusen mahdollisten aiheiden lukemattomasti ääretöntä joukkoa, ja sitten jokaisesta asiakirjasta julkaistaan aiheen rajallinen jakauma tästä perusjakelusta.
Sikäli kuin edut ja haittoja, HDP: llä on se etu, että enimmäismäärä aiheita voidaan rajata ja oppia tiedoista ennalta määrittelemättä. Oletan, että vaikka sen toteuttaminen on monimutkaisempaa ja tarpeetonta, jos rajoitettu määrä aiheita on hyväksyttävä.
Vastaa
Anekdotisesti minuun ei ole koskaan vaikuttunut hierarkkisen LDA: n tuotoksesta. Se ei vain näytä löytävän optimaalista tarkkuustasoa aiheiden määrän valinnassa. Olen saanut paljon parempia tuloksia suorittamalla muutaman iteraation tavallista LDA: ta, tarkastelemalla manuaalisesti sen tuottamia aiheita, päättämällä lisätä tai vähentää aiheiden määrää ja jatkaa iterointia, kunnes saan etsimäni tarkkuuden.
Muista: hierarkkinen LDA ei voi lukea mieltäsi … se ei tiedä mihin aiot todella käyttää aihemallintamista. Aivan kuten k-tarkoittaa klustereita, sinun tulisi valita k, joka on järkevin käyttötapauksellesi.
Vastaa
Halusin huomauttaa, koska tämä on yksi tämän aiheen Google-suosituimmista hitteistä, että piilevä Dirichlet-allokaatio (LDA), hierarkkiset Dirichlet-prosessit (HDP), ja hierarkkinen latentti Dirichlet-allokaatio (hLDA) ovat kaikki erilliset mallit.
LDA mallintaa asiakirjat dirichlet-seoksina kiinteästä määrästä aiheita, jotka käyttäjä on valinnut mallin parametriksi, jotka puolestaan ovat dirichlet-sanaseoksia. Tämä luo tasaisen, pehmeän todennäköisyyksien ryhmittelyt termeistä aiheiksi ja asiakirjat aiheiksi.
HDP mallintaa aiheita sanojen sekoituksina, aivan kuten LDA, mutta asiakirjojen sijaan kiinteän määrän aiheiden sekoituksia, aiheiden määrä syntyy dirichlet-prosessissa, jolloin aiheiden lukumäärä myös satunnaismuuttuja. Nimen ”hierarkkinen” osa viittaa toiseen tasoon, joka lisätään generatiiviseen malliin (dirichlet-prosessi, joka tuottaa aiheiden määrän), ei itse aiheita – aiheet ovat edelleen tasaisia klustereita.
hLDA, toisaalta, se on LDA: n mukautus, joka mallintaa aiheita sekoituksina uudesta, erillisestä aihetasosta, joka perustuu dirichlet jakeluihin eikä prosesseihin. Se käsittelee edelleen aiheiden määrää hyperparametrinä, ts. Riippumatta tiedoista. Ero on siinä, että klusterointi on nyt hierarkkinen – se oppii ryhmittelemään itse ensimmäiset aihepiirit, jolloin aiheiden (ja siten sanojen ja asiakirjojen) välillä on yleisempi, abstraktimpi suhde. Ajattele sitä kuin pinonvaihdon klusterointi matematiikkaan, tieteeseen, ohjelmointiin, historiaan jne., Toisin kuin datatieteen klusterointi ja ristivalidointi abstraktiksi tilasto- ja ohjelmointiaiheeksi, joka jakaa joitain käsitteitä esimerkiksi ohjelmistotuotannon, mutta ohjelmistotuotannon kanssa vaihto on klusteroitu konkreettisemmalla tasolla tietojenkäsittelytieteen vaihdon kanssa, ja kaikkien mainittujen vaihtojen välinen samankaltaisuus ei näy niin paljon kuin klustereiden ylempi kerros.
Vastaa
Minulla on tilanne, jossa HDP toimii hyvin LDA: han verrattuna. Minulla on noin 16000 dokumenttia, jotka kuuluvat eri luokkiin.Koska en tiedä kuinka monta eri aihetta voin kerätä kullekin luokalle, HDP on todella hyödyllinen tässä tapauksessa.
Vastaus
Itse asiassa HDP vaatii paljon piilotettuja parametreja, jotka ovat koodissa. Jos pelaat tällaisilla parametreilla, saat erilaisia tuloksia (eri aiheet). Ihmiset eivät yleensä kiinnitä huomiota tällaisiin piilotettuihin parametreihin ja ajattelevat mallin löytävän tällaiset parametrit. Se ei ole totta. Käyttäjän on määriteltävä parametrit ”eta”, ”gamma” ja ”alfa” sekä aiheiden enimmäismäärä. Jos määrität enintään 23 aiheesta sanottavien aiheiden enimmäismäärän, mallissa on 23 aihetta. Jos määrität 15 aihetta, saat 15 aihetta tulosteessa.
Vastaa
Yee Whye Teh et ai. klusterointiongelmat. -esimerkissä HDP auttaa yleistämään Latentti Dirichlet-kohdistusmalli -malliin tapauskohtaisesti päättelualgoritmi löytää datan aiheiden määrän sen sijaan, että se määritettäisiin mallin parametrina. selitys Dirichlet-prosessista löytyy täältä
Aihemallit lupaavat auttaa tiivistämään ja järjestämään suuria arkistoja teksteistä, joita ei voida helposti analysoida käsin Hierarkkinen Dirichlet-prosessi (HDP) on vahva sekajäsenet lonkkamalli ryhmittelemättömien tietojen valvomatonta analyysiä varten. Toisin kuin rajallinen vastine, piilevä Dirichlet-allokointi , HDP-aiheinen malli päättelee aiheiden määrän tiedoista.