文档章节

R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)

C
 Claroja
发布于 2017/05/08 23:20
字数 316
阅读 91
收藏 0

1.朴素贝叶斯分类原理解析
根据已知的先验概率P(A|B),利用贝叶斯公式P(B|A)=P(A|B)P(B)/P(A)求出后验概率P(B|A),即该样本属于某一类的概率,然后选择具有最大后验概率的类作为该样本所属的类.
也就是说,对于给出的待分类样本,求出在此样本出现条件下各个类别出现的概率,哪个最大,就认为此样本属于哪个类别.
其优势在于不怕噪声和无关变量,不足之处在于,它假设各个特征属性是无关的,而现实情况往往不是如此.
2.在R语言中的应用
朴素贝叶斯分类主要用到了klaR包里面的NaiveBayes(formula,data,...,subset,na,action=na.pass)函数。
3.以iris数据集为例进行判别分析
1)应用模型并观察结果

library(klaR) fit_Bayes1=NaiveBayes(Species~.,data_train) fit_Bayes1[1:length(fit_Bayes1)]

R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)
R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)


2)做出密度曲线
plot(fit_Bayes1)
R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)
R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)
R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)
R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)


3)预测分析并对模型进行评测

pre_Bayes1=predict(fit_Bayes1,data_test) pre_Bayes1

R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)

table(data_test$Species,pre_Bayes1$class)
 error_Bayes1=sum(as.numeric(as.numeric(pre_Bayes1$class)!=as.numeric(data_test$Species)))/nrow(data_test); error_Bayes1

R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)

http://www.ruanyifeng.com/blog/2013/12/naive_bayes_classifier.html

© 著作权归作者所有

C
粉丝 0
博文 128
码字总数 44892
作品 0
南京
私信 提问
机器学习算法汇总笔记 - 知乎

这是自然语言处理和机器学习笔记系列的第三篇。跟前两篇类似,都是简单的罗列,期望作为进一步深入学习的线索。 1,定义 研究怎样使用计算机模拟或实现人类的学习行为,是人工智能的重要课题...

学习python网络爬虫建设智慧时空数据库
前天
0
0
PU-learing:解决正负样本不足利器(R语言)

原文链接:PU-learing:解决正负样本不足利器(R语言) 微信公众号:机器学习养成记 搜索添加微信公众号:chenchenwings 在实际分类场景中,经常会遇到类似这样的问题:只有标记了的正样本,和未...

小沁_3ca9
03/03
0
0
机器学习13种算法的优缺点,你都知道哪些?

正则化算法(Regularization Algorithms) 集成算法(Ensemble Algorithms) 决策树算法(Decision Tree Algorithm) 回归(Regression) 人工神经网络(Artificial Neural Network) 深度学...

技术小能手
2018/07/27
0
0
《机器学习》-- 贝叶斯分类器

前 言 如今机器学习和深度学习如此火热,相信很多像我一样的普通程序猿或者还在大学校园中的同学,一定也想参与其中。不管是出于好奇,还是自身充电,跟上潮流,我觉得都值得试一试。对于自己...

机器学习算法工程师
2018/05/14
0
0
统计学习方法 | 朴素贝叶斯法

01 分类方法 之前我们学习了一种分类方法——K近邻法(KNN),今天我们再学习一种更常用的分类方法 朴素贝叶斯法 这里,我们先区分一下“分类”和“聚类” 分类的目的是学会一个分类函数或分类...

邓莎
2018/05/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

32位与64位Linux系统下各类型长度对比

64 位的优点:64 位的应用程序可以直接访问 4EB 的内存和文件大小最大达到4 EB(2 的 63 次幂);可以访问大型数据库。本文介绍的是64位下C语言开发程序注意事项。 1. 32 位和 64 位C数据类型...

mskk
11分钟前
2
0
Vue 实现点击空白处隐藏某节点(三种方式:指令、普通、遮罩)

在项目中往往会有这样的需求: 弹出框(或Popover)在 show 后,点击空白处可以将其 hide。 针对此需求,整理了三种实现方式,大家按实际情况选择。 当然,我们做项目肯定会用到 UI 框架,常...

张兴华ZHero
18分钟前
3
0
SpringBoot激活profiles你知道几种方式?

多环境是最常见的配置隔离方式之一,可以根据不同的运行环境提供不同的配置信息来应对不同的业务场景,在SpringBoot内支持了多种配置隔离的方式,可以激活单个或者多个配置文件。 激活Profi...

恒宇少年
19分钟前
5
0
PDF修改文字的方法有哪些?怎么修改PDF文件中的文字

PDF修改文字一直以来都是一个难以解决的问题,很多的办公族在办公的时候会有修改PDF文件中的文字的需要,可是PDF文件一般是不能进行编辑和修改的,难道就没有什么办法解决这个问题了嘛?不要...

趣味办公社
22分钟前
2
0
企业组织中采用服务网格的挑战

作者:Christian Posta 译者:罗广明 原文:https://blog.christianposta.com/challenges-of-adopting-service-mesh-in-enterprise-organizations/ 编者按 本文作者介绍了企业组织采用服务网...

jimmysong
32分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部