Clasificador Naive Bayes para Filtrar Correo Electrónico

8

Click here to load reader

Transcript of Clasificador Naive Bayes para Filtrar Correo Electrónico

Page 1: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 1

Algoritmos de Clasificación: Comparación delAlgoritmo Naive Bayes con Otras MetodologíasPara la Clasificación de Correo Electrónico No

DeseadoPablo Antonio Alvarado Ruiz [email protected]

Abstract—En la actualidad el correo electrónico se ha conver-tido en una de las herramientas mas importantes y utilizadaspara enviar y recibir información, tanto para las empresas comopara los usuario comunes. Lamentablemente al correo electrónicotambién se lo ha utilizado para enviar información que no esdel interes de muchos usuarios, información que es conocidacomo correo basura o correo electrónico no deseado. Es poresto, que en este artículo se presenta una introducción a lo quese conoce como correo electrónico no deseado y algunos conceptosde aprendizaje automático, además se presenta las técnicas quehan sido aplicadas en el campo de la inteligencia artificial paraevitar el problema del correo electrónico no deseado. Tambiénse propone una solución utilizando el clasificador Naive Bayes,y se presenta una comparación con las demás técnicas. Ademásse presentan algunos trabajos relacionados que han ayudado ala clasificación del correo electrónico para diferenciar el correoelectrónico legítimo del correo electrónico no deseado.

Index Terms—Red Bayesiana, Aprendizaje Automático, Spam,Clasificador Naive Bayes, Clasificador J48, Clasificador IBk,Clasificador ADTree

I. INTRODUCCIÓN

COMO se menciono, en la actualidad el correo electrónicose ha convertido en uno de los canales de comunicación

más importantes tanto para las empresas como para los usuar-ios comunes, y es por esto que es muy utilizado para elnegocio electrónico publicitario. Como se dice en [1], el correoelectrónico es un medio de comunicación eficiente y cada vezmás popular. Al ser extremadamente económico y facil deenviar, es tambien un negocio para el comercio electronico.

Por esta razón, la mayoria de empresas ha utilizado el correoelectrónico para enviar información de sus productos quegeneralmente no es del interes de la mayoria de los usuarios.Esta información es conocida como correo electronico nodeseado o spam.

Como se dice en [2], spam es el termino que se empleacomúnmente para designar el correo electrónico no solicitadoque se envia a través de internet. La información que se enviaatravés de este tipo de correo generalmente es para ofrecerproductos o promociones, además de contenido pornográfico.Como se menciona en [3], el contenido de un mensaje spames variopinto, pero siempre dentro de los mismos márgenes:ofertas de cualquier tipo de producto, ofertas para hacersericos en poco tiempo, y sobre todo, conteido pornográfico.

Your name is with xyz Department. . .

Esto es muy perjudicial para los usuarios, ya que sus buzonesde entrada comienzan a llenarse de información que ellos nohan solicitado y pierden mucho tiempo en tratar de identificarsi los correos que les llegan son legitimos o correo spam.

Por esta razón dentro del campo de la Inteligencia Artificial,se han tomado medidas para poder analizar dicho contenidode los mensajes aplicando técnicas de aprendizaje automáticoy de esta manera clasificarlos como correo legítimo o correono deseado.

Para solucionar el problema del correo electrónico no de-seado se pueden utilizar una gran variedad de algoritmos declasificación. Como se menciona en [15], los algoritmos deaprendizaje son usados en numerosos ambitos y las métricasde rendimiento son apropiadas para cada dominio. En estainvestigación se utilizará el algoritmo de clasificación NaiveBayes que esta enmarcado dentro de los metodos bayesianos.

Los métodos bayesianos son de gran importancia porqueno solamente ofrecen un análisis cualitativo de los atributosy valores que pueden intervenir en el problema, sino porquedan gran importancia al análisis cuantivativo de esos atributos.Como se menciona en [12], entre las caracteristicas que poseenlos métodos bayesianos en tareas de aprendizaje se puedenresaltar las siguientes

• Cada ejemplo observado va a modificar la probabilidadde que la hipótesis formulada sea correcta ya sea aumen-tandola o disminuyendola. Es decir, una hipótesis que noconcuerda con un conjunto de ejemplos más o menosgrande no es desechada por completo sino que lo queharán será disminuir esa probabilidad estimada para lahipótesis.

