一.概述

1.N交叉验证有两个用途:模型评估、模型选择。

2.N折.交叉只是一种划分数据集的策略。想知道它的优势,可以拿它和传统划分数据集的方式进行比较。它可以避免固定划分数据集的局限性、特殊性,这个优势在小规模数据集上更明显。

3.把这种策略用于划分训练集和测试集,就可以进行模型评估;把这种策略用于划分训练集和验证集,就可以进行模型选择。

4.不用N折交叉验证就不能进行模型评估和模型选择了吗?当然不是。只要有测试集,就能进行模型评估;只要有验证集,就能进行模型选择。所以N折交叉验证只是在做这两件事时的一种可选的优化手段。

之前做一个深度学习项目,因为数据集很小,实验室的学长建议用交叉验证的方法来避免过拟合。但是在学习相关资料的时候,发现很多地方对于“交叉验证“的方法的说法不一致:有些说法是把数据集分成 {训练集, 验证集, 测试集},有些说法是只需要把数据集分成 {训练集, 验证集}。

实际上,交叉验证有多种用途。如果进行交叉验证的目的不一样,那么在实施交叉验证时的方法也会不一样。交叉验证的作用主要有两个:

  • 模型选择
  • 模型评估

用途一:模型选择

交叉验证最关键的作用是进行模型选择,也可以称为超参数选择

在这种情况下,数据集需要划分成训练集、验证集、测试集三部分,训练集和验证集的划分采用N折交叉的方式。很多人会把验证集和测试集搞混,如果是这种情况,必须明确地区分验证集和测试集。

  • 验证集是在训练过程中用于检验模型的训练情况,从而确定合适的超参数;
  • 测试集是在训练结束之后,测试模型的泛化能力。

具体的过程是,首先在训练集和验证集上对多种模型选择(超参数选择)进行验证,选出平均误差最小的模型(超参数)。选出合适的模型(超参数)后,可以把训练集和验证集合并起来,在上面重新把模型训练一遍,得到最终模型,然后再用测试集测试其泛化能力。

用途二:模型评估

交叉验证的另一个用途,就是模型是确定的,没有多个候选模型需要选,只是用交叉验证的方法来对模型的performance进行评估

这种情况下,数据集被划分成训练集、测试集两部分,训练集和测试集的划分采用N折交叉的方式。这种情况下没有真正意义上的验证集,个人感觉这种方法叫做”交叉测试“更合理...

相比于传统的模型评估的方式(划分出固定的训练集和测试集),交叉验证的优势在于:避免由于数据集划分不合理而导致的问题,比如模型在训练集上过拟合,这种过拟合不是可能不是模型导致的,而是因为数据集划分不合理造成的。这种情况在用小规模数据集训练模型时很容易出现,所以在小规模数据集上用交叉验证的方法评估模型更有优势

二.两种用途的关系

两种用途在本质上是一致的,模型评估可以看成是模型选择过程中的一个步骤:先对候选的每个模型进行评估,再选出评估表现最好的模型作为最终模型。

交叉验证的核心思想在于对数据集进行多次划分,对多次评估的结果取平均,从而消除单次划分时数据划分得不平衡而造成的不良影响。因为这种不良影响在小规模数据集上更容易出现,所以交叉验证方法在小规模数据集上更能体现出优势。

交叉验证与过拟合的关系

当用交叉验证进行模型选择时,可以从多种模型中选择出泛化能力最好的(即最不容易发生过拟合)的模型。从这个角度上讲,交叉验证是避免发生过拟合的手段。同样是解决过拟合的方法,交叉验证与正则化不同:交叉验证通过寻找最佳模型的方式来解决过拟合;而正则化则是通过约束参数的范数来解决过拟合。

当用交叉验证进行模型评估时,交叉验证不能解决过拟合问题,只能用来评估模型的performance。

交叉验证的优缺点

优点:获得对模型更合理更准确的评估,尤其是数据集很小时,更能体现出这个优势。

缺点:增加了计算量。

三.总结交叉验证的使用方法

  • 如果当前有多个候选模型,想从中选出一个最合适的模型,就可以用交叉验证的方法进行模型选择,尤其是当数据集很小时。
  • 如果当前只有一个模型,想获得对这个模型的performance最客观的评估,就可以用交叉验证的方法进行模型评估,尤其是当数据集很小时。

