Wednesday, June 29, 2016

Text Mining - LDA

Palestra sobre Latent Dirichlet Allocation (LDA)


O material da palestra está disponível para download aqui. No diretório estão estes arquivos:
  • demolda.py
  • t2d.py
  • dilma.csv
  • vocabulario.xlsx
  •  black elipse.png
  • Text Mining.pptx
Para conseguir executar os scripts em Python voce deveria ter instalado o Anaconda 3 seguindo instruções de posts anteriores. 

Além disto você pode precisar de vários pacotes das bibliotecas do Python. Em particular instale o pacote de processamento de linguagem natural, NLTK:

>pip install nltk

Após instalar o nltk abra o IDLE e digite:

>> import nltk
>> nltk.download()

Após algum tempo aparece uma janela criada pelo próprio módulo nltk com muitas opções de módulos para download:


Selecione e baixe os itens book e all-corpus. Este segundo parece que trava no fim, pois alguns módulos finais estão "obsoletos". Se travar é só fechar o dialogo e reabrir outra vez.

Agora selecione a aba "corpora" e baixe tudo que não estiver marcado como já baixado. Faça o mesmo com a aba "Models", em particular baixe o modelo "rslp":


 Certifique-se que tem os módulos seguintes:

>pip install lda
>pip install PIL

Um último módulo é o pacote que desenha wordclouds. A versão que usei na palestra é um tanto antiga e mais difícil de baixar. No que segue assumo que sua máquina é de 64 bits. Siga estes passos:
  1. Baixe o arquivo wordcloud-1.2.1-cp35-cp35m-win_amd64.whl daqui.
  2. abra a janela de comando e execute
    >pip install caminho\para\wordcloud-1.2.1-cp35-cp35m-win_amd64.whl
 Isto deveria instalar o pacote wordcloud em sua máquina.


Finalmente uma observação: no workbook "vocabulario.xlsx" coloquei a lista de palavras do exemplo "dilma" e a matriz DTM correspondente. Entretanto acabei ordenando a lista de palavras para melhor estudar o resultado. Só que esta ordem não é mais a ordem de palavras nas colunas da matriz DTM!