• Estos métodos son robustos al posible ruido presentes enlos ejemplos de entrenamiento y a la posibilidad de tenerentre esos ejemplos de entrenamiento datos incompletoso posiblemente erróneos.

• Los métodos bayesianos permiten tener en cuenta enla predicción de la hipótesis el conocimiento a priorio el conocimiento del dominio en forma de probabili-dades. El problema puede surgir al tener que estimar eseconocimiento estadístico sin disponer de datos suficientes.

II. ESTADO DEL ARTE

A. Redes BayesianaLas redes bayesianas formalemente son gráficos acíclicos

dirigidos, cuyos nodos representan variables y los arcos que

Page 2: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 2

los unen representan dependencias entre las variables. Laestructura de una red Bayesiana provee información sobrelas relaciones de dependencia e independencia condicionalexistentes entre las variables. Estas relaciones simplifican larepresentación de la función de probabilidad conjunta comoel producto de las funciones de probabilidad condicional decada variable [16].

Por tanto, el proceso de estimación de una red Bayesianaconsiste de una etapa de aprendizaje estructural y una etapade aprendizaje paramétrico[17]. La primera etapa consiste enobtener la estructura de una red y la segunda etapa consisteen estimar los parámetros de las funciones de probabilidadcondicional.

B. Aprendizaje Automático

El aprendizaje automático se refiere a la capacidad que seles da a las computadoras de poder resolver problemas por sisolas y poder conseguir los mismos o mejores resultados quesi lo haria un operador humano. Segun [4], para conseguir estoprimero debemos ser capaces de indicarle al computador dedonde debe aprender, cual es el objetivo que tiene que cumplir,y que tipo de resultado esperamos que nos ofrezca. Por lotanto esto nos lleva a decir que el aprendizaje automático esun proceso de inducción y deducción y el proceso se lo realizacomo se muestra en la figura 1.

Figure 1. Proceso de inducción y deducción. [4]

Como podemos observar en la Figura 1, el primer pasoa seguir dentro de este modelo es entrenar a la maquinamediante ejemplos y para esto se deben aplicar los algorit-mos de aprendizaje automático para obtener un modelo declasificación y optimización. Finalmente los nuevos casos,son comparados con el modelo resultante y deacuerdo a esose los van clasificando en una categoria específica segúncorresponda.

Un aspecto importante en el aprendizaje inductivo es el deobtener un modelo que represente el dominio de conocimientoy que sea acceible para el usuario, en particular, resulta impor-tante obtener la información de dependencia entre las variablesinvolucradas en el fenómeno, en los sistemas en donde sedesea predecir el comportamiento de algunas variables de-sconocidas basados en otras conocidas; una representación del

conocimiento que es capaz de capturar esta información sobrelas dependencias entre las variables son las redes bayesianas.

C. Clasificador Naive BayesEl clasificador de Naive Bayes es un clasificador probabilís-

tico basado en el teorema de Bayes. Desde la perspectiva delaprendizaje automático, el problema del correo electrónico nodeseado puede ser tratado como un problema de clasificaciónbinaria, es decir cuando el correo electrónico es clasificadocomo legítimo, es considerado como una instancia negativa (-) y cuando el correo eletrónico es clasificado como spam o nodeseado, es considerado como una instancia positiva (+) [10].

A continuación se presenta el teorema de Bayes en laecuación 1 [11].

P (h|D) =P (D|h)P (h)

P (D)(1)

Donde:• P (h) es la probabilidad a priori de la hipotesis h.• P (D)es la probabilidad de observar el conjunto de en-

trenamiento D, cuando es usado para clasificar.• P (D|h) es la probabilidad de observar el conjunto de

entrenamiento D en un universo donde se verifica lahipótesis h.

• P (h|D) es la probabilidad a posteriori de h, cuando seha observado el conjunto de entrenamiento D.

Se puede apreciar en la formulación del teorema que:• La probabilidad a posteriori de h, que en el caso del

problema del correo electrónico seria la probabilidad declasificar un nuevo correo como legítmo o spam, obser-vando el conjunto de entrenamiento D, es directamenteproporcional a la probabilidad de que se de h (P (h)).

• La probabilidad a posteriori de h es también directamenteproporcional a la probabilidad de que se de el conjuntode entrenamiento D, siendo correcta (P (D|h)).

