41

我是机器学习的新手,对于我的第一个项目,我想编写一个朴素贝叶斯垃圾邮件过滤器。我想知道是否有任何公开可用的标记为垃圾邮件/非垃圾邮件的训练集,最好是纯文本而不是关系数据库的转储(除非他们漂亮地打印那些?)。

我知道存在这样一个公开可用的数据库,用于其他类型的文本分类,特别是新闻文章文本。我只是无法为电子邮件找到相同的东西。

4

6 回答 6

34

这是我一直在寻找的:http ://untroubled.org/spam/

这个档案有大约 1 GB 的压缩累积垃圾邮件,可追溯到 1998 年至 2011 年。现在我只需要接收非垃圾邮件。因此,我将使用 getmail 程序和mattcutts.com上的教程查询我自己的 Gmail

于 2011-01-22T21:00:39.453 回答
10

当然,还有Spambase,据我所知,它是机器学习文献中引用最广泛的垃圾邮件数据集。

我已经多次使用过这个数据集;每次我都为这个数据集的格式化和文档付出了多少努力而印象深刻。

Spambase 集的一些特征:

  • 4601个数据点——全部完成

  • 每个由 58 个特征(属性)组成

  • 每个数据点都标记为“垃圾邮件”或“无垃圾邮件”

  • 大约 40% 被标记为垃圾邮件

  • 的特征,都是连续的(相对于离散的)

  • 一个代表特征:大写字母的平均连续序列


Spambase 存档在UCI 机器学习存储库中;此外,它还可以在网站上获得Hastie 等人的优秀 ML/统计计算论文、统计学习要素。

于 2011-01-20T08:45:48.017 回答
8

SpamAssassin 有一个垃圾邮件和非垃圾邮件的公共语料库,尽管它已经有几年没有更新了。阅读 readme.html 文件以了解其中的内容。

于 2013-12-07T22:22:55.247 回答
6

您可以考虑查看 TREC 垃圾邮件/火腿语料库(我认为这是从法庭案件中公开的来自安然的电子邮件集合)。TREC 通常会运行一堆竞争性的文本处理任务,因此它可能会为您提供一些比较参考。

缺点是它们以原始 mbox 格式存储,尽管有许多语言可用的解析器(Apache Tika 就是一个很好的例子)。

该网页不是 TREC,但这似乎是对任务的一个很好的概述,并带有数据链接:http: //plg.uwaterloo.ca/~gvcormac/spam/

于 2011-01-28T23:39:35.823 回答
4

可以在kaggle找到更现代的垃圾邮件训练集。此外,您可以通过上传结果在他们的网站上测试分类器的准确性。

于 2014-12-13T12:15:42.393 回答
2

我也有一个答案,在这里您可以找到用于初始培训的每日更新的贝叶斯数据库,以及包含捕获的垃圾邮件的每日创建的存档。您将在网站上找到如何使用它的说明。

于 2014-04-17T11:10:57.350 回答