classificacao de texto projeto spam filter ivan gesteira costa filho centro de informatica ufpe
TRANSCRIPT
![Page 1: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/1.jpg)
Classificacao de TextoProjeto Spam Filter
Ivan Gesteira Costa Filho
Centro de Informatica
UFPE
![Page 2: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/2.jpg)
Spam-Filter
Aprendizagem de maquina para fazer um filtro de Spam.
Tarefa: dado um email classificar como spam ou nao-spam
![Page 3: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/3.jpg)
Spam-Filter
Como distinguir spam de nao spam?
![Page 4: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/4.jpg)
Categorizacao de Texto
Criar uma base de dados Recolher emails e classificar-los como Spam ou
Nao-Spam. Criar uma representacao vetorial do texto
Tecnicas de processamento de texto (a seguir) Usar metodos de classificacao
Arvores de inducao, Aprendizagem Bayesiana, …
![Page 5: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/5.jpg)
Preparação dos documentos
Operações sobre o texto objetivo: criar a visão lógica do documento
Criação da representação do documento Utilizando algum modelo de RI
“Se o desonesto soubesse a vantagem de ser honesto, ele seria honesto ao menos por desonestidade.”
Sócrates
Doc original
desonesto / soubesse /vantagem / honesto /seria / honesto /menos/desonestidade/socrates
honesto 2desonesto 1soubesse 1vantagem 1seria 1menos 1desonestidade 1socrates 1
Visão LógicaRepresentação
Doc : www.filosofia.com Doc : www.filosofia.comDoc : www.filosofia.com
![Page 6: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/6.jpg)
Operações sobre o texto
Fases Análise léxica
Elimina dígitos, pontuação, etc Eliminação de stopwords
Artigos, pronomes, etc Operação de stemming
Redução da palavra ao seu radical …
![Page 7: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/7.jpg)
Operações sobre o textoAnálise léxica
Entrada O texto original
uma cadeia de caracteres
Objetivo Converter o texto original em uma lista de palavras Identificando as palavras e frequencia que ocorrem no
texto Procedimento padrão
Utilizar espaços como sendo separadores de palavras Tratar pontuação, hífens, dígitos, letras maiúsculas e
acentos. Cada caso pode requerer tratamentos diferenciados
![Page 8: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/8.jpg)
Operações sobre o textoEliminação de stopwords
Algumas palavras não são bons discriminadores Palavras muito freqüentas na base de documentos Palavras sem semântica associada
artigos, preposições, conjunções, alguns advérbios e adjetivos
Aqui também há exceções a considerar Em domínios específicos, podemos precisar
manter algumas dessas palavrasRedes de computadores
![Page 9: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/9.jpg)
Operações sobre o texto Stemming
Problema variação de uma mesma palavra aparece nos
documentos relevantes Ex., plural, gerúndio, verbos flexionados, aumentativo...
Objetivo dessa operação: Substituir a palavra por seu radical (stem)
Porção da palavra que resta após a remoção de prefixos e sufixos
Possibilitar casamento parcial entre variações de uma mesma palavra Ex.: engenheiro, engenheira, engenharia, …
![Page 10: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/10.jpg)
Exemplo Stemming
word stem
quiloquilométricasquilométricosquilômetroquilômetrosquilosquímicaquímicasquímicoquímicosquimioterapiaquimioterápicos
=>
quil quilométrquilométrquilômetrquilômetrquilquímicquímicquímicquímicquimioterapquimioteráp
![Page 11: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/11.jpg)
Representação do Documento
Dado um conjunto de documentos e palavras presentes. Cada documento (dj) é representado por termos da base
associados a pesos d1 = k1 (w1), k2 (w2),..., kn (wn)
Peso Importância da palavra para descrever o documento Quando o termo não aparece no documento, o peso associado é
zero
Cada modelo de recuperação define pesos de uma maneira diferente
![Page 12: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/12.jpg)
Representação de Documento Cálculo dos Pesos
Peso = freqüência de ocorrência do termo no documento
“Se o desonesto soubesse a vantagem de ser honesto, ele seria honesto ao menos por desonestidade.”
Sócrates
Doc original
desonesto / soubesse /vantagem / honesto /seria / honesto /menos/desonestidade/socrates
honesto 2desonesto 1soubesse 1vantagem 1seria 1menos 1desonestidade 1socrates 1
Operações de TextoRepresentação
Doc : www.filosofia.com Doc : www.filosofia.comDoc : www.filosofia.com
![Page 13: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/13.jpg)
Modelo Espaço Vetorial Cálculo dos Pesos
Método TF-IDF leva em consideração: Freqüência do termo no documento
Term Frequency (TF) Quanto maior, mais relevante é o termo para descrever o
documento Inverso da freqüência do termo entre os
documentos da coleção Inverse Document Frequency (IDF)
Termo que aparece em muitos documentos não é útil para distinguir relevância
Peso associado ao termo tenta balancear esses dois fatores
![Page 14: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/14.jpg)
dj: documento; ki:termo freqi,j: freqüência do termo ki no documento dj ni: número de documentos que contêm termo ki
N: número total de documentos da base maxl freql,j : a freqüência do termo mais freqüente no
documento
TF:
IDF:
Modelo Espaço Vetorial Cálculo dos Pesos com TF-IDF
Nni
idfi= log
Inverso da freqüência do termonos documentos da base
freqi,j
maxl freql,j
tfi,j=Freqüência (normalizada) do termo no documento
![Page 15: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/15.jpg)
Modelo Espaço Vetorial Cálculo dos Pesos com TF-IDF
wi,j = tfi,j x idfi
![Page 16: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/16.jpg)
Processamento de Texto e Representação
Criar uma base de dados com + de 200 emails pelo menos 100 spans.
Criar um parser em Java para criar representação de documentos Para fazer stop-word e stemming ver …
http://www.cin.ufpe.br/~igcf/si/BrazilianStemmer.java
Criar arquivo no formato Weka Palavras são atributos Vetor com TF-IDF são os exemplos
![Page 17: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/17.jpg)
Classificação
Usar os metodos do Weka Árvore de Inducao (J48) e Bayesiano Ingenuo
Realizar Validação-Cruzada 10-fold Arvores de indução
explorar efeitos de algoritmos de poda na acurácia Análise das regras geradas
Comparar resultado Naive x Árvores de Indução
![Page 18: Classificacao de Texto Projeto Spam Filter Ivan Gesteira Costa Filho Centro de Informatica UFPE](https://reader034.vdocuments.net/reader034/viewer/2022051111/552fc160497959413d8e9589/html5/thumbnails/18.jpg)
Projeto
Entregar relatório e (bases de dados) com Representação dos documentos. Descrição da base de dados Experimentos Realizados
Comparação da acurácia Naive X J48 Efeito de técnicas de poda no J48 Interpretação das Regras obtidas
Prazo 14/06 antes da meia noite Apresentação 15/06