朴素贝叶斯(naive bayes
)是基于贝叶斯理论的分类器,它以变量的各个特征之间相互独立为前提,利用条件概率来最大化后验概率或者最小化期望风险,来实现判别其类别。
1. 基础理论
根据条件概率或者贝叶斯理论有:
其中 Y 为类别集合 {
X 为输入空间的 n 维向量集合 {
目标为对于给定的一个输入向量,通过模型能够获取其类别(这里取给定x情况下,取概率最大的类别作为最终类别),即
求解概率
1.1 求解
这里假设了,对于变量
的不同特征之间相互独立,因此:
1.2 求解
有贝叶斯可知:
但是
如何确定呢?
2. 最大化后验概率或者最小化期望风险
后验概率最大化即:
假设误差损失函数:
则模型目标为最小化期望风险即:
最小化式子(1),只需要对 X=x 逐个最小化即可。
因此,两者是等价的
3. 贝叶斯的参数估计
前面提到问题:但是
对于离散变量,一个直观的概念是使用其统计学方法来近似估计概率。
对于连续变量,采用一个概率分布拟合其变量分布,如高斯分布
3.1 离散型变量估计
令
即:
同理可知:
由于,对于任意类别
3.2 连续性变量估计
如果X的各个特征是连续的,这是可以采用某种具体的分布函数来拟合X各个特征的分布,比如采用 Normal Distribution
等等。通常在确定分布函数类型之前,先对数据进行可视化处理,观察其数字特征等,在确定采用哪种分布函数来拟合。
以高斯分布为例,此时
这里其实要使用最大似然来估计一下变量
和
对上式分别对
更简化,由于变量的各个维度都是独立的,因此可以联合分布为各个分布函数的乘积,如果都是符合高斯分布,即有:
只需要计算 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).
贝叶斯模型存在的问题
- 无偏差的贝叶斯模型是不现实的?
- 思考一下,如果变量的特征一个离散型的,一个是连续性的,如何设计和求解模型呢?
逻辑回归模型
2. 从朴素贝叶斯到逻辑回归
首先在了解逻辑回归模型的之前,我们以二分类为例,使用朴素贝叶斯的方法来判别分类。
由于
带入到式(3) 中,可得:
这就是 Sigmoid Function
其中
可知
这里假设
令
则有
这里其实是有一个差异,因为 w
和 b
之间是有某种依赖关系的,但是如果只看作是 w
和 b
变量,则w
和b
之间相互独立,这样子大大减少了训练的参数,这也就是逻辑回归。
3. 从回归模型到逻辑回归
还是以二分类为例
回归模型为
这里我们考虑是有 sigmoid funcion
其取值范围为 (0 , 1 ),自变量取值为
其图形如下:
其实就是使用 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
, 一般采用最大似然概率。
想一下为什么?
其损失函数为:假设
则
对于每一个给定的x, 使
4. 思考一下
- 朴素贝叶斯法和逻辑回归做分类问题的时候,有什么区别?各自有什么优势?
- 逻辑回归的损失函数使用
cross entropy
和square error
用什么优劣?
参考
- 《统计学习方法》 李航, chapter 4
- Machine Learning , Tom M. Mitchell , chapter 3
- Classification 李宏毅
- 本文标题:朴素贝叶斯
- 本文作者:codeflysafe
- 创建时间:2020-09-22 16:14:19
- 本文链接:https://codeflysafe.github.io/2020/09/22/朴素贝叶斯和逻辑回归/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!