Usando palavras de tópico geradas pelo LDA para representar um documento

8

Quero fazer a classificação do documento, representando cada documento como um conjunto de recursos. Eu sei que existem muitas maneiras: BOW, TFIDF, ...

Desejo usar a Alocação de Dirichlet Latente (LDA) para extrair as palavras-chave de tópico de CADA documento. o documento é representado por estas palavras de tópico. Mas não sei se isso é razoável, porque, na minha opinião, o LDA é geralmente usado para extrair as palavras de tópicos compartilhadas por um monte de documentos.

O LDA pode ser usado para detectar o tópico de UM ÚNICO documento?

Munichong
fonte

Respostas:

13

O LDA pode ser usado para detectar o tópico de UM ÚNICO documento?

Sim, em sua representação específica de 'tópico' e com um corpus de treinamento de documentos (geralmente relacionados).

O LDA representa tópicos como distribuições por palavras e documentos como distribuições por tópicos. Ou seja, um objetivo muito da LDA é chegar à representação probabilística de cada documento como um conjunto de tópicos. Por exemplo, a implementação do LDA em gensimpode retornar essa representação para qualquer documento.

Mas isso depende dos outros documentos do corpus: qualquer documento terá uma representação diferente se analisado como parte de um corpus diferente.

Isso normalmente não é considerado uma falha: a maioria dos aplicativos de LDA se concentra em documentos relacionados. O artigo que introduz a LDA o aplica a dois corpora, um dos artigos da Associated Press e um dos resumos de artigos científicos. A publicação bem acessível de Edwin Chen aplica a LDA a uma parcela de e-mails da época de Sarah Palin como governadora do Alasca.

Se seu aplicativo exigir a separação de documentos em classes conhecidas e mutuamente exclusivas, os tópicos derivados do LDA poderão ser usados ​​como recursos para classificação. De fato, o artigo inicial faz exatamente isso com o corpus AP, com bons resultados.

De maneira semelhante, a demonstração de Chen não classifica documentos em classes exclusivas, mas seus documentos concentram sua probabilidade principalmente em tópicos únicos da LDA. Como David Blei explica nesta videoconferência , os priores de Dirichlet podem ser escolhidos para favorecer a esparsidade. Mais simplesmente, "um documento é penalizado por usar muitos tópicos", como dizem os slides. Parece que o LDA mais próximo pode chegar a um único tópico não supervisionado, mas certamente não garante que todos os documentos sejam representados como tal.

Sean Easter
fonte
Obrigado pela sua resposta. Posso inserir um único documento, em vez de um conjunto de documentos, no LDA e usar as palavras de saída como o tópico do documento?
Munichong 12/09
Ao "inserir um único documento", você quer dizer "usar um conjunto de treinamento que consiste em um único documento"? Ou "extrair tópicos de um único documento fora de amostra usando um modelo treinado"?
Sean Easter
Quero dizer "use um conjunto de treinamento que consiste em um único documento" e especifique o número de tópicos de destino como 1, ou seja, extraia um tópico (um conjunto de palavras) do único documento de treinamento.
Munichong 12/09
Eu nunca tentei, então não posso confirmar positivamente como qualquer implementação trataria essa entrada. Porém, usar um único documento e um único tópico desafiaria certas suposições generativas do modelo. Você essencialmente presumiria que cada palavra no documento foi extraída de uma única distribuição multinomial; o posterior para seu parâmetro seria pouco mais que uma contagem normalizada de palavras no documento. Tudo isso para dizer, luto para ver como isso pode produzir resultados significativos. Seria como calcular tf-idf em um corpus de um: a estatística depende de características do corpus mais amplo.
9198 Sean Easter