El aprendizaje bayesiano puede verse como el proceso deencontrar la hipótesis más probable, dado un conjunto deejemplos de entrenamiento D y un conocimiento a priori sobrela probabilidad de cada hipótesis [12]. En la ecuación 2 semuestra el cálculo de la hipótesis con mayor probabilidad aposteriori.

hMAP = argmaxhεHP (D|h) P (h)

P (D)(2)

En donde D son los datos de entrenamiento y h cada unade las hipótesis, en este caso correos electrónicos que se tieneque clasificar. El subindice MAP es el Maximo Posteriori. Esdecir, se clasifica la instancia como aquella que tiene máximaprobabilidad a posteriori.

Lamentablemente el cálculo de esta ecuación no se la puedetomar para un número suficientemente grande de ejemplos, porlo que es necesario simplificar la ecuación como se muestraen la ecuación 3.

P (a1, a2, .....an|vj) = ΠiP (ai|vj) (3)

Donde vj , son cada una de las clases que se queire clasificary ai son los valores de los datos con lo que se clasificará.

Page 3: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 3

D. Clasificador J48

El algoritmo J48, es una versión del algoritmo de árboles dedecisión C4.5. Los árboles de decisión estan ubicados dentrode los métodos de clasificación supervisada, es decir, se tieneuna variable dependiente o clase, y el objetivo del clasificadores determinar el valor de dicha clase para casos nuevos.

El proceso de construcción del árbol comienza por el nodoraiz, el que tiene asociados todos los ejemplos o casos deentrenamiento. Lo primero es seleccionar la variable o atributoa partir de la cual se va a dividir la muestra de entrenamientooriginal (nodo raíz), buscando que en los subconjuntos gen-erados haya una mínima variabilidad respecto a la clase. Esteproceso es recursivo, es decir, una vez que se haya determinadola variable con la que se obtiene la mayor homogeneidadrespecto a la clase en los nodos hijo, se vuelve a realizarel análisis para cada uno de los nodos hijos. Aunque en ellímite este proceso se detendría cuando todos los nodos hojascontuvieran casos de una misma clase, no siempre se deseallegar a este extremo, para lo cual se implementan métodosde prepoda y post-poda de los árboles.

El algoritmo J48 amplia las funcionalidades del C4.5, talescomo permitir la realización del proceso de post-poda delárbol mediante un método basado en la reducción del error(reducedErrorPruning) o que las divisiones sobre las vari-ables discretas sean siempre binarias (binarySplits). Algunaspropiedades concretas de la implementación son las siguientes:

• Admite atributos simbólicos y numéricos, aunque la clasedebe ser simbólica.

• Se permiten ejemplos con valores desconocidos.• El criterio de división está basado en la entropía y la

ganancia de información.

E. Clasificador IBk

En weka algoritmo IBk es el algoritmo KNN basado enel algoritmo del vecino más cercano. KNN es un métodode clasificación supervisada, que es utilizado para estimar lafunción de densidad F (x|Cj)de las predictoras xpor cadaclase Cj . Por medio de esta regla, la clase asignada a unnuevo caso x será la clae más votada entre los K vecinos máspróximos del conjunto de entrenamiento. Como se mencionaen [4] la principal ventaja de la regla KNN con respecto a laregla NN radica en que, al utilizar varios vecinos en lugar deuno sólo para la clasificación de un nuevo caso, se aprovechade una forma más eficiente la información que se puede extraerdel conjunto de entrenamiento.

F. Clasificador ADTree

ADTree (Alternating Decision Tree) que significa árbol dedecisión alternativo; es un método de aprendizaje automáticoutilizado para clasificación. Las estructuras de datos y elalgoritmo son una generalización de los árboles de decisión.

ADTree consiste en nodos de decisión y predicción. Nodosde Decisión especifican una condición determinante. Nodos depredicción contienen un número único. Los árboles de decisiónalterna siempre tienen nodos de predicción como las raicesy hojas. Una instancia se clasifica por un ADTree siguiendo

todos los caminos para los cuales los nodos de decisión sonverdaderos y sumando todos los nodos de predicción que sereconocen. Esto es diferente de los árboles de clasificaciónbinarios como CART o C4.5, en los cuales una instancia siguesolo un camino a través del árbol.

Las entradas para el algoritmo de decisión alterna son:• Un conjunto de entradas (x1, y1) , ......, (xm, ym)donde

