朴素贝叶斯算法是基于贝叶斯定理和假设条件独立的分类方式。可以说贝叶斯定理是算法的核心。朴素贝叶斯分类器(Naive Bayes Classifier|NBC)发源于古典数学理论,有着坚实的理论基础以及稳定的分类效率,模型所需参数较少,对缺失值不敏感,算法也比较简单。
先来简单说一下bayes定理:
P(A|B)=P(B|A)*P(A)/P(B)
其中P(A|B) :后验概率
P(B|A) :似然概率
P(A) :先验概率
P(B) :边际似然概率
(模型中的这些值都是程序自动计算的)
算法通过待测对象在个分类中的概率来分类,与其他分类算法相比,朴素贝叶斯更实用于那些,数据变量之间相关性很小的数据集,否则,算法的分类效果没有么好。
naiveBayes算法在R中的实现:
R中提供的e1071包中的navieBayes函数
model <- navieBayes(label~.,data,laplace = ?)
or model <- navieBayes(data,label,laplace=?)
pred <- predict(model,test,[type='class'or'raw'])
其中label 是因子类型 raw 输出为概率,class输出为label
R--NaiveBayes
最新推荐文章于 2023-03-09 14:18:23 发布