Guida per principianti alla Latent Dirichlet Allocation(LDA)
La modellazione per argomenti è un metodo per la classificazione non supervisionata dei documenti, simile al clustering su dati numerici, che trova alcuni gruppi naturali di elementi (argomenti) anche quando non siamo sicuri di cosa stiamo cercando.
Un documento può far parte di più argomenti, un po’ come nel fuzzy clustering (soft clustering) in cui ogni punto dati appartiene a più di un cluster.
La modellazione per argomenti fornisce metodi per organizzare, comprendere, cercare e riassumere automaticamente grandi archivi elettronici. Può aiutare nei seguenti casi:
scoprire i temi nascosti nella collezione.
classificare i documenti nei temi scoperti.
utilizzare la classificazione per organizzare/sintetizzare/ricercare i documenti.
Per esempio, diciamo che un documento appartiene ai temi cibo, cani e salute. Quindi, se un utente interroga “cibo per cani”, potrebbe trovare il suddetto documento rilevante perché copre questi argomenti (tra gli altri argomenti). Siamo in grado di capire la sua rilevanza rispetto alla query senza nemmeno passare attraverso l’intero documento.
Quindi, annotando il documento, sulla base degli argomenti predetti dal metodo di modellazione, siamo in grado di ottimizzare il nostro processo di ricerca.
LDA
È uno dei metodi di modellazione di argomenti più popolari. Ogni documento è composto da varie parole, e ogni argomento ha anche varie parole che gli appartengono. Lo scopo di LDA è quello di trovare gli argomenti a cui un documento appartiene, basandosi sulle parole in esso contenute. Molto confuso? Ecco un esempio per spiegarvi come funziona.
Definizione modello
We have 5 documents each containing the words listed in front of them( ordered by frequency of occurrence).
What we want to figure out are the words in different topics, as shown in the table below. Each row in the table represents a different topic and each column a different word in the corpus. Each cell contains the probability that the word(column) belongs to the topic(row).
Finding Representative Words for a Topic
We can sort the words with respect to their probability score. Le migliori x parole sono scelte da ogni argomento per rappresentare l’argomento. Se x = 10, ordineremo tutte le parole dell’argomento1 in base al loro punteggio e prenderemo le prime 10 parole per rappresentare l’argomento. Questo passo potrebbe non essere sempre necessario perché se il corpus è piccolo possiamo memorizzare tutte le parole ordinate in base al loro punteggio.
In alternativa, possiamo impostare una soglia sul punteggio. Tutte le parole di un argomento che hanno un punteggio superiore alla soglia possono essere memorizzate come suo rappresentante, in ordine di punteggio.