如何在垃圾邮件过滤中嵌入带有朴素贝叶斯分类器的关联规则?

Posted

技术标签:

【中文标题】如何在垃圾邮件过滤中嵌入带有朴素贝叶斯分类器的关联规则?【英文标题】:How can I embed Assosciation rules with Naive Bayes classifier in spam filtering? 【发布时间】:2017-07-02 15:49:16 【问题描述】:

实际上,我正在研究用于过滤邮件的朴素贝叶斯分类器。我在垃圾邮件检测中的准确率达到了 95%,在 HAM 检测中达到了 94%,但我相信可以通过关联规则挖掘进一步提高它。我正在从训练数据集中计算邮件中单词的可能性和先验概率,并将测试邮件映射到 SPAM 或 HAM 类,如下所示,

在哪里,

p(d/c) 表示文档 d 属于 c 类的概率。

p(c) 表示特定类别的概率(在我的例子中是垃圾邮件或 HAM)。

p(f1,f2,f3...fn/c) 表示单词 f1,f2...fn 属于 c 类的可能性。

但是在到达等式时。 2.7,我们假设词袋假设和条件独立,这近似于准确性(为了方便而假设)。 例如单词 lottery 在垃圾邮件中出现单词 lucky 的可能性应该大于出现单词 my_name(mahesh) 的可能性。因此,单词的存在及其位置确实会影响概率。

因此应该有一些符合朴素贝叶斯的关联模型来进一步提高准确性。

【问题讨论】:

你能改进你的问题吗?目前尚不清楚你在问什么。您是否希望将关联规则挖掘与朴素贝叶斯相结合,或者您是否在询问使用常规贝叶斯方法(例如通过贝叶斯网络)是否会改善您的结果? 我想问的是,是否可以将关联规则与朴素贝叶斯结合起来提高结果? 你见过这样的研究吗? aaai.org/Papers/KDD/1998/KDD98-012.pdf 【参考方案1】:

如果我可以这样改写你的问题:

“放宽朴素贝叶斯的条件独立假设会提高分类器的性能吗?”

那么答案是一个令人惊讶且违反直觉的“不”。

一般而言,朴素贝叶斯分类器在特征之间施加严格的类条件独立性,与更一般的贝叶斯网络相比,它提供相同或更好的性能,后者允许更丰富的依赖关系(甚至可以从数据中学习依赖结构,尽管通常不完全正确)。

原因是,虽然朴素贝叶斯通常会错误地计算概率,但通常会正确地获得决策边界 [1]。

所以:你最好只做词袋假设。

[1]http://web.cs.ucdavis.edu/~vemuri/classes/ecs271/Bayesian.pdf

【讨论】:

但是我搜索了一些论文,只有一篇说它可以提高准确性:drive.google.com/file/d/0B2uTlw0qoMT-aXp6MVVTdThKYXM/…

以上是关于如何在垃圾邮件过滤中嵌入带有朴素贝叶斯分类器的关联规则?的主要内容,如果未能解决你的问题,请参考以下文章

朴素贝叶斯垃圾邮件过滤问题

数据挖掘实例:朴素贝叶斯分类器进行垃圾邮件过滤

朴素贝叶斯分类器-垃圾邮件过滤

使用朴素贝叶斯分类器过滤垃圾邮件

在朴素贝叶斯垃圾邮件过滤中结合个体概率

使用朴素贝叶斯算法简单实现垃圾邮件过滤