贝叶斯公式和朴素贝叶斯

贝叶斯公式

定义

根据条件概率的定义,在事件B发生的条件下事件A发生的概率是

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

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

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

整理与合并上述两个方程式,便可以得到:

P(A|B)P(B)=P(A∩B)=P(B|A)P(A)

上式两边同除以P(B),若P(B)是非零的,我们便可以得到贝叶斯定理的公式表达式:

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

理解

我们把P(A)称为"先验概率"(Prior probability),即在B事件发生之前,我们对A事件概率的一个判断。P(A|B)称为"后验概率"(Posterior probability),即在B事件发生之后,我们对A事件概率的重新评估。P(B|A)/P(B)称为"可能性函数"(Likelihood),这是一个调整因子,使得预估概率更接近真实概率。

所以,条件概率可以理解成下面的式子:

后验概率 = 先验概率 x 调整因子

这就是贝叶斯推断的含义。我们先预估一个"先验概率",然后加入实验结果,看这个实验到底是增强还是削弱了"先验概率",由此得到更接近事实的"后验概率"。

例子

1.已知某种疾病的发病率是0.001,即1000人中会有1个人得病。现有一种试剂可以检验患者是否得病,它的准确率是0.99,即在患者确实得病的情况下,它有99%的可能呈现阳性。它的误报率是5%,即在患者没有得病的情况下,它有5%的可能呈现阳性。现有一个病人的检验结果为阳性,请问他确实得病的可能性有多大?

P(得病|阳性) = 0.019

2.一种癌症,得了这个癌症的人被检测出为阳性的几率为90%,未得这种癌症的人被检测出阴性的几率为90%,而人群中得这种癌症的几率为1%,一个人被检测出阳性,问这个人得癌症的几率为多少?

P(得病|阳性) = 0.083
P(未得病|阳性) = 0.917

总结

贝叶斯公式,就是对我们预估的“先验概率prior”,不断用“后验概率(条件概率)”来修正

朴素贝叶斯NB

公式,定义

Cmap = P(c|d) = P(c|t1,t2,…,tn)
= P(t1,t2,…,tn|c) * P( c ) / P(t1,t2,…,tn)
去掉不依赖于c的分母,得到
Cmap = P(t1,t2,…,tn|c) * P( c )
P(c|t1,t2,…,tn)表示,输入t1…tk这组输入的任意组合后,得到状态为c的概率
通过贝叶斯公式计算后,将“后验概率”表达为“先验概率”和“训练数据结果”的乘积
朴素贝叶斯分类器,基于一个假设:所有的t1…tk都是相互独立的,也就是说一个输入的所有属性值相互不影响。那么P(t1,t2,…,tn|c)就可以写成每个属性的单个乘积,即:
P(t1,t2,…,tn|c) = P(t1|c) * P(t2|c) * … * P(tn|c)

理解

什么是朴素贝叶斯分类器,简单来说,就是我们有一个样本,一堆的输入数据和结果。我们用朴素贝叶斯来训练这些数据,也就是建立一个模型,从这些数据中找到一些规律,将这些数据按照某些特征分类。这样,我们再获得一个新的输入数据后,就可以根据我们自己制作的分类器,将新的数据也重新归类,并且计算出我们想要概率结果。

举个例子,就比如说小明是否早上出门上课,取决于很多因素。起床时间,天气状况,身体状况,精神状态,blahblah。我们现在有很多历史数据和对应的是否去上课的结果。
现在我们已知今天的情况,想判断小明是否去上课。就可以建模,训练历史数据,然后输入今天的数据,得到一个上课与不上课的概率,看看哪个情况的概率较大。

例子

除了上述简单的例子之外,朴素贝叶斯也可以应用于文本分类和其他实际应用中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值