ML3.1 介绍e1071包实施朴素贝叶斯分类的函数,本例使用klaR包中的NaiveBayes函数,因为该函数较之前者增加了两个功能,一个是可以输入先验概率,另一个是在正态分布基础上增加了核平滑密度函数。为了避免过度拟合,在训练时还要将数据分割进行多重检验,所以我们还使用了caret包的一些函数进行配合。

caret::train

语法: train(form, data, ..., weights, subset, na.action = na.fail, contrasts = NULL)

  • 安装程序包

    install.packages("caret")
    install.packages("mlbench")
    install.package("klaR")
  • 创建训练集和测试集
    library(lattice)
    library(ggplot2)
    library(caret)
    library(mlbench)
    library(MASS)
    library(klaR) # 使用朴素贝叶斯建模,这里使用了三次10折交叉检验得到30个结果
    fitControl <- trainControl(method = "repeatedcv", number = 10, repeats = 3,returnResamp = "all")
    model1 <- train(Species~., data = iris.train,method='nb',trControl = fitControl)
  • 加载包 使用朴素贝叶斯建模
    fitControl <- trainControl(method = "repeatedcv", number = 10, repeats = 3,returnResamp = "all")
    model1 <- train(Species~., data = iris.train,method='nb',trControl = fitControl)
  • 返回测试数据的混淆矩阵
    > pred3 <- predict(model1, iris.test, type="raw")
    > table(pred3,iris.test$Species) pred3 setosa versicolor virginica
    setosa 10 0 0
    versicolor 0 18 2
    virginica 0 0 20

ML(3.2): NavieBayes R_kalR的更多相关文章

  1. ML(3.1): NavieBayes R_e1071

    朴素贝叶斯方法是一种使用先验概率去计算后验概率的方法, 具体见ML(3): 贝叶斯方法 R包 ① e1071::e1071 ② klaR::klaR 参考资料:https://en.wikibooks ...

  2. ML(4): NavieBayes在R中的应用

    朴素贝叶斯方法是一种使用先验概率去计算后验概率的方法, 具体见上一节. 算法包:e1071 函数:navieBayes(formule,data,laplace=0,...,subset,na.act ...

  3. 贝叶斯、朴素贝叶斯及调用spark官网 mllib NavieBayes示例

    贝叶斯法则   机器学习的任务:在给定训练数据A时,确定假设空间B中的最佳假设.   最佳假设:一种方法是把它定义为在给定数据A以及B中不同假设的先验概率的有关知识下的最可能假设   贝叶斯理论提供了 ...

  4. Spark2 ML 学习札记

    摘要: 1.pipeline 模式 1.1相关概念 1.2代码示例 2.特征提取,转换以及特征选择 2.1特征提取 2.2特征转换 2.3特征选择 3.模型选择与参数选择 3.1 交叉验证 3.2 训 ...

  5. [Machine Learning & Algorithm]CAML机器学习系列2:深入浅出ML之Entropy-Based家族

    声明:本博客整理自博友@zhouyong计算广告与机器学习-技术共享平台,尊重原创,欢迎感兴趣的博友查看原文. 写在前面 记得在<Pattern Recognition And Machine ...

  6. [Machine Learning & Algorithm]CAML机器学习系列1:深入浅出ML之Regression家族

    声明:本博客整理自博友@zhouyong计算广告与机器学习-技术共享平台,尊重原创,欢迎感兴趣的博友查看原文. 符号定义 这里定义<深入浅出ML>系列中涉及到的公式符号,如无特殊说明,符号 ...

  7. 机器学习 - ML

    CNCC - 2016 | 机器学习(原文链接) Machine Learning - ML,机器学习起源于人工智能,是AI的一个分支. 机器学习的理论基础:计算学习理论 - Computationa ...

  8. ML 基础知识

    A computer program is said to learn from experience E with respect to some task T and some performan ...

  9. [OpenCV] Samples 06: [ML] logistic regression

    logistic regression,这个算法只能解决简单的线性二分类,在众多的机器学习分类算法中并不出众,但它能被改进为多分类,并换了另外一个名字softmax, 这可是深度学习中响当当的分类算法 ...

随机推荐

  1. mysql创建索引-----高性能(五)

    转载地址:https://www.cnblogs.com/llzhang123/p/7889382.html 索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或 ...

  2. windows下python安装Numpy、Scipy、matplotlib模块

    来源http://blog.csdn.net/Katrina_ALi/article/details/64922107 http://blog.csdn.net/qq_16633405/article ...

  3. PHP:第二章——PHP中的for语句

    知识点一:for语句    语法格式:    for(expr1;expr2;expr3){        //代码块;    }     说明:     expr1:循环开始前,无条件的执行一次,并 ...

  4. Nodejs之mssql模块的封装

    在nodejs中,mssql模块支持sqlserver数据库操作.今天将mssql模块的某些功能封装为一个类,方便以后调用.封装的功能有执行存储过程,执行查询语句操作等.如果本篇文章对大家有帮助,那就 ...

  5. logging- 日志记录

    https://www.cnblogs.com/yyds/p/6901864.html logging提供给了两种记录日志的方式: 第一种方式是使用logging提供的模块级别的函数 import l ...

  6. 软工作业No.9 第六周 事后诸葛亮分析报告

    甜美女孩项目2048结果 整理:邓画月.曾祎祺 设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 弄一个给用户消磨时间的游戏,定义的很清楚.该游戏玩 ...

  7. 【笔记】《深入浅出MFC》第5章 总观Application Framework

    凝聚性强.组织化强的类库就是Application Framework.一组合作无间的对象,彼此藉消息的流动而沟通,并且互相调用对方的函数以求完成任务,这就是Application Framework ...

  8. 入门级:理解FAT32文件系统(转载翻译)

    FAT(File Allocation Table ) 这个网页的目的是帮助你理解怎么样在微软FAT32文件系统下取得数据,处理的硬盘的大小通常在500M到几百G之间.FAT是一个相对简单和纯净的文件 ...

  9. FlytestingToolkit工具派送,懒人的测试思考

    工欲善其事必先利其器,在IT路上摸爬这些年,去年我们分享了<Fiddler录制jmeter脚本,干货分享>,今天我们有另外的思考,我懒,故我思考. 下载解压后是这样的: 双击 Flytes ...

  10. django中的ajax组件

    目录 django中的ajax 向服务器发送请求的途径 Ajax的特点 基于jquery实现的ajax请求 利用ajax实现计算器 利用ajax实现登陆认证 利用form表单进行文件上传 利用ajax ...