xies un vector de atributos y yies -1 ó 1. Las entradasson también llamadas instancias.

• Un conjunto de pesos correspondientes a cada instancia.

III. MOTIVACIÓN

La creciente demanda de usuarios de correo electrónico yel envio masivo de estos por parte de las empresas me motivapara realizar esta investigación, ya que es posible aplicar laInteligenciar Artificial, especificamente las técnicas de apren-dizaje automático para mitigar este problema. Cabe indicar,que la clasificación de correos electrónicos no siempre tendráuna precisión del 100% y por esta razón los clasificadores decorreo electrónico que existen en la actualidad en la mayorparte de los clientes de correo electrónico como hotmail,yahoo, etc., estan siempre sujetos a errores y a clasificarcorreos legítimos como no desaeados o viceversa.

IV. TRABAJOS RELACIONADOS

A continuación se presentan algunas investigaciones rela-cionadas con este articulo. Cabe indicar que en algunostrabajos se proponen distintas técnicas de clasificación parael problema del correo electrónico no deseado.

1) [5] En este artículo se propone encontrar un metodo defiltrado de spam eficiente usando una ontología adapta-tiva. Además se hacen comparaciones de la clasificaciónde emails utilizando redes neuronales, máquinas de vec-tor soporte, el clasificador de naive bayes y finalmenteel clasificador J48. A continuación los cuatro métodosde clasificación fueron evaluados en diferentes datasetscon diferentes atributos. Finalmente el mejor métodode clasificación se obtuvo de los conjuntos de datosde entrenameitno. 4500 emails fueron usados comoentrenamiento, de los cuales el 38.1% del dataset sonspam y el 61.9% son correo legitimo.

2) [6] En este artículo se trata el problema del aprendizajepara la clasificación de textos, explotando la informaciónderivada a través de datos de entrenamiento y pruebas.Para realizar esto se utiliza clustering como un paso parala clasificación y que es aplicada para el conjunto deentreamiento y el conjunto de pruebas.

3) [7] En este articulo se sugiere soluciones para la uti-lización de técnicas automatizadas de clasificación parafiltrar el correo electrónico personal. Además tambiénse presenta un sistema de filtrado llamado “ifile”, que esefectivo y eficiente, y el cual ha sido adaptado para serutilizado por un popular cliente de correo electrónico.Además se presentan los resultados de una serie deexperimentos y de esta manera demostrar que un sistemade filtrado como “ifile” podria convertirse en una parteútil y valioso de cualquier cliente de correo electrónico.

Page 4: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 4

4) [8] En este articulo se propone una estrategia de gráficobasado en la minería para la clasificación de correoelectrónico. El enfoque de este articulo se basa en quese pueden extraer patrones recurrentes de una carpetade correos pre-clasificados y los mismos pueden serusados efectivamente para clasificar los mensajes decorreo entrantes. Además se compará este enfoque conel clasificador de Naive Bayes.

5) [9] En este articulo se investiga la actuación de dosalgoritmos de aprendizaje automático en el contexto defiltrado antispam. Los algoritmos de clasificación uti-lizados para la investigación son el de Naive Bayes paracalcular la probabilidad de que un email se clasifiquecomo legitimo o spam y un algoritmo de clasificaciónbasado en memoria, en el cual la caracteristica principales que almacena todas las instancias de entrenamientoen una estructura de memoria y se la utiliza directamentepara la clasificación.

6) [14] En este articulo se investiga la aplicación de losalgoritmos de clasificación de aprendizaje automático,en especial el clasificador Niave Bayes aplicados alos filtradores de spam. Además se propone aplicarun clasificador de texto utilizando Naive Bayes comoclasificador, para clasificar un conjunto de datos deprueba real.

V. APORTE PERSONAL

Como aporte personal y con relación a los trabajos rela-cionados, yo propongo en este articulo hacer un estudio de lastécnicas de clasificación especificamente el clasificador naivebayes aplicado al filtrado de correo electrónico. Además deconstruir un pequeño agente clasificador de correo electrónico,el cual podría ayudar a mitigar en gran medida este problema ycompararlo con otras técnicas de clasificación para demostrarsu efectividad.

VI. METODOLOGÍA

