阅读 21

贝叶斯定理及其在机器学习算法中的应用

贝叶斯定理是整个统计领域最为重要的定理,本文由浅入深的讲述贝叶斯定理的推导过程,最后讲述其在机器学习算法中是如何应用的。看完本文后,做几道练习题即可掌握贝叶斯。

一、条件概率

条件概率就是计算,当事件B发生时,那么事件A发生的概率,在数学中的表示为

其中P(A∩B)表示事件B和时间A同时发生的概率,那么这个结果除上事件B发生的概率P(B),就得到了当事件B发生时,事件A发生的概率,即P(A|B)

由以上公式,同理可得出

那么由条件概率公式可以推导得出

去掉中间的P(A∩B),并且把左边的P(B)挪到右边去,那么最终得到贝叶斯定理

就是这么简单,此时应该想起那个广告,tiger,so easy!!!!


来个练习题:
我饿了的概率是10%,我饿了在吃饭的概率是50%,我吃饭的概率是40% ,那么计算我吃饭的时候饿了的概率。
解答过程:
已知: P(饿)=10% P(吃|饿)=50% P(吃)=40%
P(饿|吃)的概率是多少
P(饿|吃) = P(饿)P(吃|饿)/P(吃)
P(饿|吃) = 0.1 * 0.5 / 0.4 = 0.125 = 12.5%

巧记:

从上学的时候就不愿意记公式,那么我们应该怎样记住贝叶斯呢?

三个AB即可记住。即:

AB AB AB
中间加上符号就可以啦!

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

非常的简单吧。

那么下面我们来推导一个复杂一点的。


二、全概率

全概率就是计算事件A一定会发生的概率,在数学中的表示为

一个事件的发生,可以在各种各样的情况下。比如上题中的吃饭,可以是我饿了,也可以是需要应酬,也可以是馋了就想吃,还可以是到饭点了,就要吃(小时候经常被妈妈这么管着,是吧),那么这些条件共同组成了我必须要吃饭这件事情的发生,也就是100%概率会发生的事,那么这就是全概率事件。


由以上可得出

P(吃饭)=P(吃饭)P(饿了)+P(吃饭)P(应酬)+P(吃饭)P(馋了)+P(吃饭)P(饭点了)......很多种情况

那么由第一部分的条件概率公式,是不是也可以换算成

P(吃饭)=P(吃饭|饿了)/P(饿了)+P(吃饭|应酬)/P(应酬)+P(吃饭|馋了)/P(馋了)+P(吃饭|饭点了)/P(饭点了)......很多种情况


那么其数学表示形式是:

首先:

P(A)=P(AB1)+P(AB2)+....+P(ABn)

然后:

P(A)=P(A|B1)P(B1)+P(A|B2)P(B2)+...+P(A|Bn)P(PBn)

那么下面我们将第一部分我们得到的公式P(A|B)=P(A)P(B|A)/P(B)其中的P(B)替换成全概率公式中得到的:

P(A)=P(A|B1)P(B1)+P(A|B2)P(B2)+...+P(A|Bn)P(PBn)

就变成了

到这里,我们就将贝叶斯定理完全的推导完成啦。


来个练习题
有一种疾病的发病率为千分之一,医院中有一种化验技术可以针对该疾病进行检测,只要发病一定能够检测到,但误诊率为百分之五(也就是说这百分之五的人即使是没有病,那么化验结果也为阳性)。现在假设一个人化验结果显示为有病,那么这个人真实患病的概率有多大?
解答过程:

然后就是套一下数字,就得到了结果


贝叶斯定理在机器学习算法中的应用

场景:垃圾邮件筛选

描述:邮件中包含“购买商品,不是广告”这句话的邮件是垃圾邮件么?

样本集:36封邮件,已知正常邮件24封,垃圾邮件12封

过程:首先使用分词技术(汉语分词技术有很多,可以采用jieba库进行分词即可),将“购买商品,不是广告”拆分成"购买"、"商品"、"不是"、"广告",四个词。

那么已知:

1、正常邮件中,包含“购买”的邮件有2封,垃圾邮件中包含“购买”的邮件有5封

2、正常邮件中,包含“商品”的邮件有4封,垃圾邮件中包含“商品”的邮件有3封

3、正常邮件中,包含“不是”的邮件有4封,垃圾邮件中包含“不是”的邮件有3封

4、正常邮件中,包含“广告”的邮件有5封,垃圾邮件中包含“广告”的邮件有3封


那么如果我们不是分析邮件内容的话,那么一个邮件正常邮件的概率是2/3,垃圾邮件的概率是1/3

也就是说P(正常)=2/3和P(垃圾)=1/3


问:我们新来一个邮件,判断它是正常邮件还是垃圾邮件?

进一步说明:是正常还是垃圾,其实就是计算谁的概率大。

解:

最终得到,这封邮件到底是不是垃圾邮件呢?



关注下面的标签,发现更多相似文章
评论