贝叶斯垃圾邮件过滤 - 计算垃圾邮件/火腿中单词出现的概率

时间:2015-12-11 17:49:43

标签: filter spam bayesian

假设我有两个数据集 - 垃圾邮件和火腿邮件的示例(例如1000封垃圾邮件和800条火腿邮件)。

“免费”一词出现在700封垃圾邮件和200条火腿邮件中。 但在某些消息中出现的次数更多。这有关系吗?

1 个答案:

答案 0 :(得分:0)

答案是:这取决于。你没有说这种情况发生的频率。

如果您有1000条消息并且其中900条消息中出现“免费”字样,那么它似乎很常见(出现在90%的所有消息中)。但是,如果在消息中不常出现这个词不止一次,那就更有用了。在项目的早期,单独列出一个特定单词不太可能有用。

查找tf-idf(术语频率,反向文档频率)。这里的想法是,当你在文档中多次出现时,你会更加重视单词,但当它们出现在很多文档中时,重量会更少。

此外,根据您的数字,您有一个所谓的类不平衡。在100%的时间内简单猜测垃圾邮件的分类器可以很好地处理您的示例数据 - 至少70%的时间都是正确的。