Como metodologia, se ha desarrollado un sistema clasifi-cador de correo electrónico utilizando como lenguaje de pro-gramación Java y las librerias de Weka para hacer el respectivoanálisis. Como dice en [13]; WEKA es una colección dealgortimos de aprendizaje automático para tareas de mineriade datos. Como base de entrenamiento se utilizo un dataseto conjunto de datos público llamado spambase. Spambase esun dataset que contiene un número de 4601 instancias, de lascuales el 39.4% esta clasificada como spam. Además cuentacon un número de 58 atributos, de los cuales 57 son continuosy 1 es nominal y representa la clasificación de la clase, en lacual 1 representa spam y 0 como no spam. A continuación semuestra la definición de los atributos como estan en el archivooriginal del DataSet:

• 48 continuous real [0,100] attributes of typeword_freq_WORD = percentage of words in the e-mail that match WORD, i.e. 100 * (number of timesthe WORD appears in the e-mail) / total number ofwords in e-mail. A "word" in this case is any string of

alphanumeric characters bounded by non-alphanumericcharacters or end-of-string.

• 6 continuous real [0,100] attributes of typechar_freq_CHAR = percentage of characters in thee-mail that match CHAR, i.e. 100 * (number of CHARoccurences) / total characters in e-mail.

• 1 continuous real [1,...] attribute of type capi-tal_run_length_average = average length of uninterruptedsequences of capital letters.

• 1 continuous integer [1,...] attribute of type capi-tal_run_length_longest = length of longest uninterruptedsequence of capital letters.

• 1 continuous integer [1,...] attribute of type capi-tal_run_length_total = sum of length of uninterruptedsequences of capital letters = total number of capitalletters in the e-mail.

• 1 nominal {0,1} class attribute of type spam = denoteswhether the e-mail was considered spam (1) or not (0),i.e. unsolicited commercial e-mail.

A continuación se presenta una muestra de 10 instancias delconjunto de datos que servirá para realizar el entrenamiento delclasificador. De las cuales cinco son clasificadas como spam(1) y cinco como correo legítimo (0).

@data0,0.64,0.64,0,0.32,0,0,0,0,0,0,0.64,0,0,0,0.32,0,1.29,1.93,0,0.96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.778,0,0,3.756,61,278,10.21,0.28,0.5,0,0.14,0.28,0.21,0.07,0,0.94,0.21,0.79,0.65,0.21,0.14,0.14,0.07,0.28,3.47,0,1.59,0,0.43,0.43,0,0,0,0,0,0,0,0,0,0,0,0,0.07,0,0,0,0,0,0,0,0,0,0,0,0,0.132,0,0.372,0.18,0.048,5.114,101,1028,10.06,0,0.71,0,1.23,0.19,0.19,0.12,0.64,0.25,0.38,0.45,0.12,0,1.75,0.06,0.06,1.03,1.36,0.32,0.51,0,1.16,0.06,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.06,0,0,0.12,0,0.06,0.06,0,0,0.01,0.143,0,0.276,0.184,0.01,9.821,485,2259,10,0,0,0,0.63,0,0.31,0.63,0.31,0.63,0.31,0.31,0.31,0,0,0.31,0,0,3.18,0,0.31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.137,0,0.137,0,0,3.537,40,191,10,0,0,0,0.63,0,0.31,0.63,0.31,0.63,0.31,0.31,0.31,0,0,0.31,0,0,3.18,0,0.31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.135,0,0.135,0,0,3.537,40,191,10.23,0,0.46,0,0,0,0,0.23,0,0.23,0,0,0,0,0,0,0,0,3.69,0,0.69,0,0,0,1.84,0.23,0,0,0,0.23,0,0,0,0,0,0,0.23,0,0,0,0,0,0,0,0,0,0,0,0,0.253,0,0,0.031,0,2.016,19,244,00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9.52,4.76,4.76,4.76,4.76,4.76,4.76,4.76,0,4.76,4.76,4.76,0,0,0,4.76,0,0,0,0,0,0,0,0,0,1.257,0,0,0,0,3.333,11,30,00,0,0,0,0,0,0,0,0,0,0,0.33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.11,0,0,0.22,0,0,0.33,0.11,0,0,0,0,0.11,0,0,0,0,0,0,0.053,0.16,0,0,0,0,2.367,24,651,00.23,0,0.23,0,1.17,0,0,0,0,0,0,1.41,0,0,0,0,0.11,0,0.47,0,0.7,0,0.11,0,1.29,0.11,0,0,0.11,0.23,0,0,0,0,0,0,0.11,0,0,0,0,0.11,0,0,0.23,0,0,0,0,0.015,0,0,0,0.015,1.486,7,162,00,0.51,0,0,1.02,0,0,0.51,0,0,0,0,0,0,0,0.51,0.51,0,0.51,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.51,0,0,0,0.51,0,0,0,0.51,0,0,0,0,0,0.071,0,0,0,0,2.076,9,108,0Para realizar todo el proceso de clasificación, se ha realizado

