Navie Bayes算法(朴素贝叶斯算法)
朴素贝叶斯算法是一种分类算法,其思想就是根据某些个先验概率计算Y变量属于某个类别的后验概率。
朴素贝叶斯分类器(Naive Bayes Classifier,简称NBC),NBC基于一个简单的假定:给定目标值时属性之间相互条件独立。
可以理解为,所谓朴素贝叶斯算法,
朴素:特征条件独立
贝叶斯:基于贝叶斯定理
贝叶斯定理:
朴素贝叶斯分类的正式定义如下:
1、设为一个待分类项,而每个a为x的一个特征属性。
2、有类别集合设。
3、计算。
4、如果,则,则
。
那么现在的关键就是如何计算第3步中的各个条件概率。我们可以这么做:
1、找到一个已知分类的待分类项集合,这个集合叫做训练样本集。
2、统计得到在各类别下各个特征属性的条件概率估计。即
3、如果各个特征属性是条件独立的,则根据贝叶斯定理有如下推导:
因为分母对于所有类别为常数,因为我们只要将分子最大化皆可。又因为各特征属性是条件独立的,所以有:
特点:
(1)贝叶斯分类并不把一个对象绝对地指派给某一类,而是通过计算得出属于某一类的概率,具有最大概率的类便是该对象所属的类;
(2)一般情况下在贝叶斯分类中所有的属性都潜在地起作用,即并不是一个或几个属性决定分类,而是所有的属性都参与分类;
(3)贝叶斯分类对象的属性可以是离散的、连续的,也可以是混合的
优点:
1.朴素贝叶斯模型发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。
2.NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。
缺点:
1. 理论上,NBC模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的(可以考虑用聚类算法先将相关性较大的属性聚类),这给NBC模型的正确分类带来了一定影响。在属性个数比较多或者属性之间相关性较大时,NBC模型的分类效率比不上决策树模型。而在属性相关性较小时,NBC模型的性能最为良好。
2.需要知道先验概率。
3.分类决策存在错误率