【NLP冲吖~】一、朴素贝叶斯(Naive Bayes)

0、朴素贝叶斯法

朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。对于给定的训练数据集,首先基于特征条件独立假设学习输入输出的联合概率分布,然后基于此模型,对给定的输入 x x x,利用贝叶斯定理求出后验概率最大的输出 y y y。

朴素贝叶斯分类是贝叶斯分类中最简单,也是常见的一种分类方法。

从数学角度,定义分类问题如下:

已知集合 C = y 1 , y 2 , . . . , y n C = {y_1,y_2,...,y_n} C=y1,y2,...,yn和 I = x 1 , x 2 , . . . , x n I = {x_1,x_2,...,x_n} I=x1,x2,...,xn,确定一个函数映射 y = f ( x ) y = f(x) y=f(x),使得任意 x i ∈ I x_i∈I xi∈I有且仅有一个 y i ∈ C y_i∈C yi∈C,使得 y i ∈ f ( x i ) y_i∈f(x_i) yi∈f(xi)成立。

其中, C C C叫做类别集合,其中每一个元素都是一个类别,而 I I I叫做项集合(特征集合),其中每一个元素是一个待分类项,f叫做分类器。分类算法的任务就是构造分类器f

1、贝叶斯公式

P ( B ∣ A ) = P ( A ∣ B ) P ( B ) / P ( A ) P(B|A) = P(A|B)P(B) / P(A) P(B∣A)=P(A∣B)P(B)/P(A)

我们将B看作类别,A看作特征。即:
P ( 类别 ∣ 特征 ) = P ( 特征 ∣ 类别 ) P ( 类别 ) / P ( 特征 ) P(类别|特征) = P(特征|类别)P(类别) / P(特征) P(类别∣特征)=P(特征∣类别)P(类别)/P(特征)

求得 P(类别|特征),我们就可以通过贝叶斯公式进行分类!

2、 贝叶斯公式的本质

贝叶斯公式主要是描述了两种条件概率之间的关系,即P(AIB)与P(BIA)的关系。
P(A) 指事件A的先验概率,即在没有任何条件的情况下吗,对事件的基本判断。
P(AIB) 指后验概率,是在条件B之下事件A发生的概率。
P(BIA)/P(B) 相当于一个调整因子,使得先验概率经过调整得到后验概率,当这部分等于1,说明事件B的加入对于判断A的可能性没有帮助,先验等于后验。当它大于1,说明A发生的概率由于B的加入增大了。

3、分类案例

已知数据:

长毛/短毛 粘人/不粘人 攻击性强/弱 胆子大/小 是否纯种 是否好养
长毛 粘人 纯种 不好养
短毛 粘人 纯种 不好养
长毛 不粘人 纯种 不好养
长毛 粘人 纯种 不好养
长毛 粘人 非纯种 不好养
短毛 不粘人 纯种 好养
短毛 粘人 纯种 好养
长毛 不粘人 非纯种 好养
短毛 粘人 纯种 好养
长毛 粘人 非纯种 好养

根据已知数据,判断 短毛、粘人、攻击性弱、胆子大的非纯种猫是否好养。

P(好养|短毛、粘人、攻击性弱、胆子大、非纯种) = P(短毛、粘人、攻击性弱、胆子大、非纯种|好养)*P(好养) / P(短毛、粘人、攻击性弱、胆子大、非纯种)

P(短毛|好养) = 3 / 5

P(粘人|好养) = 3 / 5

P(攻击性弱|好养) = 4 / 5

P(胆子大|好养) = 3 / 5

P(非纯种|好养) = 2 / 5

P(好养) = 1 / 2

P(短毛) = 4 / 10 = 2 / 5

P(粘人) = 7 / 10

P(攻击性弱) = 5 / 10 = 1 / 2

P(胆子大) = 7 / 10

P(非纯种) = 3 / 10

同理:

P(短毛|不好养) = 1 / 5

P(粘人|不好养) = 4 / 5

P(攻击性弱|不好养) = 1 / 5

P(胆子大|不好养) = 4 / 5

P(非纯种|不好养) = 1 / 5

P(不好养) = 1 / 2

P(短毛) = 4 / 10 = 2 / 5

P(粘人) = 7 / 10

P(攻击性弱) = 5 / 10 = 1 / 2

P(胆子大) = 7 / 10

P(非纯种) = 3 / 10

可得:P(好养|短毛、粘人、攻击性弱、胆子大、非纯种) > P(不好养|短毛、粘人、攻击性弱、胆子大、非纯种)【只比较分子即可】

因此,可得 短毛、粘人、攻击性弱、胆子大的非纯种猫 好养。

4、 朴素贝叶斯为什么朴素?

其实朴素贝叶斯算法假设每个特征之间是相互独立的,这是算法的使用前提。朴素指的就是这一前提。

5、朴素贝叶斯分类算法的优缺点

优点:算法逻辑简单,易于实现;分类时,消耗时间空间资源少。

缺点:朴素贝叶斯算法的前提条件是特征相互独立,但是在实际情况中,特征之间往往不会那么理想,特征数较多或者特征之间相关性较大时,分类效果不会很好。

因此,**当特征之间的相关性较小是,我们可以忽略其相关性而使用朴素贝叶斯算法进行分类,分类效果会好很多。**当然,也有后续算法会对其改进。

6、 朴素贝叶斯在NLP中的应用

垃圾邮件分类:参考https://zhuanlan.zhihu.com/p/155632712

文本分类:参考https://blog.csdn.net/qiaowu898/article/details/107634195

。。。

相关推荐
水如烟4 小时前
孤能子视角:“组织行为学–组织文化“
人工智能
大山同学4 小时前
图片补全-Context Encoder
人工智能·机器学习·计算机视觉
薛定谔的猫19824 小时前
十七、用 GPT2 中文对联模型实现经典上联自动对下联:
人工智能·深度学习·gpt2·大模型 训练 调优
壮Sir不壮4 小时前
2026年奇点:Clawdbot引爆个人AI代理
人工智能·ai·大模型·claude·clawdbot·moltbot·openclaw
PaperRed ai写作降重助手5 小时前
高性价比 AI 论文写作软件推荐:2026 年预算友好型
人工智能·aigc·论文·写作·ai写作·智能降重
玉梅小洋5 小时前
Claude Code 从入门到精通(七):Sub Agent 与 Skill 终极PK
人工智能·ai·大模型·ai编程·claude·ai工具
-嘟囔着拯救世界-5 小时前
【保姆级教程】Win11 下从零部署 Claude Code:本地环境配置 + VSCode 可视化界面全流程指南
人工智能·vscode·ai·编辑器·html5·ai编程·claude code
正见TrueView5 小时前
程一笑的价值选择:AI金玉其外,“收割”老人败絮其中
人工智能
Imm7775 小时前
中国知名的车膜品牌推荐几家
人工智能·python
风静如云5 小时前
Claude Code:进入dash模式
人工智能