以下简称交叉验证(Cross Validation)为CV.CV是用来验证分类器的性能一种统计分析方法,基本思想是把在某种意义下将原始数据(dataset)进行分组,一部分做为训练集(train set),另一部分做为验证集(validation set),首先用训练集对分类器进行训练,在利用验证集来测试训练得到的模型(model),以此来做为评价分类器的性能指标.常见CV的方法如下:

1).Hold-Out Method

将原始数据随机分为两组,一组做为训练集,一组做为验证集,利用训练集训练分类器,然后利用验证集验证模型,记录最后的分类准确率为此Hold-OutMethod下分类器的性能指标.此种方法的好处的处理简单,只需随机把原始数据分为两组即可,其实严格意义来说Hold-Out Method并不能算是CV,因为这种方法没有达到交叉的思想,由于是随机的将原始数据分组,所以最后验证集分类准确率的高低与原始数据的分组有很大的关系,所以这种方法得到的结果其实并不具有说服性.

2).K-fold Cross Validation(记为K-CV)

将原始数据分成K组(一般是均分),将每个子集数据分别做一次验证集,其余的K-1组子集数据作为训练集,这样会得到K个模型,用这K个模型最终的验证集的分类准确率的平均数作为此K-CV下分类器的性能指标.K一般大于等于2,实际操作时一般从3开始取,只有在原始数据集合数据量小的时候才会尝试取2.K-CV可以有效的避免过学习以及欠学习状态的发生,最后得到的结果也比较具有说服性.

3).Leave-One-Out Cross Validation(记为LOO-CV)

如果设原始数据有N个样本,那么LOO-CV就是N-CV,即每个样本单独作为验证集,其余的N-1个样本作为训练集,所以LOO-CV会得到N个模型,用这N个模型最终的验证集的分类准确率的平均数作为此下LOO-CV分类器的性能指标.相比于前面的K-CV,LOO-CV有两个明显的优点:


a.每一回合中几乎所有的样本皆用于训练模型,因此最接近原始样本的分布,这样评估所得的结果比较可靠。


b.实验过程中没有随机因素会影响实验数据,确保实验过程是可以被复制的。

但LOO-CV的缺点则是计算成本高,因为需要建立的模型数量与原始数据样本数量相同,当原始数据样本数量相当多时,LOO-CV在实作上便有困难几乎就是不显示,除非每次训练分类器得到模型的速度很快,或是可以用并行化计算减少计算所需的时间.

交叉验证(CrossValidation)方法思想简介相关推荐

  1. paper 35 :交叉验证(CrossValidation)方法思想

    交叉验证(CrossValidation)方法思想简介 以下简称交叉验证(Cross Validation)为CV.CV是用来验证分类器的性能一种统计分析方法,基本思想是把在某种意义下将原始数据(da ...

  2. 交叉验证 Cross-validation

    交叉验证(CrossValidation)方法思想简介 以下简称交叉验证(Cross Validation)为CV.CV是用来验证分类器的性能一种统计分析方法,基本思想是把在某种意义下将原始数据(da ...

  3. 交叉验证(Cross Validation)方法思想简介

    交叉验证(CrossValidation)方法思想 以下简称交叉验证(Cross Validation)为CV.CV是用来验证分类器的性能一种统计分析方法,基本思想是把在某种意义下将原始数据(data ...

  4. 交叉验证方法思想简介

    交叉验证方法思想简介 以下简称交叉验证(Cross Validation)为CV.CV是用来验证分类器的性能一种统计分析方法,基本思想是把在某种意义下将原始数据(dataset)进行分组,一部分做为训 ...

  5. matlab 交叉验证 代码,交叉验证(Cross Validation)方法思想简介

    本帖最后由 azure_sky 于 2014-1-17 00:30 编辑 2).K-fold Cross Validation(记为K-CV) 将原始数据分成K组(一般是均分),将每个子集数据分别做一 ...

  6. 模型效果优化,试一下多种交叉验证的方法(系统实操)

    我们在建模时,经常会遇到这样的情况:模型在训练样本集上拟合成功后的性能评价指标都表现较好,但在测试样本集上的验证效果却表现很差,这种偏差情况出现的原因,往往是模型出现了过拟合问题(如图1所示),直接反 ...

  7. 5折交叉验证_交叉验证的方法主要分为哪些?

    问题引入 交叉验证是在机器学习建立模型和验证模型参数时常用的办法,一般被用于评估一个机器学习模型的表现.更多的情况下,我们也用交叉验证来进行模型选择(model selection). 问题解答 这里 ...

  8. 机器学习笔记——sklearn 交叉验证(Cross-validation)

    sklearn cross validation:https://scikit-learn.org/stable/modules/cross_validation.html 交叉验证(Cross Va ...

  9. sklearn炼丹术之——交叉验证Cross-validation: evaluating estimator performance

    https://scikit-learn.org/stable/modules/cross_validation.html#

最新文章

  1. Hawk使用补充说明
  2. 课程导入导出中的知识点操作
  3. HDUOJ --2523
  4. 关于URL编码/javascript/js url 编码/url的三个js编码函数
  5. 算法分析 | 分支限界算法设计之布线问题 C语言版
  6. vr转换软件android版,普通视频转换成VR
  7. 模块七:mixer模块
  8. selenium入门详细指南(附淘宝抢购案例)
  9. 高仿富途牛牛-组件化-优秀的时钟
  10. [GIS原理] 8.2 空间分析-邻近度分析-Delaunay三角网(德劳内)/泰森多边形(Thiessen多边形)/冯洛诺伊图(Voronoi图)
  11. 笔记本制作WIFI热点经常掉线问题
  12. 人脸识别支付欺诈手段和防范措施
  13. 【Unity】Google内购
  14. 南大地球科学能转计算机类吗,南京大学地球科学系
  15. 烽火ExMobi引领企业移动应用平台浪潮
  16. 【2023秋招】9月京东校招题目
  17. 基于TDOA声源定位算法仿真–MATLAB仿真
  18. 东方财富网 python_Python 东方财富网-股市行情数据抓取
  19. 寒假社会实践完整版内容,一套流程
  20. skyline系列10 - Skyline TerraExplorer 加载数据使用方法 (客户版)

热门文章

  1. citra黑屏_citra模拟器下载|citra 3ds模拟器2017下载(解决黑屏问题) v3.1 x64/x32版_数码资源网...
  2. ECNU计科复试机试(2019)
  3. Calendar类常用api
  4. 14.JavaScript循环while、for、dowhile、break、continue、跳转标签
  5. github pages 一些需要注意的问题
  6. 大厂程序员年薪_2020互联网大厂薪资曝光:程序员薪资将会变成白菜价?
  7. c语言float转bcd码
  8. 在线教育行业分析报告
  9. C语言 — 函数的注册和回调
  10. 组成原理(五)CPU指令流水线