一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器

一起学西瓜书07 贝尔斯分类器

(三)贝叶斯分类器

朴素贝叶斯分类器

朴素贝叶斯分类器用到的知识就是我们在概率论里面学到的贝叶斯公式
这里的前提是属性条件都相互独立, 也就是说我们可以把它们连乘起来
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
下图给出了朴素贝叶斯分类器的求解关键,我将使用书上的一个实际案例来分析理解它一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器

案例

下图是我们已知的西瓜数据集,也来源于西瓜书
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
我们的目的是使用朴素贝叶斯分类器来判断下列这组测试数据的结果是不是好瓜
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
结合之前的求解关键,我将一步一步来解析这个过程是怎么进行的

0.数据类比

下图是书上的原话, 在这个案例当中 是一个二分类问题, 所以只有 c1=c_1=是好瓜c2=c_2=不是好瓜这两种情况
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器

1.先验概率P(c)P(c)

书中的定义给出先验概率的计算公式
P(c)=DcDP(c) = \frac{|D_c|}{|D|}
也就是计算是否好瓜的两个概率
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器

2.条件概率P(xic)P(x_i|c)

条件概率对于离散和连续的数据有不同的计算方法,下图是书上的原话
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
在本次案例中,离散属性计算如下
P(xic)P(x_i|c)代表在c的条件下xix_i的概率是多少

在这道案例中, 一共有6种不同的离散属性,每种属性有有着不同的值,所以对他们依次求条件概率,目的是在后面的式子里要连乘
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
我们还看到有两个连续的属性 密度和含糖率
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
我们的做法就是假设他们都服从正态分布,上图的数据我们分成四份

  • 是好瓜 密度
  • 是好瓜 含糖率
  • 不是好瓜 密度
  • 不是好瓜 含糖率

然后对着四组数据分别求他们的均值和方差,就可以近似为它们的正态分布参数
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
因为我们的测试集里面连续值是0.697和0.460 所以把这两个数据代入 正态分布的公式里面,就可以计算出下图的式子

一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器

3.P(c)P(xic)P(c)*P(x_i|c)

一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
也就是上面这个式子,就把之前计算到的数据都代入进去,即可
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器

拉普拉斯修正

简单的理解来说,就是在我们连乘的式子当中,如果有一个为0,那么我们这个分类器就没什么意义了
为了避免这种情况的产生,所以就引用了拉普拉斯修正
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
如上图的式子,在我们的案例里面
P(c)P(c)的修改如下
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
P(xc)P(x|c)的修改如下
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
对于不存在的属性清脆来说,它也不会变成零,而是如下
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
一起学西瓜书07 贝尔斯分类器(三)朴素贝叶斯分类器
可以看到,拉普拉斯修正是很重要的,也起到了很大的作用