un sistema clasificador de correos electrónicos. El sistema esta

Page 5: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 5

desarrollado bajo la plataforma Java, utilizando las librerias deweka para el proceso de entrenamiento y testeo del conjuntode datos o dataset.

En la figura 2 se muestra la pantalla principal del sistemapara realizar el proceso de clasificación.

Figure 2. Sistema Clasificador de Correos electrónicos

Para realizar la clasificación, primeramente se debe cargarun archivo que contiene el conjunto de datos. Esto se lopuede hacer haciendo click en el boton “Cargar” del agenteclasificador. Luego de ello se activará el boton “ENTRE-NAMIENTO”. Al hacer click en dicho botón, el sistemacomenzara a construir el modelo de clasificación y arroja losresultados en el cuadro de texto “Resultado de Entrenamiento”.Una vez finalizado el entrenamiento podremos seleccionar unconjunto de instancias para clasificarlas ya sea como correoelectrónico legítimo o correo electrónico no deseado. Para ellodebemos hacer click en el boton “Cargar” del cuadro de texto“Cargar datos de prueba”, luego se activará el boton “TEST”.Hacemos click en el boton “TEST” y el sistema comenzaraa clasificar segun correspondan cada una de las instancias delarchivo de pruebas. Finalmente los resultados son arrojadosen el cuadro de texto “Resultado de Test”.

A continuación presentamos una muestra de diez instanciasdel conjunto de datos de prueba que serán clasificadas por elsistema.

@data0,0,0.65,0,0,0,0,0,0,0,0,0,0.65,0,0,0,0,0,4.6,0,0.65,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1.97,0.65,0,0,0,0,0,0.125,0,0,1.25,5,40,?0,0,0,3.7,3.7,0,0,0,0,0,3.7,0,0,0,0,0,0,0,3.7,0,1.88,0,0,1.88,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1.88,0,0,0,0,0,0,0,0,0,0,12,7,12,?

0,0.64,0.64,0,0.32,0,0,0,0,0,0,0.64,0,0,0,0.32,0,1.29,1.93,0,0.96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.75,0.6,0,0,0,0,0.93,0,0,0,0,0,0,1.25,0,0,0.778,0,0,3.756,61,278,?0,0.64,0.64,0,0.32,0,0,0,0,0,0,0.64,0,0,0,0.32,0,1.29,1.93,0,0.96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1.45,0,0,0.69,0,0.93,0,0,0,0,0,0,1.25,0,0,0.778,0,0,3.756,61,278,?0,0,2.56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5.12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.308,0,1.543,0,0,2.777,6,25,?0,0,0,0,0,0,0,0,0,0,0,0.89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1.583,8,38,?0,0,0,0,0,0,0,0,0,4.34,0,2.17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,7,?0,0,0.23,0,0.46,0,0,0,0.23,0,0,0,0,1.39,0,0,0.23,0,0,0,0.69,0,0,0,0.46,0,0,0,0,0,0,0,0,0,0,0,0.23,0,0,0,0,1.86,0,0,0,0,0,0,0,0.113,0,0.09,0,0.203,2.43,121,666,?0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,5,?0,0,0.65,0,0,0,0,0,0,0,0,0,0.65,0,0,0,0,0,4.6,0,0.65,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1.97,0.65,0,0,0,0,0,0.125,0,0,1.25,5,40,?Como se puede ver en el conjunto de datos de prueba; al

final de cada instancia se pone un signo de interrogación ”?”.Esto se lo realiza debido a que no sabemos la clase a la quepertenece cada instancia. El sistema es el encargado de sobree-scribir el archivo y añadir el ultimo valor según corresponda ala clase. 1 para las instancias que son clasificadas como spam,0 para las instancias clasificadas como correo legítmo.

VII. RESULTADOS

