首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从朴素贝叶斯分类器中正确计算垃圾邮件分数作为固定特征和概率的组合?

如何从朴素贝叶斯分类器中正确计算垃圾邮件分数作为固定特征和概率的组合?
EN

Data Science用户
提问于 2022-12-20 06:47:09
回答 1查看 24关注 0票数 1

我正在构建一个学习垃圾邮件/火腿电子邮件分类器作为一项任务。它不应该是一个很好的通用分类器,而是一个可以在一小组标记的用户电子邮件上学习的分类器(大约)。(假设垃圾邮件/火腿和个人特性的分发仍然大致相同,则对其余的信息进行分类。

我首先实现了一个简单的带有日志概率的朴素贝叶斯,其基础是:https://www.cs.rhodes.edu/~kirlinp/courses/ai/f18/projects/proj3/naive-bayes-log-probs.pdf

这是我的底线,我正在努力改进。我读了多篇关于这个问题的论文和文章,我试着实现一个更复杂的多项NB模型,但效果要差得多。

目前,分类器的数据仅来自消息体和主题(如果存在)。我还将消息作为一组单词来处理,并显式地从词汇表中删除一些单词,如" the“、"was”等。

考虑到很多消息都包含有链接、颜色代码、URL和电子邮件地址的HTML代码,这是我目前不使用的信息,我也希望从这些信息中获得信息。然而,事实证明,以某种数字稳定的方式这样做是极具挑战性的。

例如,在电子邮件地址和网址,我正在寻找非常明显的关键短语,如“点击”,“取消订阅”,“广告”,“现金”等。

我试着将常数加减到对数概率评分中,乘以0.999/1.001等因素,但在数值上似乎没有什么是稳定的,因素/常数的微小变化会导致精度上的大变化。

作业评分的质量分数假定假阳性的权重为10倍。我的当前过滤器通常在650条消息的数据集上产生0-5误报,但通常超过30条假阴性。在最困难的数据集(对我来说是黑匣子,不知道它是什么样子)上,我得到了94个假负片。

有更多经验的人会有一些如何处理计算的技巧吗?

谢谢!

EN

回答 1

Data Science用户

发布于 2022-12-20 22:01:55

这听起来像是你想要提高你的垃圾邮件分类器的性能,增加额外的功能到你的模型。您可以考虑的一种方法是使用功能提取器函数从消息中的HTML代码和电子邮件地址中提取有用的信息。该函数可以以消息作为输入,并返回表示消息的特征向量。然后,您可以使用这个特征向量作为您的朴素贝叶斯分类器的输入。

要从HTML代码和电子邮件地址中提取有用的特性,可以考虑使用正则表达式来匹配特定的模式。例如,您可以使用正则表达式来匹配包含某些关键短语的电子邮件地址,例如“单击”、“取消订阅”、“广告”或“现金”。您还可以使用正则表达式来匹配包含这些关键字短语的URL,或者识别垃圾邮件中经常使用的特定HTML标记或属性。

除了使用正则表达式之外,还可以考虑使用其他技术从HTML代码和电子邮件地址中提取特性。例如,您可以使用自然语言处理技术来识别电子邮件文本中的关键短语或情感,或者使用机器学习技术来识别数据中的模式或异常。

一旦从消息中提取了这些特征,就可以使用这些特征来更新当前在朴素贝叶斯分类器中使用的日志概率分数。您可以通过将附加特性的日志概率加减到现有功能的日志概率中来做到这一点。

在增加或减去日志概率时要小心,因为日志概率的微小变化会导致概率的较大变化。为了避免这个问题,您可能需要考虑使用平滑技术,例如Laplace平滑,以平滑日志概率,并使您的模型对数据中的小变化更加健壮。

您可以尝试的另一种方法是使用一种更适合处理高维数据和大量特性的不同分类算法。例如,您可以尝试使用线性支持向量机(SVM)或随机林型分类器,这两种分类器在高维数据上都具有良好的性能。

如果您想继续使用朴素贝叶斯分类器,可以尝试使用Bernoulli朴素贝叶斯分类器,它是为二进制数据设计的,而不是为计数数据设计的多项式朴素Bayes分类器。这可能更适合您试图合并的特性类型。

在提高分类器性能方面,尝试使用交叉验证来评估不同模型和超参数配置的性能,并选择性能最好的模型和配置可能会有所帮助。您还可以尝试使用诸如特征选择等技术来识别分类任务中最重要的特性,并降低数据的维度。

我希望这能帮到你!如果你还有其他问题,请告诉我。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/117193

复制
相关文章
朴素贝叶斯深度解码:从原理到深度学习应用
朴素贝叶斯(Naive Bayes)是一种基于贝叶斯定理的分类技术,具有实现简单、易于理解、且在多种应用场景中表现优秀的特点。本节旨在介绍贝叶斯定理的基本历史和重要性,以及朴素贝叶斯分类器的应用场景。
TechLead
2023/10/21
1.1K0
朴素贝叶斯深度解码:从原理到深度学习应用
朴素贝叶斯分类算法(Naive Bayes Classification Algorithm)
朴素贝叶斯分类算法(Naive Bayes Classification Algorithm)是一种基于贝叶斯定理和特征条件独立假设的分类方法。以下是对该算法的清晰介绍:
jack.yang
2025/04/05
820
第1章:监督学习和朴素贝叶斯分类 - 第1部分(理论)
欢迎来到监督学习的基石。我们首先讨论一个小方案,它将构成未来讨论的基础。接下来,我们将讨论关于后验概率的一些数学,也称为贝叶斯定理。这是朴素贝叶斯分类器的核心部分。最后,我们将探索 python 的 sklearn 库,并在 Python 中编写一个关于 Naive Bayes Classifier 的小段代码,以解决我们在开始时讨论的问题。
iOSDevLog
2019/04/22
4810
第1章:监督学习和朴素贝叶斯分类 - 第1部分(理论)
【ChatGPT】一个凭借两百多年历史的公式崛起的巨星
托马斯·贝叶斯 (Thomas Baves,1701年一1761年),是18世纪的一位英国数学家、统计学家
THUNDER王
2023/10/13
3630
【ChatGPT】一个凭借两百多年历史的公式崛起的巨星
机器学习中的概率超能力:如何用朴素贝叶斯算法结合标注数据做出精准预测
文章链接:https://cloud.tencent.com/developer/article/2467252
小馒头学Python
2024/11/19
1440
机器学习中的概率超能力:如何用朴素贝叶斯算法结合标注数据做出精准预测
【数据挖掘】朴素贝叶斯分类器 ( 多属性概率计算 | 朴素贝叶斯分类案例分析 )
是一个常数 , 可以不考虑该值 , 所有的概率都除以了该值 , 对比各个类别概率时 , 可以不考虑改值具体是多少 ;
韩曙亮
2023/03/27
5430
【机器学习】朴素贝叶斯算法详解与实战扩展
朴素贝叶斯算法是一种基于概率统计的分类方法,它利用贝叶斯定理和特征条件独立假设来预测样本的类别。尽管其假设特征之间相互独立在现实中往往不成立,但朴素贝叶斯分类器因其计算简单、效率高、对缺失数据不敏感等优点,在文本分类、垃圾邮件过滤、情感分析等领域有着广泛的应用。
破晓的历程
2024/08/20
2980
【机器学习】朴素贝叶斯算法
链接:https://cloud.tencent.com/developer/article/2472727
摆烂小白敲代码
2024/11/24
6650
【机器学习】朴素贝叶斯算法
数据挖掘实例:朴素贝叶斯分类器进行垃圾邮件过滤
朴素贝叶斯是基于贝叶斯,定理与特征条件独立假设的分类方法。最为广泛的两种分类模型是决策树模型和朴素贝叶斯模型。 和决策树模型相比,朴素贝叶斯分类器(Naive Bayesian Classifier, NBC)发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同时,NBC模型所需估计的参数很少,对缺失数据不敏感,算法也比较简单。理论上,NBC模型与其他分类方法相比,具有最小的误差率。但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的,这个NBC模型的正确分类带来了一定影响。
统计学家
2019/04/10
1.5K0
数据挖掘实例:朴素贝叶斯分类器进行垃圾邮件过滤
朴素贝叶斯分类器_sklearn朴素贝叶斯分类器
同理,可以计算这个病人患上过敏或脑震荡的概率。比较这几个概率,就可以知道他最可能得什么病。
全栈程序员站长
2022/09/20
6120
机器学习教程:朴素贝叶斯文本分类器
在本教程中,我们将讨论朴素贝叶斯文本分类器。朴素贝叶斯是最简单的分类器之一,只涉及简单的数学表达,并且可以使用PHP,C#,JAVA等语言进行编程。
花落花飞去
2018/02/01
1.7K0
机器学习教程:朴素贝叶斯文本分类器
【机器学习】解构概率,重构世界:贝叶斯定理与智能世界的暗语
在机器学习的世界中,概率论不仅是数学的一个分支,更是理解数据分布、评估模型性能和进行决策的基石。前两篇博客中,我们分别介绍了线性代数入门和概率论入门,为大家奠定了坚实的数学基础。今天,我们将深入探讨条件概率与贝叶斯定理,这些概念在实际应用中至关重要,特别是在分类、预测和决策模型中。
半截诗
2025/01/09
1440
【机器学习】解构概率,重构世界:贝叶斯定理与智能世界的暗语
常见面试算法:朴素贝叶斯
贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。本章首先介绍贝叶斯分类算法的基础——贝叶斯定理。最后,我们通过实例来讨论贝叶斯分类的中最简单的一种: 朴素贝叶斯分类。
机器学习AI算法工程
2019/10/28
9980
常见面试算法:朴素贝叶斯
朴素贝叶斯实战篇之新浪新闻分类
Python版本: Python3.x 作者:崔家华 运行平台: Windows 编辑:黄俊嘉 IDE: Sublime text3 一、前言 上篇文章Python3《机器学习实战》学习笔记(四):朴素贝叶斯基础篇之言论过滤器讲解了朴素贝叶斯的基础知识。本篇文章将在此基础上进行扩展,你将看到以下内容: 1.拉普拉斯平滑 2.垃圾邮件过滤(Python3) 3.新浪新闻分类(sklearn) 二、朴素贝叶斯改进之拉普拉斯平滑 上篇文章提到过,
机器学习算法工程师
2018/03/06
1.9K0
朴素贝叶斯实战篇之新浪新闻分类
完整手写一个朴素贝叶斯分类器,完成文本分类
Part 1: 本文解决的问题: 我在有这样的一个数据集,里面存放了人们对近期播放电影的评价,当然评价也就分成两部分,好评和差评。我们想利用这些数据训练一个模型,然后可以自动的对影评做出判断,到底是好评还是差评,差评的话,那么我们赶紧删掉它,哈哈。 好吧,这就是自然语言处理领域的基本问题:文本分类。文本分类在我们的日常生活中有非常多的应用,最有名的当属垃圾邮件过滤啦。我们肯定希望不要受到垃圾邮件,但是我们更不希望正常的邮件被当做垃圾邮件过滤掉了。这对我们分类的精度提出了很高的要求。 Part 2:本文的结
机器学习AI算法工程
2018/03/14
1.8K0
第二章--第三篇---文本分类
文本分类是一种基于自然语言处理技术,对给定的文本进行分类的方法。具体而言,文本分类将一篇文本分配到一个或多个预定义的类别中,这些类别通常是事先定义好的,例如新闻、评论、垃圾邮件、商品分类等。 文本分类在实际应用中有着广泛的应用,例如在舆情监控、垃圾邮件过滤、新闻分类、商品分类、情感分析等领域。通过对海量文本数据进行分类,可以帮助用户快速准确地获得所需信息,从而提高效率。此外,文本分类还可以帮助企业识别消费者的意见和情感倾向,为其提供更好的产品和服务,增强市场竞争力。
喵叔
2023/05/11
4740
译文:朴素贝叶斯算法简介(Python和R中的代码)
朴素贝叶斯是一种用于分类问题的机器学习算法。它是基于贝叶斯概率定理的。主要用于涉及高维训练数据集的文本分类。几个相关的例子有:垃圾邮件过滤、情感分析和新闻文章分类。 它不仅因其简单而著称,而且因其有效性而闻名。它能快速构建模型和使用朴素贝叶斯算法进行预测。朴素贝叶斯是用于解决文本分类问题的第一个算法。因此,应该把这个算法学透彻。 朴素贝叶斯算法是一种用于分类问题的简单机器学习算法。那么什么是分类问题?分类问题是监督学习问题的示例。它有助于从一组类别中识别新观察的类别(子群体)。该类别是基于包含其类别成
小莹莹
2018/04/19
1.3K0
译文:朴素贝叶斯算法简介(Python和R中的代码)
【机器学习-监督学习】朴素贝叶斯
  贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,所以统称为贝叶斯分类。朴素贝叶斯是一种贝叶斯分类算法,在许多场合可以与决策树和神经网络分类算法相媲美。图1展示了贝叶斯原理、贝叶斯分类和朴素贝叶斯三者之间的关系。
Francek Chen
2025/01/22
1770
【机器学习-监督学习】朴素贝叶斯
第0章:什么是机器学习?
原文:https://medium.com/machine-learning-101/chapter-0-what-is-machine-learning-ad136361c618
iOSDevLog
2019/04/23
4180
第0章:什么是机器学习?
深度 | 从朴素贝叶斯到维特比算法:详解隐马尔科夫模型
选自davidsbatista 作者:David S. Batista 机器之心编译 参与:蒋思源、路雪 本文首先简要介绍朴素贝叶斯,再将其扩展到隐马尔科夫模型。我们不仅会讨论隐马尔科夫模型的基本原理,同时还从朴素贝叶斯的角度讨论它们间的关系与局限性。 隐马尔科夫模型是用于标注问题的统计机器学习模型,是一种生成模型。隐马尔科夫模型是关于时序的概率模型,它描述了由一个隐藏的马尔科夫链随机生成不可观测的状态随机序列,再由各个状态生成一个观测而产生观测随机序列的过程。本文将重点介绍这种经典的机器学习模型。 简介
机器之心
2018/05/09
9630
深度 | 从朴素贝叶斯到维特比算法:详解隐马尔科夫模型

相似问题

朴素贝叶斯分类器中的极低概率

10

朴素贝叶斯分类器1中的极低概率

10

真的混淆了朴素贝叶斯分类器的特征吗?

10

星星之火,ML:朴素贝叶斯分类器通常指定1作为概率预测。

10

朴素贝叶斯分类器

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档