朴素贝叶斯分类

来源:互联网 发布:nginx的日志文件在哪 编辑:程序博客网 时间:2024/06/04 20:03

贝叶斯分类法是统计学的分类方法,它可以预测类隶属关系的概率,如一个给定的元组属于一个特定类的概率。
贝叶斯分类基于贝叶斯定理,经过研究发现,一种被称为朴素贝叶斯分类法的分类法的性能相当好。
在学习朴素贝叶斯分类器之前,我们要先学习贝叶斯定理。

贝叶斯定理
这个贝叶斯定理说白了就是我们给定X的属性描述,然后找出元组X属于类C的概率。
重点关注这个式子
这里写图片描述

P(X|H)= 在购买计算机的用户中,用户是35岁且收入在4万美元的概率;
P(H)=所有集中用户购买计算机的概率;
P(X)=所有集中用户是35岁且收入在4万美元的概率。

而最后,我们要得求的就是

P(H|X)=在已知顾客的年龄是35岁和收入在4万美元的情况下,该用户将购买计算机的概率;

这个有很好的现实基础。例如我们要预测固定群体购买计算机的概率,则就可以从已有的数据中得到所需数据然后再计算就可以得到预测概率了。(分析历史数据,公式右边的数据全部可以计算出来。)
其实,我们应该能想到,整个式子里面最最重要的就是P(X|H)这个条件概率

朴素贝叶斯分类
而朴素贝叶斯分类就是基于贝叶斯定理条件独立性假设的分类方法。
它有两个最关键的点
1、 该算法的理论核心是贝叶斯定理;
2、 它是基于条件独立性假设这个强假设之下的。

下面,我们从理论角度讲解朴素贝叶斯分类。


这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

OK,这个理论虽然有点长,但实际上很好理解。

下面我们来一个实际的例子。
假设现有如下数据集


这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

OK,到这里,我们不管是从理论上还是实际上都对朴素贝叶斯分类进行了细致的说明。
其实,由上述的推导可知,朴素贝叶斯分类是将实例分到后验概率最大的类中。这等价于期望风险最小化(关于这一点,在周志华老师的书里面有详细谈到)。这就是朴素贝叶斯法所采用的原理。

现在再仔细的想一想它两个最核心的点:
1、 该算法的理论核心是贝叶斯定理;
2、 它是基于条件独立性假设这个强假设之下的。

其中特别是第二点。正是因为假设了这一点,所以我们才能够很容易的通过贝叶斯定理进行计算。而这也正是”朴素”二字的含义。

到这里,该算法基本上就讲解完了。

下面考虑这样一种非常常见的情况,我们该如何处理。
根据类条件独立假设,用概率P(x1|Ci),P(x2|Ci),……,P(xn|Ci)的乘积来估计P(X|Ci)。
而如果这个时候,其中某一项的概率为0,例如P(x1|Ci)=0,那么根据运算法则整个式子都等于零了。这显然是不合理的。因此,拉普拉斯校准出现了。

来看一个例子。


这里写图片描述

本篇内容,周志华老师在西瓜书里面做了详细的理论分析。
他提到

贝叶斯决策论是概率框架下,实施决策的基本方法。对于分类任务来说,在所有相关概率都已知的理想情况下,贝叶斯决策论考虑如何基于这些概率和误损失来选择最优的类别标记。

所以说,实际上贝叶斯分类实际上是基于概率的,而且还是抽样概率。在满足假设条件下(一是假定独立同分布,二是假定所做假设概率分布符合真实情况(不清楚的建议看看贝叶斯学派对于“参数估计”的处理方法。)),来进行的一种估计
其中,值得大家特别注意的是,整个贝叶斯估计结果的准确性严重依赖于所假设的概率分布形式是否符合潜在的真实数据分布。所以说,在实际生活中,我们想要做出能较好地接近潜在真实分布的假设,往往需在一定程度上利用关于应用任务本身的经验知识,若仅凭猜测来假设概率分布形式,则很有可能会产生误导性的结果。

在前面,我们也已经提到过,整个贝叶斯公式里面最最重要的就是那个联合概率分布。然而实际上我们是难以从有限的训练样本直接估计而得。因此,为了避开这个障碍,我们采用了“属性条件独立性假设”这一做法。

参考文章
数据挖掘(概念与技术)-第三版-Jiawei Han
朴素贝叶斯算法原理小结

原创粉丝点击