Exercício 6 (versão 2)

Data de entrega 20/5 em aula

O exercicio pode ser entregue ate 22/5 em aula, sem penalidade.

Este exercicio sera um problema de classificação de texto, em multiplas classes. Nós vamos utilizar um subconjunto do dataset 20newsgroup disponivel aqui. Cada diretorio é o nome de uma classe e inclui os arquivos de texto da classe.

Separe cada uma das 8 classes em um grupo de treino com 60% dos dados e o de teste com 40%.

Faca o preprocessamento padrão para textos: elimine pontuação, converta para minusculas, remova números e cadeias que incluam números, e remova as stop words tradicionais para o ingles. Remova tambem os headers (e talvez footers) dos emails.

Faça o stemming das palavras

  1. Usando a representação 0/1 (palavra presente e ausente) treine o Naive Bayes no conjunto de treino e verifique a taxa de acerto no conjunto de teste. No sklearn esse é o Bernulli Naive Bayes.
  2. Usando a representacao TFIDF, verifique a taxa de acerto de um (conjunto de) SVM RBF (para o intervalo usual de hiperparametros), no modo um-versus-um (OVO) e no modo um-versus-todos (OVA).
  3. Usando a representacao TFIDF, e a representação TF, usando a similaridade do cosseno como métrica de similaridade, e uma redução de dimensionalidade com PCA, verifique a taxa de acerto de um KNN (com o interval apropriado de hiperparametros).

Atenção: este exercicio esta sub-especificado. Eu nào especifico várias coisas - voce deve fazer pressuposições, tomar decisòes por si só neste exercicio. Apenas deixe claro no relatório que decisòes voce tomou.