SVM------n倍交叉验证法相关推荐

  1. 通俗易懂彻底理解十倍交叉验证法

    通俗易懂彻底理解10-fold cross-validation method(十倍交叉验证法) 十倍交叉验证法: 将所有数据分为十份,然后将每一份作为验证集,其他作为训练集来进行训练和验证.在这一过 ...

  2. python 模型交叉验证法_使用交叉验证法(Cross Validation)进行模型评估

    scikit-learn中默认使用的交叉验证法是K折叠交叉验证法(K-fold cross validation):它将数据集拆分成k个部分,再用k个数据集对模型进行训练和评分. 1.K折叠交叉验证法 ...

  3. Java机器学习库ML之九交叉验证法(Cross Validation)

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

  4. 5折交叉验证_数据集的划分——交叉验证法

    本文作者:王 歌 文字编辑:戴 雯 技术总编:张 邯 前面我们在举例时,通常是将所使用的数据集按照75%和25%的比例划分为训练集和测试集,这主要是为了我们举例方便,同时划分后的数据量也依然符合大样本 ...

  5. 【机器学习-西瓜书】二、模型评估:过拟合;自助法;交叉验证法

    关键词: 错误率(error rate):精度(accuracy):经验误差(empirical error):泛化误差(generalization error):过拟合(overfitting); ...

  6. 波斯顿房价(lasso、线性回归、留出法、k折交叉验证法)

    经过几天水水的学习,利用波斯顿房价数据集做了一点小小练习,并写此笔记来记录自己点滴实验心得.新手实验,望有经验人士勿喷,本人抛砖引玉,望得到宝贵建议.如今后有新的体会,则会更新笔记. 1.线性回归+留 ...

  7. ISLR读书笔记八:交叉验证法(Cross-Validation)

    交叉验证法(Cross-Validation) 前言 校验集方法 留一法 k折交叉验证 前言 本篇的交叉验证法(Cross-Validation)和下篇的自助法(bootstrap)都是重采样方法(r ...

  8. 西瓜书习题3.4 (交叉验证法)

    西瓜书习题3.4 (交叉验证法): ​ 选择两个UCI数据集,比较10折交叉验证法和留一法所估计出的对率回归的错误率. 1.数据集长啥样? ​ 于是就下载了一组UCI数据集,它长这样: 至于这些数据是 ...

  9. 十折交叉验证pythoniris_数据集的划分——交叉验证法

    本文作者:王 歌 文字编辑:戴 雯 技术总编:张 邯Python云端培训课程火热招生中~重大通知!!!爬虫俱乐部于2020年7月11日至14日在线上举行为期四天的Stata编程技术定制培训,招生工作已 ...

最新文章

  1. AMS重要的数据结构解析(一):ActivityRecord
  2. 2020CCPC绵阳
  3. 介绍 Spring 3.1 M1 中的缓存功能
  4. Python面向对象(类的成员之属性)
  5. 面试题系列(10):一个大型电商网有大量的图片,加载很慢,你有哪些方法优化这些图片的加载?...
  6. Some regret....
  7. 安卓暗黑模式软件_安卓微信暗黑模式(深色模式)怎么开启?手机什么条件才支持?...
  8. 新常态 新核心,浪潮商用机器为关键行业数字化转型打造新Power
  9. 二分查找算法的C/C++实现
  10. 对测试认识的三个阶段
  11. shell命令技巧——文本去重并保持原有顺序
  12. 微信小程序模版合集下载,160个微信小程序源码.zip + 35个行业-微信小程序源码.zip
  13. linux安全擦除ssd命令,如何在不破坏SSD的情况下安全擦除SSD | MOS86
  14. 博图/博途(TIA)V13 V14 V15 V16 软件安装教程,适用于新手的傻瓜式安装方法,强推!!!!
  15. MQL5 中如何调用指标
  16. c语言if大括号的作用,c语言if语句 用法是什么
  17. 【Unity】 ios游戏开发中登陆 GameCenter的问题和脚本
  18. poj-1625 Censored![ac自动机+dp+高精度]
  19. ping命令 ——测试主机间网络连通性
  20. 【转载】周易大象传原文及译文

热门文章

  1. JVM--三大子系统详解
  2. java生成8位自增编号_Java生成8位数字按照从0开始到自己设置循环好多次
  3. 西班牙专线物流有哪些运输方式 西班牙专线物流有哪些优点和缺点
  4. SpringBoot 进行sql操作,但是在Druid控制台的SQL监控中没有信息
  5. Android sha1加密(RequestBody 加密)
  6. ssm+JSP计算机毕业设计演唱会售票系统eq1z0【源码、程序、数据库、部署】
  7. 笔试题32——超市找零方案
  8. 【渗透测试】Lin.Security靶机渗透练习_虚拟机无法获取ip的配置方法+靶机多种提权方式练习
  9. 惠普电脑怎么用access_惠普笔记本怎么设置从U盘启动
  10. C语言:输入圆的半径r,输出圆的周长和面积