cnn 验证集 参与训练吗_小白学PyTorch | 2 浅谈训练集验证集和测试集

cnn 验证集 参与训练吗_小白学PyTorch | 2 浅谈训练集验证集和测试集_第1张图片

【前言】:公众号的AI初学者交流群已经建立啦,添加作者好友备注【加群】即可加入。群里都是些一起学习的朋友,大家学习路上,结个伴。

cnn 验证集 参与训练吗_小白学PyTorch | 2 浅谈训练集验证集和测试集_第2张图片

文章目录:

  • 经验误差与过拟合

  • 评估方法

经验误差与过拟合

关键词:错误率(error rate),精度(accuracy)

  • 错误率好理解,就是m个样本中,a个样本分类错误,则错误率E = a/m 。
  • 精度 就是 1-E。其实很简单,但是为什么我还要提一提呢,因为机器学习里还有很多相关名词,例如:准确率,召回率,精确度等等,所以希望大家能清楚认识。

关键词:经验误差(empirical error)

  • 在训练集上,预测输出与样本的真实输出之间的差异(差异!)称为经验误差或训练误差。

关键词:泛化误差(generalization)

  • 在新样本上的误差称为泛化误差。

关键词:过拟合(overfitting)

  • 刚接触机器学习时候,就碰到过拟合这个很抽象的词, 当时是说的曲线拟合 。曲线拟合其实就是一个过程。该过程是通过实际曲线上的一些样本点(成为训练样本),经过一个模型训练,得到一条预测曲线。(敲黑板:拟合就是一个过程)。那么过拟合就是,拟合过头了,预测曲线非常好的适合训练样本,然而对实际曲线的其他样本不太适合。推广一下到分类器(模型)上就是,训练好的分类器对训练样本很好的分类,但是对测试样本的分类结果很糟糕。有过拟合当然有欠拟合啦,欠拟合可以认为是该分类器学习能力太差,连在训练样本上都没有很好的分类,更不要说在测试样本上了。

评估方法

关键词:留出法(hold-out)

  • 怎么将给定的数据集划分为训练集和测试集呢?常用的方法在这里有介绍。首先介绍的是留出法,其实这种方法在国内教材和论文中最常见,就是把数据集D划分为两个互斥的集合,其中一个是训练集,一个是测试集。书中给出的参考划分比例是,训练集66.6%~80%。

关键词:交叉验证法(cross validation)

  • 交叉验证法是竞赛中或者比较正式的实验中用得比较多。什么是交叉验证呢?其实就是将数据集D划分为k个大小相同的互斥的子集,然后用k-1个子集作为训练,剩下那一个子集作为测试。这样就需要训练k个模型,得到k个结果,再取平均即可。这样的方法通常成为“k折交叉验证”。书中还给出了k的参考值,:5,10,20。

关键词:自助法(bootstrapping)  。

  • 第一次听说自助法,也从没在文献中看到过,自助法主要是用于小样本!缺点是容易引入估计偏差。具体操作是这样的,对于m个样本的数据集D,每次随机挑选D中的一个样本放到D’中,挑m次,经过计算D中有大约36.8%(≈1/e)的样本未出现在D’中,这样用D’作为训练集,D\D’(“\”表示集合减法)作为测试集。自助法又称为可重复采样,有放回采样。(第二次看到这个方法的时候,发现,这不就是bagging抽样数据集的方法嘛,只是这里作为划分训练集和测试机的方法。)

关键词:训练集(train set)、验证集(valid set)、测试集(test set)  。

  • 一开始接触机器学习只知道训练集和测试集,后来听到了验证集这个词,发现验证集和之前所认识的测试集的用法是一样的,一直就把验证集和测试集给混淆了。

首先需要知道的是,在工程应用中,最终提交给客户的模型是用尽数据集D中的m个样本训练的模型。也就是说,我们的测试集最终还是要用来训练模型的。之前有说到数据集D划分为训练集和测试集,训练集就是用来训练模型,测试集是用来估计模型在实际应用中的泛化能力,而验证集是用于模型选择和调参的。因此,我个人的理解是在研究过程中,验证集和测试集作用都是一样的,只是对模型进行一个观测,观测训练好的模型的泛化能力。而当在工程应用中,验证集应该是从训练集里再划分出来的一部分作为验证集,用来选择模型和调参的。当调好之后,再用测试集对该模型进行泛化性能的评估,如果性能OK,再把测试集输入到模型中训练,最终得到的模型就是提交给用户的模型。

举例举个高三学生高考的例子吧,

  • 训练集 就是 平时的作业,习题册等
  • 验证集 就是 一模、二模、三模的试题
  • 测试集 就是 高考试题

训练集是给学生进行学习的,提高学生的能力;验证集是用来检验学生的学习方法,学习方向,学习方式,是否正确;测试集是最终考察学生的成绩如何。

不过幸运的是,我们有多次“高考”的机会,只不过,我们不能去分析高考的试题,因为测试集仅仅作为一个验证。

一般来说,当验证集和测试集具有同分布的时候(即模拟题和高考题几乎一样的时候),在模拟考能拿650分,那么在真实考高中也会在650分左右。

- END - 【机器学习炼丹术】的学习笔记分享 <>

小白学PyTorch | 动态图与静态图的浅显理解

小白学PyTorch | 1 搭建一个超简单的网络

<>

小白学论文 | EfficientNet强在哪里

小白学论文 | 神经网络初始化Xavier

小白学论文 | 端侧神经网络GhostNet(2019)

小白学目标检测 | RCNN, SPPNet, Fast, Faster

小白学图像 | BatchNormalization详解与比较

小白学图像 | Group Normalization详解+PyTorch代码

小白学图像 | 八篇经典CNN论文串讲

图像增强 | CLAHE 限制对比度自适应直方图均衡化

小白学卷积 | 深入浅出卷积网络的平移不变性

小白学卷积 | (反)卷积输出尺寸计算

损失函数 | 焦点损失函数 FocalLoss 与 GHM

<>

小白学ML | 随机森林 全解 (全网最全)

小白学SVM | SVM优化推导 + 拉格朗日 + hingeLoss

小白学LGB | LightGBM = GOSS + histogram + EFB

小白学LGB | LightGBM的调参与并行

小白学XGB | XGBoost推导与牛顿法

评价指标 | 详解F1-score与多分类F1

小白学ML | Adaboost及手推算法案例

小白学ML | GBDT梯度提升树

小白学优化 | 最小二乘法与岭回归&Lasso回归

<>

小白面经 | 快手 AI算法岗 附答案解析

小白面经 | 拼多多 AI算法岗 附带解析

【小白面经】八种应对样本不均衡的策略

【小白面经】之防止过拟合的所有方法

【小白面经】梯度消失爆炸及其解决方法

【小白面经】 判别模型&生成模型

<>

小白写论文 | 技术性论文结构剖析

小白学排序 | 十大经典排序算法(动图)

杂谈 | 正态分布为什么如此常见

Adam优化器为什么被人吐槽?

机器学习不得不知道的提升技巧:SWA与pseudo-label

公众号回复【入群】,加入AI爱好者大学生交流群。你缺少的可能只是一起前行的同伴~

cnn 验证集 参与训练吗_小白学PyTorch | 2 浅谈训练集验证集和测试集_第3张图片

好文!卑微作者,在线求赞!

你可能感兴趣的:(cnn,验证集,参与训练吗,文本分类训练集,测试集,测试集准确率不变,测试集准确率高于训练集,训练集,测试集,验证集,训练集测试集验证集比例)