朴素贝叶斯

朴素贝叶斯(naive bayes)是基于贝叶斯理论的分类器,它以变量的各个特征之间相互独立为前提,利用条件概率来最大化后验概率或者最小化期望风险,来实现判别其类别。

1. 基础理论

根据条件概率或者贝叶斯理论有:

朴素贝叶斯和逻辑回归 - 图3
其中 Y 为类别集合 {朴素贝叶斯和逻辑回归 - 图4}, X 为输入空间的 n 维向量集合 {朴素贝叶斯和逻辑回归 - 图5} 。

目标为对于给定的一个输入向量,通过模型能够获取其类别(这里取给定x情况下,取概率最大的类别作为最终类别),即

朴素贝叶斯和逻辑回归 - 图6
求解概率 朴素贝叶斯和逻辑回归 - 图7,可以有贝叶斯理论可知,先求解朴素贝叶斯和逻辑回归 - 图8

1.1 求解朴素贝叶斯和逻辑回归 - 图9

这里假设了,对于变量 朴素贝叶斯和逻辑回归 - 图10的不同特征之间相互独立,因此:
朴素贝叶斯和逻辑回归 - 图11

1.2 求解 朴素贝叶斯和逻辑回归 - 图12

有贝叶斯可知:
朴素贝叶斯和逻辑回归 - 图13

但是 朴素贝叶斯和逻辑回归 - 图14 如何确定呢?

2. 最大化后验概率或者最小化期望风险

后验概率最大化即:朴素贝叶斯和逻辑回归 - 图15

假设误差损失函数:
朴素贝叶斯和逻辑回归 - 图16
则模型目标为最小化期望风险即:

朴素贝叶斯和逻辑回归 - 图17

最小化式子(1),只需要对 X=x 逐个最小化即可。

朴素贝叶斯和逻辑回归 - 图18

因此,两者是等价的

3. 贝叶斯的参数估计

前面提到问题:但是 朴素贝叶斯和逻辑回归 - 图19 如何确定呢?
对于离散变量,一个直观的概念是使用其统计学方法来近似估计概率。
对于连续变量,采用一个概率分布拟合其变量分布,如高斯分布

3.1 离散型变量估计

朴素贝叶斯和逻辑回归 - 图20 参与极大似然概率来估计 朴素贝叶斯和逻辑回归 - 图21, 设变量个数为n,其中类别为朴素贝叶斯和逻辑回归 - 图22的有t个,则有:

朴素贝叶斯和逻辑回归 - 图23
即: 朴素贝叶斯和逻辑回归 - 图24
同理可知:
朴素贝叶斯和逻辑回归 - 图25, 其中 朴素贝叶斯和逻辑回归 - 图26 为类别为 朴素贝叶斯和逻辑回归 - 图27的数量,朴素贝叶斯和逻辑回归 - 图28为在类别为朴素贝叶斯和逻辑回归 - 图29的数据中,朴素贝叶斯和逻辑回归 - 图30的数量
由于,对于任意类别 朴素贝叶斯和逻辑回归 - 图31 的值是相同的,因此可以省略…

3.2 连续性变量估计

如果X的各个特征是连续的,这是可以采用某种具体的分布函数来拟合X各个特征的分布,比如采用 Normal Distribution 等等。通常在确定分布函数类型之前,先对数据进行可视化处理,观察其数字特征等,在确定采用哪种分布函数来拟合。

以高斯分布为例,此时 朴素贝叶斯和逻辑回归 - 图32

朴素贝叶斯和逻辑回归 - 图33

这里其实要使用最大似然来估计一下变量朴素贝叶斯和逻辑回归 - 图34朴素贝叶斯和逻辑回归 - 图35

朴素贝叶斯和逻辑回归 - 图36
对上式分别对 朴素贝叶斯和逻辑回归 - 图37朴素贝叶斯和逻辑回归 - 图38求偏导数,并令其为0即可

更简化,由于变量的各个维度都是独立的,因此可以联合分布为各个分布函数的乘积,如果都是符合高斯分布,即有:

朴素贝叶斯和逻辑回归 - 图39

只需要计算 X 的方差和均值即可。

另外,如果 X 得来源于一个公共得资源,可以假设各个特征得方差均相同

if we have reason to believe that noise in the observed Xi _comes from a common source, then we might further assume that all of the σ_ik _are identical, regardless of the attribute _i _or class _k (see the homework exercise on this issue).

贝叶斯模型存在的问题

  1. 无偏差的贝叶斯模型是不现实的?
  2. 思考一下,如果变量的特征一个离散型的,一个是连续性的,如何设计和求解模型呢?

    逻辑回归模型

2. 从朴素贝叶斯到逻辑回归

首先在了解逻辑回归模型的之前,我们以二分类为例,使用朴素贝叶斯的方法来判别分类。

朴素贝叶斯和逻辑回归 - 图40

由于 朴素贝叶斯和逻辑回归 - 图41
带入到式(3) 中,可得:

朴素贝叶斯和逻辑回归 - 图42

这就是 Sigmoid Function

朴素贝叶斯和逻辑回归 - 图43

其中 朴素贝叶斯和逻辑回归 - 图44,可知
朴素贝叶斯和逻辑回归 - 图45 是常数

这里假设 朴素贝叶斯和逻辑回归 - 图46
朴素贝叶斯和逻辑回归 - 图47

朴素贝叶斯和逻辑回归 - 图48, 朴素贝叶斯和逻辑回归 - 图49

则有 朴素贝叶斯和逻辑回归 - 图50

这里其实是有一个差异,因为 w 和 b 之间是有某种依赖关系的,但是如果只看作是 w 和 b变量,则w和b之间相互独立,这样子大大减少了训练的参数,这也就是逻辑回归。

3. 从回归模型到逻辑回归

还是以二分类为例

回归模型为 朴素贝叶斯和逻辑回归 - 图51 , 这里我们想要找到一种模型使:朴素贝叶斯和逻辑回归 - 图52

朴素贝叶斯和逻辑回归 - 图53

这里我们考虑是有 sigmoid funcion

朴素贝叶斯和逻辑回归 - 图54
其取值范围为 (0 , 1 ),自变量取值为朴素贝叶斯和逻辑回归 - 图55, 朴素贝叶斯和逻辑回归 - 图56
其图形如下:

其实就是使用 sigmoid function 来替代 p(y/x)的概率,因此这种模型与前文看到模型不同。前文(贝叶斯)是使用间接计算,即由 P(y) 和 P(x/y) 来间接求的 p(y/c)的概率,这种模型叫做生成模型(Generative model)。而逻辑回归,是直接采用一个函数来模拟 p(y/x)的分布,成为判别模型(discriminative model)

3.1 策略

逻辑回归的损失函数可以分为两种,一种为 maximum likelihood estimation ,另外一种为 the least squares , 一般采用最大似然概率。

想一下为什么?

其损失函数为:假设 朴素贝叶斯和逻辑回归 - 图57

朴素贝叶斯和逻辑回归 - 图58

对于每一个给定的x, 使 朴素贝叶斯和逻辑回归 - 图59 最大。这里直接对w,b 求偏导数,使用随机梯度下降法即可。

朴素贝叶斯和逻辑回归 - 图60

4. 思考一下

  1. 朴素贝叶斯法和逻辑回归做分类问题的时候,有什么区别?各自有什么优势?
  2. 逻辑回归的损失函数使用 cross entropy 和 square error 用什么优劣?

参考

  1. 《统计学习方法》 李航, chapter 4
  2. Machine Learning , Tom M. Mitchell , chapter 3
  3. Classification.pdf) 李宏毅