贝叶斯案例和实际应用

今天我们来学习一类机器学习常见的分类算法:朴素贝叶斯分类。首选通过一个案例理解朴素贝叶斯分类。

小李质检往事

假如 A 公司的一名质检员小李,接到三箱零件需要检验,其中第一箱有 10 个零件,第二箱有 20 个零件,第三箱有 15 个。

半小时过去了,检验结果出炉:第一箱有 1 个不合格,第二箱有 3 个不合格,第三箱 2 个不合格。

下午领导要来视察,这位领导随手抽查一个零件,那么领导拿到这个件是合格件的概率有多大?

在这个问题中,领导拿的这个零件首先一定来自这 3 个箱子中的某一个,因此样本空间可以由这 3 个箱子组成,记 AiAi 为从第 ii 个箱子抽查的零件,ii 的取值范围为 1、2、3。然后标记拿到正品的事件为 BB,领导拿到此件为合格件的概率,记为 P(B)P(B)。

那么 P(B)P(B) 等于多少呢?

事件 BB 的发生肯定来自于样本空间,也就是说这个合格件要么从A1A1、A2A2 或者A3A3中获取到,假定等概率选择三个箱子,因此

P(B)=P(A1)×P(B|A1)+P(A2)×P(B|A2)+P(A3)×P(B|A3)=13×910+13×1720+13×1315=0.872P(B)=P(A1)×P(B|A1)+P(A2)×P(B|A2)+P(A3)×P(B|A3)=13×910+13×1720+13×1315=0.872

上式 P(B|A1)P(B|A1) 是条件概率,表示零件来自于第一个箱子的条件下并且为合格件的概率。

果不其然,领导抽到一个合格品,然后亲自拿检验器材检验零件,发现质检确实没有问题。最后冲着小李会心一笑,很满意地拍拍屁股离开了。

后续思考

当他走的时候,小李还在思考一个问题,领导抽的这个合格品来自于箱子 1 的概率是多大?也就是求 P(A1|B)P(A1|B),即取到合格品事件 BB 发生情况下来自于 A1A1 的概率。

求 P(A1|B)P(A1|B) 称为求解逆向概率,这个概率往往是不好求解,但是它对应的正向概率 P(B|A1)P(B|A1) 往往相对容易求解

既然 P(A1|B)P(A1|B) 比较难求解,我们做如下转化一下:

P(A1|B)=P(A1,B)P(B)P(A1|B)=P(A1,B)P(B)

其中,P(A1,B)P(A1,B) 表示从第一个箱子抽取且为合格件事件的概率,又被称为联合概率。

又知道联合概率 P(A1,B)P(A1,B) 通过如下方法求得:

P(A1,B)=P(A1)×P(B|A1)=13×910=0.3P(A1,B)=P(A1)×P(B|A1)=13×910=0.3

因此,P(A1|B)P(A1|B) 即零件检验合格且来自箱子 A1A1 的概率为:

P(A1|B)=0.30.872=0.344P(A1|B)=0.30.872=0.344

这个已知事件 BB 发生,预测 BB 来自于哪个子空间的问题,便是贝叶斯公式擅长做的事情。

那么以上故事如何上升进而提取成贝叶斯公式呢?

贝叶斯公式

以上《小李质检往事》的样本空间有 A1A1、A2A2、A3A3 组成,它们把样本空间划分为 3 部分。

如果将划分上升到由 nn 个部分组成,抽中一个合格件为本次随机试验的事件BB,P(Ai)P(Ai) 和 P(B)P(B) 都大于零。

找出事件 BB 属于哪个类别的计算公式:

P(Ai|B)=P(Ai,B)∑nj=1P(Aj)P(B|Aj)=P(Ai)×P(B|Ai)∑nj=1P(Aj)P(B|Aj)P(Ai|B)=P(Ai,B)∑j=1nP(Aj)P(B|Aj)=P(Ai)×P(B|Ai)∑j=1nP(Aj)P(B|Aj)

贝叶斯公式是要找出组成发生事件 BB 的各个样本空间,然后预测事件 BB 的发生来自于 AiAi 的概率。

其中 P(Ai)P(Ai) 称为先验概率。先验概率是在不知道事件 BB 是否发生的情况下获取的概率。比如在抽取零件时,我们不知道能不能抽取到合格件,但是选择任意一个箱子的概率我们往往能通过工作和生活经验提前计算出来,所以称为先验概率。

而 P(Ai|B)P(Ai|B) 是后验概率,知道事件 BB 发生这一新增信息后,判断选择事件 AiAi 发生的概率大小。

案例

问题定义

根据北平市第一实验中学 101 班历年的统计数据,班上努力学习的学生占到 90%,并标记这部分群体为 A0A0 类,学习不用功的占到 10%,并标记这部分群体为 A1A1 类。

将学生群体划分为两类:

  1. 学习努力的学生,发生概率为 P(A0)=0.9P(A0)=0.9
  2. 学习不努力的学生,发生概率为 P(A1)=0.1P(A1)=0.1

再根据历年的升学率,学生只要学生努力学习,考上重点大学的概率为 0.7,则 P(B|A0)=0.7P(B|A0)=0.7。

而不努力的学生考上重点大学的概率为 0.15,则 P(B|A1)=0.15P(B|A1)=0.15。

目标是预测以下问题:

当一个学生考上重点大学时,学生属于群体 A0A0 或 A1A1 的概率各是多少?

应用贝叶斯公式

定义学生考上重点大学为事件 BB,发生的概率为 P(B)P(B)。

样本空间被划分为两类:A0A0 和 A1A1,则

P(B)=P(A0)×P(B|A0)+P(A1)×P(B|A1)=0.9×0.7+0.1×0.15=0.645P(B)=P(A0)×P(B|A0)+P(A1)×P(B|A1)=0.9×0.7+0.1×0.15=0.645

学生考上重点大学且来自群体 A0A0 的概率记为:P(A0|B)P(A0|B)。

由贝叶斯公式可知,若某位学生考上重点大学且属于群体 A0A0 的概率:

P(A0|B)=P(A0,B)P(B)=P(B|A0)×P(A0)P(B)=0.7×0.90.645=0.977P(A0|B)=P(A0,B)P(B)=P(B|A0)×P(A0)P(B)=0.7×0.90.645=0.977

同理,这个考上重点大学的学生属于群体 A1 的概率:

P(A1|B)=P(A1,B)P(B)=P(B|A1)×P(A1)P(B)=0.15×0.10.645=0.023P(A1|B)=P(A1,B)P(B)=P(B|A1)×P(A1)P(B)=0.15×0.10.645=0.023

结论:当一个学生考上重点大学时,学生属于群体 A0A0 或 A1A1 的概率分别为 0.977 和 0.023。

换言之,不努力学习还能上重点的概率是 2.3%,TA 们或许是天才吧。

稍微扩展一点,为接下来讲解朴素贝叶斯做铺垫。如果不是为了准确求解以上问题的概率,而仅仅是为了求出来自哪个群体的概率更大,为此我们就不必关心 P(B)P(B) 的值,只需计算并比较 P(B|Ai)×P(Ai)P(B|Ai)×P(Ai) 的值,在此案例中 i=0,1i=0,1。

很容易得出下面不等式:

P(B|A0)×P(A0)>P(B|A1)×P(A1)P(B|A0)×P(A0)>P(B|A1)×P(A1)

进而判断此学生更可能来自群体 A0A0。

小结

今天通过小李质检往事引出贝叶斯公式,最后通过一个案例解释如何应用贝叶斯公式。

发表评论