Luego de realizar el entrenamiento del clasificador con elconjunto de datos ”spambase.arff”, se obtienen los siguientesresultados como se muestra en la Figura 3.

Figure 3. Resultado del entrenamiento

Page 6: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 6

Como se mencionó antes, el entrenamiento del sistema selo realizó con un conjunto de 4601 instancias, de las cuales el79.52% (3659) son clasificadas correctamente, mientras queel 20.47% (942) son clasificadas incorrectamente. Esto selo puede constatar con la matriz de confusión, la cual nosdice que los elementos que componen la diagonal principalson aquellos que han sido clasificados correctamente, y losque componen la diagonal secundaria son aquellos que hansido clasificados incorrectamente. Esto se debe a que algunasinstancias no cumplen con los requerimiento para poder serclasificadas como tales.

A continuación se muestran los resultados de cada uno delos algorimtos estudiados en este artículo aplicados al conjuntode pruebas ”spambasetest.arff” que contiene un total de 34instancias.

• Resultado con el Algoritmo de Clasificación Naive BayesFigura 4.

Figure 4. Resultado de test del conjunto de datos ”spambasetest.arff” conNaive Bayes

Como se puede observar el resultado de la clasificaciónal conjunto de pruebas, el 100% de las instancias han sidoclasificadas correctamente, de las cuales 22 de ellas sonclasificadas como 1 o spam y 12 son clasificadas como correolegítimo.

• Resultado con el algoritmo de Clasificación J48 Figura5.

Figure 5. Resultado de test del conjunto de datos ”spambasetest.arff” conJ48

Como se puede observar el resultado de la clasificación alconjunto de pruebas, el 64.70% de las instancias han sidoclasificadas correctamente, mientras que el 35.29% de lasinstancias han sido clasificadas incorrectamente. Se puedeobservar también en la matriz de confusión que 16 instanciashan sido clasificadas como spam y tan solo 6 han sidoclasificadas como correo legítimo.

• Resultado con el Algoritmo de Clasificación IBk Figura6.

Figure 6. Resultado de test del conjunto de datos ”spambasetest.arff” conIBk

Page 7: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 7

Como se puede observar el resultado de la clasificación alconjunto de pruebas, el 79.41% de las instancias han sidoclasificadas correctamente, mientras que el 20.58% de lasinstancias han sido clasificadas incorrectamente. Se puedeobservar también en la matriz de confusión que 18 instanciashan sido clasificadas como spam, mientras que 9 instanciashan sido clasificadas como correo legítimo.

• Resultado con el Algoritmo de clasificación ADTreeFigura 7.

Figure 7. Resultado de test del conjunto de datos ”spambasetest.arff” conADTree

Como se puede observar el resultado de la clasificación alconjunto de pruebas, el 82.35% de las instancias han sidoclasificadas correctamente, mientras que el 17.64% de lasinstancias han sido clasificadas incorrectamente. Se puedeobservar también en la matriz de confusión que 16 instanciashan sido clasificadas como spam, mientras que 12 instanciashan sido clasificadas como correo legítimo.

A continuación se muestra una tabla comparativa del algo-ritmo de clasificación Naive Bayes que se ha aplicado parala clasificación del correo electrónico no desaedo con otrosalgoritmos de clasificación. Las pruebas son realizadas en undataset que contiene 32 instancias y 58 atributos.

Algoritmo de Clasificación % Correctos % IncorrectosNaive Bayes 100 0

J48 64.70 35.29IBk 79.41 20.58

ADTree 82.35 17.64

Table ITABLA DE COMPARACIÓN DE ALGORITMOS DE CLASIFIFICACIÓN

VIII. CONCLUSIONES

Los algoritmos de clasificación evaluados en la tabla 1,demuestran que el problema del correo electrónico no deseado

que son enviados por compañias con propagandas de susproductos se lo puede mitigar en un gran porcentaje. Comose puede ver el algoritmo de Naive bayes tiene una alta tasade efectividada pero tambien tiene algunos errores, ya quealgunas instancias que debian ser clasificadas como spam ono spam fueron clasificadas erroneamente. Es por esta razónque los clientes de correo electrónico siempre estan sujetosa errores, por lo cual siempre se debe revisar la bandeja decorreos spam ya que pueden haber correos que deben serlegitimos clasificados como spam.

