Download - Apresentação Spam Filter

Transcript

MINERAÇÃO DE DADOSSPAM FILTER2012Sistemas de Suporte à Decisão

João Ferreira | Ernesto Barbosa | André Morgado

• Spam

• Definição

• Parser

• Dificuldades

• Características

• Atributos considerados

• Regras

• Fluxo

• Resultados

• J48

• Naive Bayes

• Regras de Associação

• ConclusõesJoão Ferreira | Ernesto Barbosa | André Morgado

Índice

SPAM

João Ferreira | Ernesto Barbosa | André Morgado

• Spam não é mais do que uma mensagem de correio

eletrónico não solicitada.

• A principal motivação para a prática do spamming é o

baixo custo associado ao envio de mensagens eletrônicas.

João Ferreira | Ernesto Barbosa | André Morgado

Spam - Definição

PARSER

João Ferreira | Ernesto Barbosa | André Morgado

• Como efetuar um Parser

• Quais atributos são necessários analisar

• Que regras aplicar a cada um para validar se é ou não spam

• Como criar o dataset para ser analisado no WEKA

João Ferreira | Ernesto Barbosa | André Morgado

Dificuldades

• O nosso parser utiliza expressões regulares para retirar dos

emails a informação que nós achamos necessária.

• Após retirar a informação, testa se a informação está conforme

algumas regras que definimos.

• Cada regra que não seja satisfeita, implica uma penalização

para esse email.

• Existe um valor máximo que um email não pode ultrapassar, de

modo a evitar ser considerado spam.João Ferreira | Ernesto Barbosa | André Morgado

Características

• Após avaliar todas as regras, ele posteriormente gera o

dataset de treino.

• Em seguida, utilizando o weka, classifica as instâncias

de um dataset de teste, segundo o que aprendeu.

• Todas as novas instâncias, são depois adicionadas ao

dataset de treino.

João Ferreira | Ernesto Barbosa | André Morgado

Características

• Message-ID

• From

• To

• Bcc

• Cc

• Número de total de contatos

• Número de contatos não repetidos

• Html

João Ferreira | Ernesto Barbosa | André Morgado

Atributos considerados

• No nosso projeto para considerarmos os emails como

spam tinham de ter algumas das seguintes

características:

• !To && (Bcc || Cc)

• Message-ID

• #To >10 || #Cc >10

• Body == HTML

• #Total Contactos > Contactos

• Assunto = “viagra”, “medicamentos”, “meds”, “porno”

• Assunto = “ ”

• From = “no-reply”

João Ferreira | Ernesto Barbosa | André Morgado

Regras

João Ferreira | Ernesto Barbosa | André Morgado

Fluxo de Sistema

Emails

RESULTADOS

João Ferreira | Ernesto Barbosa | André Morgado

João Ferreira | Ernesto Barbosa | André Morgado

J48

João Ferreira | Ernesto Barbosa | André Morgado

AdaBoostM1 + J48

João Ferreira | Ernesto Barbosa | André Morgado

Bagging + J48

João Ferreira | Ernesto Barbosa | André Morgado

NaiveBayes

João Ferreira | Ernesto Barbosa | André Morgado

Bagging + NaiveBayes

João Ferreira | Ernesto Barbosa | André Morgado

AdaBoostM1 + NaiveBayes

João Ferreira | Ernesto Barbosa | André Morgado

Regras

• Estas foram as regras de associação que o WEKA conseguiu retirar do

nosso dataset:

• To = true and #Contacts <= 7 -> Ham (108.0 / 8.0)

• Cc = false : Spam (17.0)

• To = false : Spam (8.0)

• #Contacts <= 25 : Ham (3.0)

• :Spam (2.0)

João Ferreira | Ernesto Barbosa | André Morgado

Part

João Ferreira | Ernesto Barbosa | André Morgado

Conclusões

• Foi um trabalho desafiante e interessante.

• Decidir quais os atributos a considerar foi maior problema na realização deste trabalho.

• Parser adaptado a um determinado formato de email.

• Regras de associação fracas devido ao seu pouco suporte.

MINERAÇÃO DE DADOSSPAM FILTER2012Sistemas de Suporte à Decisão

João Ferreira | Ernesto Barbosa | André Morgado