2015-10-06 15 views
12

Ho letto che la tecnica più comune per la modellazione di argomenti (estraendo possibili argomenti dal testo) è Latent Dirichlet allocation (LDA).Utilizzo di Word2Vec per la modellazione di argomenti

Tuttavia, sono interessato se sia una buona idea provare la modellazione degli argomenti con Word2Vec in quanto raggruppa le parole nello spazio vettoriale. I gruppi non potrebbero quindi essere considerati argomenti?

Pensi che abbia senso seguire questo approccio per motivi di ricerca? Alla fine ciò che mi interessa è estrarre parole chiave dal testo in base agli argomenti.

+2

Ho provato qualcosa di recente.È possibile ottenere argomenti coerenti raggruppando i vettori Word2Vec (o GloVe): goo.gl/irZ5xI – duhaime

+0

È possibile farlo, ma non lo chiamerò modellazione degli argomenti. – jknappen

+0

@duhaime grazie per la tua risposta! Quello su cui stai lavorando è esattamente quello che sto cercando! Sapete per caso in che modo i cluster possono essere confrontati con argomenti estratti da, ad es. LDA? da quando sono nuovo a questo argomento sarei molto felice se potessi darmi parole chiave con cui posso trovare documenti di ricerca correlati – user1814735

risposta

0

In Word2Vec, considerare 3 frasi
“il cane ha visto un gatto”,
“il cane inseguito il gatto”,
“il gatto salito su un albero”
Qui diamo parola di ingresso 'gatto', quindi otterremo la parola di uscita come "scalata"

basata sulla probabilità di tutte le parole con parola di contesto (cat). È un modello continuo di parole. Otterremo parole simili alla parola di input in base al contesto. Word2Vec funziona bene solo in enormi quantità di dati.

LDA viene utilizzato per astrarre argomenti da un corpus. Non è basato sul contesto. Poiché utilizza la distribuzione di Dirichlet per disegnare parole su argomenti e disegnare argomenti su documenti. Il problema che affrontiamo qui è la casualità. Riceviamo diversi output ogni volta.

La tecnica che scegliamo dipende dalle nostre esigenze.

+0

È possibile controllare la casualità in LDA impostando un seme casuale (ad esempio con un martello). Questo ti dà risultati replicabili. Non cambia il fatto che diversi semi casuali danno diversi modelli di argomento. – jknappen

+0

ok.ho implementato in python (gensim). Ho fatto un'iterazione di 20 volte e ho preso un incrocio di tutti gli argomenti di output. Teoricamente, secondo la distribuzione di Dirichlet, l'output è casuale ogni volta. Non ho usato la mazza in java. Grazie a @jknappen per l'informazione. –

3

Due persone hanno provato a risolvere questo problema.

Chris Moody presso StichFix è uscito con LDA2Vec, e alcuni studenti di dottorato presso la CMU hanno scritto un documento intitolato "LDA gaussiana per modelli di argomento con Word Embeddings" con code here ... anche se non ho potuto ottenere il codice Java lì per produrre risultati sensoriali. È un'idea interessante dell'uso di word2vec con distribuzioni di argomenti di parole gaussiane (in realtà distribuzioni T quando si risolve la matematica). LDA gaussiana dovrebbe essere in grado di gestire le parole del vocabolario della formazione.

LDA2Vec tenta di addestrare contemporaneamente sia il modello LDA che i vettori di parole e consente inoltre di inserire i priori di LDA su non parole per ottenere risultati davvero interessanti.

8

Si potrebbe desiderare di guardare i seguenti documenti:

Dat Nguyen Quoc, Richard Billingsley, Lan Du e Mark Johnson. 2015. Improving Topic Models with Latent Feature Word Representations. Transazioni dell'Associazione per la linguistica computazionale, vol. 3, pp. 299-313. [CODE]

Yang Liu, Zhiyuan Liu, Tat-Seng Chua, Maosong Sun. 2015. Topical Word Embeddings. Nei lavori della 29a Conferenza AAAI sull'intelligenza artificiale, 2418-2424. [CODE]

Il primo documento integra gli embeddings di parole nel modello LDA e nel modello DMM one-topic-per-document. Segnala miglioramenti significativi sulla coerenza degli argomenti, il clustering dei documenti e le attività di classificazione dei documenti, in particolare su piccoli corpora o testi brevi (ad esempio, i tweet).

Anche il secondo documento è interessante. Usa LDA per assegnare un argomento per ogni parola, quindi utilizza Word2Vec per imparare gli embeddings basati su parole e argomenti.

Problemi correlati