当前位置:网站首页>深度学习理论:测试集与验证集的区别及各自用途
深度学习理论:测试集与验证集的区别及各自用途
2022-08-02 03:27:00 【正在黑化的KS】
引言
在神经网络学习中,经常会很困惑:
我们需要将原始数据集拆分为三份:训练集、验证集和测试集.但是我也注意到在有些机器学习算法中,数据集往往被拆分为两份:训练集和测试集。
所以我们的问题归纳如下:
对于神经网络来说真的需要验证集嘛?验证集是可选的嘛?
进一步来说,在机器学习领域验证集和测试集的区别是什么?
———————————————————————————————————————————
解释一
训练集 (训练阶段)
用于构建我们的模型,我们的模型在训练集上进行学习,通常在这个阶段我们可以有多种方法进行训练
验证集 (模型挑选阶段)
用于挑选最优模型超参的样本集合:使用验证集可以得到反向传播什么时候结束以及超参怎么设置最合理。主要目的是为了挑选在验证集上表现最好的模型。
测试集 (验证阶段 评估泛化误差)
在我们挑选好验证集上表现最好的模型之后,用于评估该模型泛化能力的数据集
一般来说,上述三个数据集的比例为60/20/20.
那么验证集和测试集到底有什么区别?
简单来说,模型在验证集上的表现是有偏估计,虽然训练模型的时候没有用到验证集上的数据,但是我们在挑选模型时,还是间接地泄露了验证集的相关信息:我们让模型知道怎么样的参数设置会让它在该数据集上表现良好或者表现差劲。此时和模型训练挑选过程完全独立的测试集此时就变得更加重要了,它往往代表着模型在真实世界应用场景下模型的泛化表现能力。
解释二
一般来说,在监督学习领域,您需要两种类型的数据集:
在第一个数据集中,我们拥有输入数据以及正确/预期的输出;该数据集通常由人工或通过以半自动方式收集而来。但是我们必须在此数据集上获得每个数据的预期输出,因为我们需要它来进行相关的监督学习。
我们预期要将模型应用到的数据集。在许多情况下,这是我们对模型输出感兴趣的数据,因此我们还没有任何“预期”的输出(即没有真值标注)。
———————————————————————————————————————————
但是在机器学习领域,我们往往这么做:
训练阶段:我们准备标注好的数据,通过输入数据比较预期输出正常训练模型
验证阶段:为了估计我们模型的训练效果(这取决于训练数据集的大小、我们想要的预测值等)并估计模型属性(回归模型的平均误差、分类模型的分类误差、 召回率和准确率等)
应用阶段:现在,我们将新开发的模型应用于现实世界的数据并获得相应的结果。由于我们通常在此类数据集中没有任何参考真值(否则,为什么需要我们的模型?),我们只能使用验证阶段的结果推测模型输出的质量。
验证阶段: 通常被细分为两个部分:
在第一部分中,我们只需查看模型并使用验证数据来选择性能最佳的方法 (验证集)
然后在第二部分数据中评估所选方法的准确性(测试集)。
如果我们不需要从几种模型方法中选择合适的模型,我们可以重新划分我们的数据集合,此时我们理论上只需要有训练集和测试集,而无需对我们的训练模型进行验证。此时二者的划分比例为 70/30。
总结
最后,对本文内容总结如下:
重要的是要记住,不建议跳过测试阶段,因为在交叉验证阶段表现良好的算法并不意味着它真的是最好的,因为算法是根据交叉验证来比较的。
在测试阶段,目的是看看我们的最终模型在实际生活中如何处理,所以如果它的性能很差,我们应该从训练阶段开始重复整个过程。
转自微信公众号:AI算法之道
边栏推荐
- 完整安装 Laravel-Admin 框架
- The first time to tear the code by hand, how to solve the problem of full arrangement
- 【一句话攻略】彻底理解JS中的回调(Callback)函数
- 自定义ViewGroup实现搜索栏历史记录流式布局
- PHP hash加密与解密
- 快速搭建一个网关服务,动态路由、鉴权的流程,看完秒会(含流程图)
- 阿里技术官手码12W字面试小册
- 账务处理程序、记账凭证账务处理程序、汇总记账凭证账务处理程序、科目汇总表账务处理程序、会计信息化概述、信息化环境下会计账务处理的基本要求(此章出1道小题)
- Command Execution Vulnerability
- A code audit notes (CVE - 2018-12613 phpmyadmin file contains loopholes)
猜你喜欢
随机推荐
The CTF introductory notes of SQL injection
View与ViewGroup
十大实用的办公工具网站,可以解决你日常100%的问题
深入了解为何面试官常说:你还没准备好,我不会录用你
重点考:从债劵的角度来看交易性金融资产
【泰山众筹】模式为什么一直都这么火热?是有原因的
laravel-admin 线上访问项目,一直重定向到登录页面
管理node版本的工具volta
2021-09-04 最简单的Golang定时器应用以及最简单的协程入门儿
Jetpack中各个组件简介
SATA M2 SSD 无法安装系统的解决方法
什么是广告电商商业模式?这几个门派告诉你
Binder机制详解(一)
Glide使用及原理分析
SQL注入(7)
After Alibaba Cloud sets up domain name resolution redirection, I cannot use Chrome to access it
Windows下MySQL数据库报“ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost:8000‘ (10061)”错误解决
How to determine the direction based on two coordinate points on the map
A network security guinea pig's learning path - scripting of advanced usage of nmap
uniapp发布到微信小程序:分包、删减代码全过程