【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

。。。

相关推荐
小杨40422 分钟前
python入门系列十四(多进程)
人工智能·python·pycharm
阿坡RPA15 小时前
手搓MCP客户端&服务端:从零到实战极速了解MCP是什么?
人工智能·aigc
用户277844910499315 小时前
借助DeepSeek智能生成测试用例:从提示词到Excel表格的全流程实践
人工智能·python
机器之心15 小时前
刚刚,DeepSeek公布推理时Scaling新论文,R2要来了?
人工智能
算AI17 小时前
人工智能+牙科:临床应用中的几个问题
人工智能·算法
凯子坚持 c18 小时前
基于飞桨框架3.0本地DeepSeek-R1蒸馏版部署实战
人工智能·paddlepaddle
你觉得20518 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
8K超高清19 小时前
中国8K摄像机:科技赋能文化传承新图景
大数据·人工智能·科技·物联网·智能硬件
hyshhhh19 小时前
【算法岗面试题】深度学习中如何防止过拟合?
网络·人工智能·深度学习·神经网络·算法·计算机视觉
薛定谔的猫-菜鸟程序员19 小时前
零基础玩转深度神经网络大模型:从Hello World到AI炼金术-详解版(含:Conda 全面使用指南)
人工智能·神经网络·dnn