机器学习(五) 朴素贝叶斯

朴素贝叶斯是一种基于概率统计的分类方法。它在条件独立假设的基础上,使用贝叶斯构建算法,在文本处理领域有广泛的应用。
本文章主要从贝叶斯公式出发,然后介绍朴素贝叶斯的算法思想,再简单介绍贝叶斯网络便于理解。

  • 5.1 贝叶斯公式
  • 5.2 朴素贝叶斯
  • 5.3 算法流程
  • 5.4 算法变种

5.1 贝叶斯公式

贝叶斯公式主要是用来求逆概率。
举一个例子,现在有两种不同品牌方便面,然后两种方便面里面“再来一包”的概率是已知的,现在你室友给你说他重奖了,你需要判断你的室友选择的是哪种牌子的方便面。或者说,你室友选择两种不同牌子方便面的概率是多少。
从例子中来看,我们知道选择两种方便面的概率,以及在这两种方便面下中奖的概率,然后我们需要在已知中奖的情况下求两种方便面的概率。
用字母表示:在已知和的情况下,同时知道、的情况下,要求
公式如下:

推导过程如下:
假如A和B相互独立,则有:
P(A,B)=P(A)P(B)
然后看条件概率公式:
P(B|A)=P(A,B)/P(A)
P(A|B)=P(A,B)/P(B)
两者合并即可得上述公式。
然后由全概率公式:


贝叶斯公式可以变为:

5.2 朴素贝叶斯

上述贝叶斯公式中只考虑了一个变量A对B的影响,而在机器学习算法中,有n维的X对Y造成影响,那么怎样设计让这些特征整体对Y有影响呢?
这里假设n维X,变量之间是相互独立的。
则有:




不同类别下概率最大的即为该样本所属的分类。



注:朴树贝叶斯中朴树二字指的就是特征值X之间相互独立。

5.3 算法流程

假设有一个已标记的数据集,,,现在要求一个为标价的样本所属的类别。
利用贝叶斯公式分别计算P(y1|x),P(y2|x),....,P(yn|x)的值
其中概率值最大的即为该样本的预测类别。

5.4 算法变种

(1)高斯朴素贝叶斯
高斯朴素贝叶斯是指特征属性为连续值时,而且分布服从高斯分布,那 么在计算P(x|y)的时候使用高斯分布的概率公式。
(2)伯努利朴素贝叶斯
伯努利朴素贝叶斯是指当特征属性为连续值时,而且分布服从伯努利分布, 那么在计算P(x|y)的时候使用伯努利分布的概率公式。
(3)多项式朴素贝叶斯
多项式朴素贝叶斯是指特征属性服从多项分布。

小结

朴素贝叶斯的主要优点有:
1)朴素贝叶斯模型发源于古典数学理论,有稳定的分类效率。
2)对小规模的数据表现很好,能个处理多分类任务,适合增量式训练,尤其是数据量超出内存时,我们可以一批批的去增量训练。
3)对缺失数据不太敏感,算法也比较简单,常用于文本分类。
朴素贝叶斯的主要缺点有:   
1) 理论上,朴素贝叶斯模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为朴素贝叶斯模型给定输出类别的情况下,假设属性之间相互独立,这个假设在实际应用中往往是不成立的,在属性个数比较多或者属性之间相关性较大时,分类效果不好。而在属性相关性较小时,朴素贝叶斯性能最为良好。对于这一点,有半朴素贝叶斯之类的算法通过考虑部分关联性适度改进。
2)需要知道先验概率,且先验概率很多时候取决于假设,假设的模型可以有很多种,因此在某些时候会由于假设的先验模型的原因导致预测效果不佳。
3)由于我们是通过先验和数据来决定后验的概率从而决定分类,所以分类决策存在一定的错误率。

注:文章很大程度来源自飘涯的文章:
机器学习(14)——朴素贝叶斯
机器学习(15)——贝叶斯网络
本作者只是将知识点梳理供自己理解。

你可能感兴趣的:(机器学习(五) 朴素贝叶斯)