Latente Dirichlet-toewijzing (LDA) en Hiërarchisch Dirichlet-proces (HDP) zijn beide onderwerpmodelleringsprocessen. Het belangrijkste verschil is dat LDA de specificatie van het aantal onderwerpen vereist, en HDP niet. Waarom is dat zo? En wat zijn de verschillen, voor- en nadelen van beide methoden voor onderwerpmodellering?

Opmerkingen

  • Moet HDP gegevensgestuurd zijn met betrekking tot het aantal onderwerpen dat het zal selecteren? Praktisch gezien heb ik geprobeerd Blei ‘ s HDP-implementatie en het at al het geheugen op totdat ik het proces stopte. Ik heb 16GB RAM en iets meer dan 100K korte documenten om te analyseren.

Antwoord

HDP is een uitbreiding van LDA, ontworpen om het geval aan te pakken waarin het aantal mengselcomponenten (het aantal “onderwerpen” in termen van documentmodellering) niet a priori bekend is. Dus dat is de reden waarom er een verschil is.

Door LDA te gebruiken voor documentmodellering, behandelt men elk “onderwerp” als een verdeling van woorden in een bekend vocabulaire. Voor elk document wordt een mix van onderwerpen opgesteld uit een Dirichlet-distributie, a en dan is elk woord in het document een onafhankelijke tekening van dat mengsel (dat wil zeggen, een onderwerp selecteren en het vervolgens gebruiken om een woord te genereren).

Voor HDP (toegepast op documentmodellering) gebruikt men ook een Dirichlet-proces om de onzekerheid in het aantal onderwerpen vast te leggen. Er wordt dus een gemeenschappelijke basisdistributie geselecteerd die de aftelbaar-oneindige reeks mogelijke onderwerpen voor het corpus vertegenwoordigt, en vervolgens wordt de eindige verdeling van onderwerpen voor elk document uit deze basisdistributie bemonsterd.

Voor zover voors en nadelen heeft HDP het voordeel dat het maximale aantal onderwerpen onbegrensd kan zijn en van de gegevens kan worden geleerd in plaats van vooraf gespecificeerd. Ik veronderstel dat het echter ingewikkelder is om te implementeren en niet nodig is in het geval dat een beperkt aantal onderwerpen acceptabel is.

Antwoord

Anekdotisch ben ik nog nooit onder de indruk geweest van de output van hiërarchische LDA. Het lijkt gewoon geen optimaal niveau van granulariteit te vinden voor het kiezen van het aantal onderwerpen. Ik heb veel betere resultaten behaald door een paar iteraties van reguliere LDA uit te voeren, handmatig de onderwerpen te inspecteren die het heeft geproduceerd, te beslissen of ik het aantal onderwerpen wil verhogen of verlagen en door te gaan met herhalen totdat ik de granulariteit krijg waarnaar ik op zoek ben.

Onthoud: hiërarchische LDA kan je gedachten niet lezen … het weet niet waarvoor je de onderwerpmodellering eigenlijk wilt gebruiken. Net als bij k-means clustering, moet u de k kiezen die het meest logisch is voor uw gebruik.

Antwoord

Aangezien dit een van de tophits van Google voor dit onderwerp is, wilde ik erop wijzen dat Latent Dirichlet Allocation (LDA), Hierarchical Dirichlet Processes (HDP), en hiërarchical Latent Dirichlet Allocation (hLDA) zijn alle verschillende modellen.

LDA modelleert documenten als dirichlet-mengsels van een vast aantal onderwerpen – gekozen als een parameter van het model door de gebruiker – die op hun beurt dirichlet-mengsels van woorden zijn. Dit genereert een platte, zachte probabilistische clustering van termen in onderwerpen en documenten in onderwerpen.

HDP modelleert onderwerpen als mengsels van woorden, net als LDA, maar in plaats van dat documenten mengsels zijn van een vast aantal onderwerpen, wordt het aantal onderwerpen gegenereerd door een dirichletproces, wat resulteert in het aantal onderwerpen dat ook een willekeurige variabele. Het “hiërarchische” deel van de naam verwijst naar een ander niveau dat wordt toegevoegd aan het generatieve model (het dirichlet-proces dat het aantal onderwerpen produceert), niet de onderwerpen zelf – de onderwerpen zijn nog steeds platte clusters.

hLDA, aan de andere kant, is een aanpassing van LDA die onderwerpen modelleert als mengsels van een nieuw, duidelijk niveau van onderwerpen, ontleend aan dirichlet distributies en niet uit processen. Het behandelt het aantal onderwerpen nog steeds als een hyperparameter, d.w.z. onafhankelijk van de gegevens. Het verschil is dat de clustering nu hiërarchisch is: het leert een clustering van de eerste reeks onderwerpen zelf, waardoor een meer algemene, abstracte relatie tussen onderwerpen (en dus woorden en documenten) ontstaat. Zie het als het clusteren van de stack-uitwisselingen in wiskunde, wetenschap, programmeren, geschiedenis, enz., In tegenstelling tot het clusteren van datawetenschap en kruisvalidatie tot een abstract statistiek- en programmeeronderwerp dat enkele concepten deelt met bijvoorbeeld software-engineering, maar met software-engineering uitwisseling is op een meer concreet niveau geclusterd met de uitwisseling van informatica, en de gelijkenis tussen alle genoemde uitwisselingen verschijnt niet zo veel tot de bovenste laag van clusters.

Antwoord

Ik heb een situatie waarin HDP goed werkt in vergelijking met LDA. Ik heb ongeveer 16.000 documenten die tot verschillende klassen behoren.Omdat ik niet weet hoeveel verschillende onderwerpen ik voor elke klas kan verzamelen, is HDP in dit geval erg nuttig.

Antwoord

Eigenlijk vereist HDP veel verborgen parameters, die in code staan. Als je met dergelijke parameters speelt, krijg je verschillende resultaten (verschillende onderwerpen). Mensen letten meestal niet op zulke verborgen parameters en denken dat het model zulke parameters kan vinden. Het is niet waar. De gebruiker moet de parameters ‘eta’ ‘gamma’ en ‘alpha’ en een maximum aan onderwerpen definiëren. Als je het maximum aantal onderwerpen specificeert, zeg ongeveer 23 onderwerpen, dan levert je model 23 onderwerpen als uitvoer. Als je 15 onderwerpen instelt, krijg je 15 onderwerpen in de uitvoer….

Antwoord

Yee Whye Teh et al “s 2005 paper Hiërarchische Dirichlet-processen beschrijft een niet-parametrische prior voor gegroepeerde clusteringproblemen. Voor voorbeeld helpt de HDP bij het generaliseren van de Latente Dirichlet Allocation model naar het geval het aantal onderwerpen in de gegevens wordt ontdekt door het inferentie-algoritme in plaats van te worden gespecificeerd als een parameter van het model. Gedetailleerd uitleg over het Dirichlet-proces vindt u hier

Onderwerpmodellen beloven te helpen bij het samenvatten en ordenen van grote archieven van teksten die niet gemakkelijk met de hand kunnen worden geanalyseerd . Het Hiërarchisch Dirichlet-proces (HDP) is een krachtig gemengd lid heupmodel voor de ongecontroleerde analyse van gegroepeerde gegevens. In tegenstelling tot zijn eindige tegenhanger, latente Dirichlet-toewijzing , leidt het HDP-onderwerpmodel het aantal onderwerpen af uit de gegevens.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *