2011-01-20 11 views
34

Soy nuevo en el aprendizaje automático, y para mi primer proyecto me gustaría escribir un ingenuo filtro de spam de Bayes. Me preguntaba si hay juegos de capacitación públicamente disponibles de correos electrónicos no deseados etiquetados como spam o no, preferiblemente en texto plano y no como un volcado de una base de datos relacional (a menos que impriman bien esos).Publicly Available Spam Filter Training Set

Sé que existe una base de datos públicamente disponible para otros tipos de clasificación de texto, específicamente el texto del artículo de noticias. Simplemente no he podido encontrar el mismo tipo de cosas para los correos electrónicos.

+3

Si está en 2011 con nosotros, solo revise su casilla de correo no deseado en Gmail. Debería ser una fuente bastante consistente de correos electrónicos no deseados. ;) – coreyward

+0

Mi cuenta de Gmail solo tiene unos 50 mensajes de correo no deseado y cada mensaje se elimina después de 30 días. Sorprendentemente, para empezar no recibo mucho spam. – JeremyKun

Respuesta

26

Esto es lo que estaba buscando: http://untroubled.org/spam/

Este archivo tiene alrededor de un gigabyte de mensajes de correo basura acumulados comprimido que datan 1998 - 2011. Ahora sólo tiene que conseguir de correo electrónico no spam. Así que solo consultaré mi propio Gmail para eso usando el programa getmail y el tutorial en mattcutts.com

+1

¡Gracias! ¡Este archivo está actualizado con mensajes de spam hasta '2017-05-30 05: 34' !!! – loretoparisi

8

Claro, hay Spambase, que por lo que yo sé, es el conjunto de datos de spam más ampliamente citado en la literatura de aprendizaje automático.

He utilizado este conjunto de datos muchas veces; cada vez que estoy impresionado cuánto esfuerzo se ha puesto en el formato y la documentación de este conjunto de datos.

Algunas características del conjunto Spambase:

  • 4601 puntos de datos - todo completo

  • compuesto cada uno de 58 características (atributos)

  • cada punto de datos está marcado 'spam' o 'no spam'

  • aprox. 40% están etiquetados correo no deseado

  • de las características, todos son continua (vs. discreta)

  • una característica representativa: promedio secuencia continua del capital letras


Spambase está archivado en el UCI Machine Learning Repository; Además, también está disponible en el Website para el excelente tratado de computación ML/Statistical, Elementos de Aprendizaje Estadístico por Hastie et al.

+1

Esto no parece tener realmente el texto del correo electrónico en él, sino más bien un recuento de un conjunto particular de palabras. Tal vez me falta dónde encontrar el contenido? – JeremyKun

+0

¿No tiene correo electrónico? Mire nuevamente las 58 características que componen el conjunto de datos, la mayoría de ellas derivan completamente del texto del correo electrónico. El texto del correo electrónico sin procesar requerirá un análisis cuidadoso de las características antes de poder usarlo en un Naive Bayes. – doug

+2

Correcto, pero quiero el texto sin formato para poder decidir qué funciones son relevantes. Esta es una experiencia de aprendizaje, así que quiero hacerlo desde cero. – JeremyKun

6

Puede considerar echar un vistazo al corpus spam/jam de TREC (que creo que es el conjunto de correos electrónicos de Enron que fue hecho público desde el caso judicial). TREC generalmente ejecuta una serie de tareas de procesamiento de texto competitivo, por lo que podría darle algunas referencias para la comparación.

La desventaja es que están almacenados en formato raw mbox, aunque hay analizadores disponibles en muchos idiomas (Apache Tika es un buen ejemplo).

La página web no es TREC, pero esto parece ser una buena visión general de la tarea con enlaces a los datos: http://plg.uwaterloo.ca/~gvcormac/spam/

+0

Esto es bueno, y desde la publicación de mi pregunta me he dado cuenta de que es difícil moverse usando el formato mbox para los volcados de correo electrónico. De todos modos, he encontrado algunos datos, y decidí que es más fácil simplemente clasificar algo más (web raspando comentarios de chillidos para clasificar la positividad, en realidad). – JeremyKun

7

SpamAssassin tiene una public corpus de ambos mensajes de spam y no spam, aunque hasn' ha sido actualizado en unos años. Lea el archivo readme.html para saber qué hay allí.

0

También tengo una respuesta, here, puede encontrar una base de datos bayesiana actualizada diariamente para la capacitación inicial y también un archivo creado diariamente que contiene spams capturados. Encontrará las instrucciones sobre cómo usarlo en el sitio.

3

Un conjunto de entrenamiento de spam más moderno se puede encontrar en kaggle. Además, puede probar la precisión de su clasificador en su sitio web cargando sus resultados.