社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

【机器学习基础】朴素贝叶斯分类器完全解读

杉杉不要bug • 6 年前 • 658 次点击  
阅读 15

【机器学习基础】朴素贝叶斯分类器完全解读

【基础知识】

【联合概率】 表示两个事件共同发生的概率。A与B的联合概率表示为 P(AB) 或者P(A,B)。

【条件概率】 条件概率是指事件A在事件B发生的条件下发生的概率.

P(A|B)=P(A,B)/P(B)

【全概率公式】 若事件A1,A2,…构成一个完备事件组且都有正概率,则对任意一个事件B,有如下公式成立:

【贝叶斯公式内涵】

想理解朴素贝叶斯,就要先明白什么是贝叶斯公式。贝叶斯公式主要是描述了两种条件概率之间的关系,即P(A|B)与P(B|A)的关系。

P(A|B)=P(A)*P(B|A)/P(B)

在这个公式当中,相当于我们最后想知道在事件B的条件下事件A发生的概率,

P(A):事件A的先验概率,即在没有任何条件的情况下吗,对事件的基本判断。

P(A|B):后验概率,是在条件B之下事件A发生的概率。

P(B|A)/P(B):相当于一个调整因子,使得先验概率经过调整得到后验概率,当这部分等于1,说明事件B的加入对于判断A的可能性没有帮助,先验等于后验。当它大于1,说明A发生的概率由于B的加入增大了。

【朴素贝叶斯原理】

朴素二字从哪来的,因为在这个分类器中,我们假设在类别确定的情况下,各个特征之间是条件独立的,这就使得贝叶斯变的简单朴素,但是以牺牲一些分类准确性为代价,因为我们无法保证各个特征之间真的完全不相关。所以说,朴素贝叶斯比较适合特征之间相关性较弱的分类模型。

由于我们假设在类别确定的情况下各个特征之间条件独立,那么当有n个特征的时候

其实朴素贝叶斯分类器就是在给定特征x的情况下,看该数据属于各个类的概率,选概率最大的那一个为最终类。
所以说,最终的分类器就是公式4.7,由于分母部分对于一个固定的x来说不管计算y=c1,还是y=cn都是一样的,所以最终的结果就是取决于分子。

后验概率的最大化背后的原理等同于期望误差最小化,证明过程如下:

【举个例子】

如果觉得已经懂了,做个例子:

【解答过程】

【思考题】

在对特征空间的划分上,朴素贝叶斯与决策树的区别?

答案参考我师兄的这篇朴素贝叶斯

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/33048
 
658 次点击