Python机器学习 — 朴素贝叶斯算法(Naive Bayes)

本文详细介绍了朴素贝叶斯算法,包括其简介、贝叶斯定理,以及高斯朴素贝叶斯、多项分布朴素贝叶斯和伯努利分布朴素贝叶斯的原理和应用。此外,还讲解了如何在Python中实现朴素贝叶斯算法,尤其在文本分类中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、朴素贝叶斯算法 -- 简介

       朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model,NBM)。
       和决策树模型相比,朴素贝叶斯分类器(Naive Bayes Classifier,或 NBC)发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同时,NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。
       理论上,NBC模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的,这给NBC模型的正确分类带来了一定影响。

       算法步骤:
           1)收集数据;
           2)准备数据:需要数值型或布尔型数据。如果是文本文件,要解析成词条向量bai;
           3)分析数据:有大量特征时,用直方图分析效果更好;
           4)训练算法:计算不同的独立特征的条件概率;
           5)测试算法:计算错误率;
           6)使用算法:一个常见的朴素贝叶斯应用是文档分类。

二、贝叶斯定理

       条件概率就是事件 A 在另外一个事件 B 已经发生条件下的发生概率。条件概率表示为P(A|B),读作“在 B 发生的条件下 A 发生的概率”。

       联合概率表示两个事件共同发生(数学概念上的交集)的概率。A 与 B 的联合概率表示为联合概率

       推导:

       我们可以从条件概率的定义推导出贝叶斯定理。
       根据条件概率的定义,在事件 B 发生的条件下事件 A 发生的概率为:

       同样地,在事件 A 发生的条件下事件 B 发生的概率为:

       结合这两个方程式,我们可以得到:

       这个引理有时称作概率乘法规则。上式两边同除以 P(A),若P(A)是非零的,我们可以得到贝叶斯定理:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值