机器学习之朴素贝叶斯

1、基本概念(原文地址

在机器学习中,朴素贝叶斯是一个分类模型,输出的预测值是离散值。在讲该模型之前首先有必要先了解贝叶斯定理,以该定理为基础的统计学派在统计学领域占据重要的地位,它是从观察者的角度出发,观察者所掌握的信息量左右了观察者对事件的认知。

贝叶斯公式如下:

其中,P(B∣A) 是事件 B 在另一个事件 A已经发生条件下的概率,∑AP(B∣A)P(A) 表示A所有可能情况下的概率,现在要来求事件A在事件B发生情况下的条件概率P(A∣B) P(A|B)P(A∣B),又称后验概率。
举例说明如下:

 

2、模型的定义

朴素贝叶斯是基于贝叶斯定理与特征条件独立假设的分裂方法。首先我们来了解下贝叶斯定理和所要建立的模型。对于给定的数据集

假定输出的类别yi ∈ {c1, c2, ...., ck},朴素贝叶斯通过训练数据集的条件概率分布P(x|y)来学习联合概率。因此在这里我们近视的求先验概率分布和条件概率分布来替代它。先验概率分布如下:

对于先验概率的求解,可以根据大数定理认为就是该类别在总体样本中的比例。条件概率分布如下:

通过先验概率和条件概率的求解就可以学习到联合概率,然而在这里的条件概率也是不好求的,若直接求解的话,参数的个数是所有特征取值个数的连乘。因此在这里引入了朴素贝叶斯思想。

朴素贝叶斯法假定上面的条件概率中各特征之前是相互独立的。此时我们可以做链式展开,表达式如下:

朴素贝叶斯法实际上是有求联合概率分布的过程,以及通过联合概率求后验概率(也是一种条件概率)的过程,像这类的分类器属于生成式模型。区别于它的就是判别生成式模型,常见的有决策树,逻辑回归,SVM等,这类模型都是直接生成结果(可能是P(y) 或者P(y|x) )。而贝叶斯是要先计算p(x,y)p(x,y)的,了解了先验概率和条件概率的计算过程,我们再来看看贝叶斯定理是如何计算后验概率的

引入朴素的思想,假设各特征之间相互独立

这就是朴素贝叶斯分类的基本公式,因此我们的模型可以建为

而对于右边式子中的分母,分母是一个和类别无关的式子,也就是说对于所有的ck都是一样的,然后在这里我们只是求的最大概率的类别,因此去掉这一项是不会影响结果的(即对表达式进行同比例的放大或缩小是不会影响最大解的判断的),最终的式子可以写成

3、后验概率最大化

先来了解下0-1损失函数:

此时的期望风险函数,在优化模型的时候我们的目的是为了使得期望损失最小化

而对于朴素贝叶斯模型,期望损失函数可以表示为

这里面的损失函数和0-1损失有所不同,可以看成分类到每个类别的概率乘以0-1损失函数,也就是说在k中只有一次L函数会取0,其余的都取1,此时我们还要使得取0时的条件概率P(ck|x)是最大的,这样整体的期望损失就是最小的。具体的数学推导过程如下:

为了使得期望风险最小化就是使得后验概率最大化。

4、朴素贝叶斯的参数估计

采用极大似然估计来求解先验概率和条件概率,先验概率的极大似然估计

条件概率的极大似然估计

但是用极大似然估计可能会出现概率值为0的情况。这时候会影响到后验概率的计算(因为链式求解时,一旦存在某一个值为0,则会导致整个链式的解为0,也就是求得的条件概率为0).因此我们会采用贝叶斯估计,先验概率的表达式:

贝叶斯估计的条件概率表达式:

因此朴素贝叶斯模型只要计算出训练集上各类参数,比如先验概率,各特征在各类别上的概率(这些是用来计算条件概率的)等,基于这些学得的值来预测。

5、朴素贝叶斯总结

朴素贝叶斯的优点:

  1)朴素贝叶斯模型分类效率稳定

  2)对小规模的数据集表现很好,能处理多分类问题,适合增量式训练,尤其是数据集超出内存后,我们可以一批批的去训练

  3)对缺失数据不太敏感,算法比较简单,常用于文本分类

朴素贝叶斯的缺点:

  1)理论上,朴素贝叶斯较其他模型相比具有最小的误差率,但实际上却不一定,因为朴素贝叶斯引进了各特征之间相互独立这一假设。因此在各特征之间相关性较强时,朴素贝叶斯表现一般,但是在各特征之间独立性很强时,朴素贝叶斯表现很好

  2)通过先验和数据来决定后验的概率从而决定分类,所以分类决策存在一定的错误率

  3)对输入数据的表达形式很敏感

6、实例解析

详细解析(点击)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值