Este estudio de las técnicas de clasificación orientadas alproblema del correo electrónco nos ha ayudado a comprendercomo trabajan los algoritmos de clasificación, que tasa deaciertos y errores se puede encontrar en este proceso.

Especialemente el algoritmo de clasificación Naive Bayesha demostrado tener un poco mas de exactitud al clasificarnuevas instancias, ya que este algoritmo a mayor número deinstancias es mas eficiente.

REFERENCES

[1] Concha Bielza, Pedro Larrañaga. Construcción de un filtro anti-spam.Departamento de Inteligencia Artificial. Universidad Politécnica deMadrid.

[2] José R Méndez, Florentino Fdez-Riverola, Fernando Díaz, Juan M.Corchado. Sistemas Inteligentes para la detección y filtrado de correospam: una revisión. Universidad Autonoma del estado de Mexico.

[3] J. J. Gonzáles Cid, J.R. Méndez Reboredo F. Fdez-Riverola. ModelosAnti-Spam de Inteligencia Artificial. Escuela Superior de IngenieriaInformática. Edificio Politécnico. Campus Universitario, As Logoas s/n,32004, Ourense.

[4] Basilio Sierra Araujo. Aprendizaje Automático: Conceptos básicos yavanzados. Aspectos Básicos utilizando el software Weka. Departamentode Ciencias de la Computación e Inteligencia Artificial. Universidad delPaís Vasco.

[5] Seongwook Youn, Dennis McLeod. Spam Email Classification using anAdaptative Ontology. Department of Computer Science. University ofSouthern California. Los Angeles, CA. USA.

[6] Antonia Kyriakopoulou, Theodore Kalamboukis. Text ClassificationUsing Clustering. Department of Informatics, Athens University ofEconomics and Business. 76 Patission St., Athens, GR 104.34.

[7] Jason D. M. Rennie. ifile: An Application of Machine Learning to E-Mail Filtering. Artificial Intelligence Lab. Massachusetts Institute ofTechnology. Cambridge, MA 02139.

[8] Manu Aery, Sharma Chakravarthy. eMailSift: Adapting Graph MiningTechniques for Email Classification. IT Laboratory and CSE Depart-ment. The University of Texas at Arlington.

[9] Ion Androutsopoulos, Georgios Paliouras, Vangelis Karkaletsis, Geor-gios Sakkis, Constantine D. Spyropoulos, Panagiotis Stamatopoulos.Learning to Filter Spam E-Mail: A Comparision of a Naive Bayesianand a Memory-Based Approach. Department of Informatics, Universityof Athens. TYPA Buildings, Panepistimiopolis, 157 71 Athens, Greece.

[10] Yang Song, Aleksander Kolcz, C. Lee Giles. Better Naive Bayes clas-sification for high-precision spam detection. Department of ComputerScience and Engineering. The Pennsylvania State University, UniversityPark, PA 16802, U.S.A.

[11] Óscar J. Prieto, Juan José Rodriguez, Carlos J. Alonso, Esteban Gelso.Clasificador Bayesiano Naive en la Identificación de Fallos en ProcesosContinuos. Grupo de Sistemas Inteligentes. Departamento de Infor-mática, Universidad de Valladolid, Spain. Universidad de Burgos, Spain.Facultado de Ingenieria, Universidad Nacional del Centro de la Provinciade Buenos Aires, Olavarría, Argentina.

[12] Mitchell, Tom, “Machine Learning”, Ed. MacGraw-Hill, 1997.[13] Ravi Kiran S. S, Indriyati Atmosukarto. Spam or Not Spam - That is

the question.[14] Aris Kosmopoulos, Georgios Paliouras, Ion Androutsopoulos. Adapta-

tive Spam Filtering Using Only Naive Bayes Text Classifiers. Instituteof Informatics and Telecomunications, N.C.S.R “Demokritos” Athens,Greece and Department of Informatics Athens University and Business,Athens, Greec.

Page 8: Clasificador Naive Bayes para Filtrar Correo Electrónico

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA 8

[15] Rich Caruana, Alexandru Niculescu-Mizil. An Empirical Comparisionof Supervised Learning Algorithms. Department of Computer Science,Cornell University, Ithaca, NY 14853 USA.

[16] Heckerman, D., Geiger D., and Chickering, D. Learning Bayesian Net-works: The Combination of Knowledge and Statistical Data. MachineLearning, 20, 197-243. 1995