• Non ci sono risultati.

Topic Models: Latent Dirichlet Allocation

Capitolo 2: L’analisi testuale

2.6 Topic Models: Latent Dirichlet Allocation

Le tecniche di Topic Modeling (Blei et al., 2003) sono una serie di metodi di analisi testuale che ricercano le strutture tematiche nascoste all’interno di un corpus di documenti e raggruppano i documenti in base al loro argomento principale. Una delle principali metodologie di topic modeling è Latent Dirichlet Allocation (LDA), dove si suppone esista un modello statistico basato sulla distribuzione di Dirichlet attraverso il quale ogni testo risulta essere composto da una mistura di argomenti latenti (topic) a cui viene associata una sequenza di parole. Ognuno di questi topic è una distribuzione multinomiale sulle parole, quest’ultime

22 Analisi integrale disponibile qui: http://www.ilsole24ore.com/art/tecnologie/2012-03-10/nuovo-ipad-cosa- dice-093953.shtml?uuid=AbvOGa5E.

36

raggruppate in un vocabolario definito in precedenza sulla base dei testi analizzati: le parole con probabilità più alta forniscono un’idea dei temi trattati nel corpus di documenti. In altre parole, si assume che vi sia una distribuzione di topic nel corpus di documenti e ad ogni topic è associata una sequenza di parole. L’analisi LDA perciò, presuppone un processo di generazione del testo in due stadi: prima si sceglie il topic e poi si sceglie un gruppo di parole per discutere quel certo topic.

In Figura 2.3 vediamo come un generico testo può essere composto da vari topic, a cui sono associate parole specifiche di un vocabolario definito in precedenza sulla base dei testi pre- processati e analizzati. In particolare, nella colonna a sinistra sono riportati gruppi di parole con la probabilità più alta di appartenere ad un dato topic, fornendo così un’idea del tema trattato nel topic stesso; un documento/testo perciò risulta essere costruito mettendo insieme più topic. In genere, si assume che ciascun testo sia ottenuto scegliendo prima un topic e solo successivamente un gruppo di parole per discutere il topic scelto. A questo punto, utilizzando tecniche di statistica Bayesiana per la stima delle due distribuzioni relative ai topic e alle parole, si può stimare sulla base delle parole presenti in un testo, la probabilità che ciascun documento sia attribuito ad uno o più topic.

Figura 2.3: Esempio di topic model. Fonte: Blei, D.M. (2012)

Nel tempo sono stati proposti diversi modelli per l’analisi delle informazioni contenute nei testi ed il significato delle parole; tutti hanno in comune il presupposto fondamentale che un

37

documento è composto da una mistura di argomenti, ma si differenziano per alcune assunzioni statistiche sui moduli generatori dei dati.

Abbiamo definito la Latent Dirichlet Allocation come un modello che rappresenta ogni documento come una mistura di topic, dove ogni topic assume una distribuzione multinomiale sulle parole del vocabolario, perciò ogni documento del corpus è composto da un insieme di parole (“bag of word”) generate da un insieme di topics

In Figura 2.4 vediamo rappresentato graficamente il modello LDA, dove M rappresenta il numero di documenti e N il numero di parole nei documenti. Mentre α e β rappresentano rispettivamente la distribuzione di Dirichlet di un topic per ogni documento e di una parola per ogni argomento (sono parametri a livello di corpus). Ogni parola è rappresentata dalla variabile w con distribuzione multinomiale, ogni topic è rappresentato dalla variabile z con distribuzione multinomiale e un documento è rappresentato dalla variabile θ con distribuzione di Dirichlet.

Figura 2.4: modello grafico per LDA model. Fonte: http://www.jmlr.org/papers/volume3/blei03a

Possiamo vedere LDA anche attraverso una rappresentazione geometrica, come mostrato in Figura 2.5. La Figura considera un caso di tre parole e tre topic: ogni vertice rappresenta una parola, perciò nei vertici abbiamo una distribuzione che assegna probabilità 1 al termine corrispondente e probabilità 0 a tutti gli altri; ogni vertice del triangolo interno rappresenta un topic. Infine, i documenti sono rappresentati dalle curve di livello all’interno del simplesso dei topic.

38

Figura 2.5: rappresentazione grafica LDA. Fonte: http://www.jmlr.org/papers/volume3/blei03a

Riportiamo ora un semplice esempio per capire il funzionamento dell’approccio LDA. Supponiamo di avere due topic di base, topic A e topic B, che parlano rispettivamente dell’argomento animali e dell’argomento cibo. Ad ogni topic viene associato un insieme di parole inerenti all’argomento, come riportato nella tabella sottostante.

TOPIC A (animali) TOPIC B (cibo)

Animali Cane Gatto Pesce Miagolare Abbaiare ….. Carne Verdura Formaggio Cena Pranzo Mangiare …..

A questo punto consideriamo tre frasi contenti le parole che abbiamo sopra elencato (le frasi sono state costruite ad hoc per questo esempio, per cercare di spiegare nel modo più chiaro possibile come funziona la LDA):

39

1) Io mangio carne e pesce 2) Il pesce è un animale 3) Il mio gatto mangia i pesci

L’algoritmo analizza il contenuto delle frasi e ad ogni parola associa l’appartenenza ad uno dei due topic, A o B. Se una frase ha molti termini che richiamano un certo topic è molto probabile che appartenga proprio a quell’argomento. Nell’esempio:

1) “mangio” e “carne” appartengono al topic B, “pesce” è sia nel topic A che nel B. Vengono eliminate le stop-word “Io” ed “e”. Si sta parlando al 100% dell’argomento cibo (topic B); 2) “pesce” e “animale” appartengono al topic A, ma pesce può appartenere anche al topic B. Tale relazione si può escludere perché la frase ha già una relazione al 100% con l’argomento animali (topic A). Vengono eliminate le stop-word “Il”, “è” ed “un”;

3) “gatto” appartiene al topic A, “mangia” appartiene al topic B, “pesce” appartiene al topic A e B. In questo caso non c’è una relazione certa con un topic, perciò la frase ha un legame al 50% con il topic A e 50% con il topic B. Vengono eliminate le stop-word “Il”, “mio” ed “i”.