预备知识
- 先验概率
事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。一般都是单独事件概率,如P(X),P(Y)。 - 条件概率
一个事件发生后另一个事件发生的概率。一般的形式为P(X|Y),表示Y发生的条件下X发生的概率。 - 后验概率
事件发生后求的反向条件概率;或者说,基于先验概率求得的反向条件概率。表达形式与条件概率相同。如P(Y|X) -
贝叶斯公式基本原理:P(X,Y)=P(Y|X)P(X)=P(X|Y)P(Y) => P(Y|X)=P(X|Y)P(Y)/P(X)
推导过程
朴素贝叶斯法对条件概率分布作了条件独立性的假设,这是一个较强的假设,朴素贝叶斯法因此得名。
假设在分类确定的情况下,X的各特征相互独立。
由贝叶斯公式:P(Y|X)=P(X|Y)P(Y)/P(X),于是对于后验概率P(Y|X),有:
将上面两个公式代入得:
于是朴素贝叶斯分类器可表示为(见后验概率最大化得含义):
由于对同一个实例,分母对所有都是相同得,P(X=x)的概率相同,故而只需考虑分子部分即可
后验概率最大化
朴素贝叶斯的主要优点有:
1)朴素贝叶斯模型发源于古典数学理论,有稳定的分类效率。
2)对小规模的数据表现很好,能处理多分类任务,适合增量式训练,尤其是数据量超出内存时,我们可以一批批的去增量训练。
3)对缺失数据不太敏感,算法也比较简单,常用于文本分类。
朴素贝叶斯的主要缺点有:
1) 理论上,朴素贝叶斯模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为朴素贝叶斯模型给定输出类别的情况下,假设属性之间相互独立,这个假设在实际应用中往往是不成立的,在属性个数比较多或者属性之间相关性较大时,分类效果不好。而在属性相关性较小时,朴素贝叶斯性能最为良好。对于这一点,有半朴素贝叶斯之类的算法通过考虑部分关联性适度改进。
2)需要知道先验概率,且先验概率很多时候取决于假设,假设的模型可以有很多种,因此在某些时候会由于假设的先验模型的原因导致预测效果不佳。
3)由于我们是通过先验和数据来决定后验的概率从而决定分类,所以分类决策存在一定的错误率。
4)对输入数据的表达形式很敏感。