十折交叉验证和混淆矩阵
一、十折交叉验证
前面提到了数据集分为训练集和测试集,训练集用来训练模型,而测试集用来测试模型的好坏,那么单一的测试是否就能很好的衡量一个模型的性能呢?
答案自然是否定的,单一的测试集具有偶然性和随机性。因此本文介绍一种衡量模型(比如分类器)性能的方法——十折交叉验证(10-fold cross validation)
什么是十折交叉验证?
假设有个数据集,需要建立一个分类器,如何验证分类器的性能呢?
将数据集随机均为为10份,依次选择某1份作为测试集,其他9份作为训练集,训练出来的模型对测试集进行分类,并统计分类结果,就这样,重复10次实验,综合所有分类结果,就可以得到比较稳定的评价结果(当然,由于是随机划分数据集,因此每次运行结果都不一致)。
附:当然也可以选择k折交叉验证,最极端的就是留1交叉验证,每次只留一个样本做测试集,但这样的计算规模太大。
二、混淆矩阵
混淆矩阵:confuse matrix
假设有n个类别,那么分类结果的统计可以通过一个n*n的矩阵来表示,即混淆矩阵。
对角线即为分类正确的样本数。
十折交叉验证和混淆矩阵相关推荐
- 十折交叉验证10-fold cross validation, 数据集划分 训练集 验证集 测试集
机器学习 数据挖掘 数据集划分 训练集 验证集 测试集 Q:如何将数据集划分为测试数据集和训练数据集? A:three ways: 1.像sklearn一样,提供一个将数据集切分成训练集和测试集的函数 ...
- 周志华西瓜书3.4题——用十折交叉验证法和留一法估计对率回归的误差
周志华西瓜书3.4题. 本文所编写的代码均使用python3.7进行调试,依靠的sklearn进行的实验. 第一步,导入iris数据集,数据集使用sklearn包里面自带的. from sklearn ...
- R语言选模型/用AIC BIC adjustRsq 十折交叉验证 LOOCV等验证/择参 以fama三因子模型和CAMP模型为例@[理科班的习习同学
R语言选模型/用AIC BIC adjustRsq 十折交叉验证 LOOCV等验证/择参 以fama三因子模型和CAMP模型为例@理科班的习习同学 引入包与数据预处理 install.packages ...
- R语言惩罚逻辑回归、线性判别分析LDA、广义加性模型GAM、多元自适应回归样条MARS、KNN、二次判别分析QDA、决策树、随机森林、支持向量机SVM分类优质劣质葡萄酒十折交叉验证和ROC可视化
最近我们被客户要求撰写关于葡萄酒的研究报告,包括一些图形和统计输出. 介绍 数据包含有关葡萄牙"Vinho Verde"葡萄酒的信息.该数据集有1599个观测值和12个变量,分别是 ...
- 十折交叉验证pythoniris_数据集的划分——交叉验证法
本文作者:王 歌 文字编辑:戴 雯 技术总编:张 邯Python云端培训课程火热招生中~重大通知!!!爬虫俱乐部于2020年7月11日至14日在线上举行为期四天的Stata编程技术定制培训,招生工作已 ...
- C语言十折交叉验证,R随机森林交叉验证 + 进度条
library(data.table) library(randomForest) data str(data) #交叉验证,使用rf预测sepal.length k = 5 data$id list ...
- 十折交叉验证pythoniris_python机器学习-交叉验证(cross-vaildation)
K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一. 所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表. kNN算 ...
- 机器学习代码实战——K折交叉验证(K Fold Cross Validation)
文章目录 1.实验目的 2.导入数据和必要模块 3.比较不同模型预测准确率 3.1.逻辑回归 3.2.决策树 3.3.支持向量机 3.4.随机森林 1.实验目的 使用sklearn库中的鸢尾花数据集, ...
- 周志华《机器学习》课后习题3.410折交叉验证法和留一法UCI实例比较
3.4选择两个UCI数据集,比较10折交叉验证法和留一法所估计出的对率回归的错误率. 利用SciKitLearn做十折交叉验证和留一法筛选 本文选用UCI提供的鸢尾花数据集和红酒产地数据集. Iris ...
- pytorch - K折交叉验证过程说明及实现
代码主要核心思想来自:https://www.cnblogs.com/JadenFK3326/p/12164519.html K折交叉交叉验证的过程如下: 以200条数据,十折交叉验证为例子,十折也就 ...
最新文章
- ASP.Net中利用CSS实现多界面两法
- matlab二值化图像_小白啃骨头之图像识别
- python3 PIL、opencv, 二进制、base64 四种图片格式转换
- Java代理系列-动态代理
- 企业级Java应用最重要的4个性能指标
- android log.d 格式化,android – 在我的代码中使用Log.d()或Log.e()
- Replace Temp with Query(以查询取代临时变量)
- 关于PHP各种循环,关于php迭代循环(无限分类)
- MongoDB的C#驱动基本使用
- SRAM6264(8K*8)
- 电信猫不折旧,用了几年还是原价
- 一名全栈工程师的必备工具箱
- 15 款MacBook Pro扩容之旅
- idea社区版 html,利用IntelliJ IDEA社区版开发servlet
- python获取excel数据制作有文字和图表的报告_Python实现从excel读取数据并绘制成精美图像...
- 【Python】P2440 木材加工
- mysql计算三角形斜边_MySQL 5.7新特性之Generated Column(函数索引)
- 虚拟现实技术在医疗领域应用的发展建议
- Ajax 发送json格式数据以及发送文件(FormData)和自带的序列化组件: serializers
- 近期Java高级开发岗面试总结