[机器学习] 训练过程中的train,val,test的区别
转自:Caffe训练过程中的train,val,test的区别。
训练过程中的train,val,test的区别
val
是validation
的简称。
training dataset
和validation dataset
都是在训练的时候起作用。
而因为validation
的数据集和training
没有交集,所以这部分数据对最终训练出的模型没有贡献。
validation
的主要作用是来验证是否过拟合、以及用来调节训练参数等。
比如训练0-10000
次迭代过程中,train
和validation
的loss
都是不断降低,
但是从10000-20000
过程中train loss
不断降低,validation
的loss
不降反升。
那么就证明继续训练下去,模型只是对training dataset
这部分拟合的特别好,但是泛化能力很差。
所以与其选取20000
次的结果,不如选择10000
次的结果。
这个过程的名字叫做Early Stop
,validation
数据在此过程中必不可少。
如果跑caffe
自带的训练demo
,你会用到train_val.prototxt
,这里面的val
其实就是validation
。
而网络输入的TEST
层,其实就是validation
,而不是test
。你可以通过观察validation
的loss
和train
的loss
定下你需要的模型。
但是为什么现在很多人都不用validation
了呢?
我的理解是现在模型中防止过拟合的机制已经比较完善了,Dropout\BN
等做的很好了。
而且很多时候大家都用原来的模型进行fine tune
,也比从头开始更难过拟合。
所以大家一般都定一个训练迭代次数,直接取最后的模型来测试。
[机器学习] 训练过程中的train,val,test的区别相关推荐
- 训练过程中的train,val,test的区别
train是训练集,val是训练过程中的测试集,是为了让你在边训练边看到训练的结果,及时判断学习状态.test就是训练模型结束后,用于评价模型结果的测试集.只有train就可以训练,val不是必须的 ...
- 机器学习训练过程中常见问题
1. 训练误差和泛化误差 机器学习模型在训练数据集和测试数据集上的表现.如果你改变过实验中的模型结构或者超参数,你也许发现了:当模型在训练数据集上更准确时,它在测试数据集上却不⼀定更准确.这是为什么呢 ...
- DeepLearning tutorial(2)机器学习算法在训练过程中保存参数
FROM: http://blog.csdn.net/u012162613/article/details/43169019 DeepLearning tutorial(2)机器学习算法在训练过程中保 ...
- 论文阅读|训练过程中动态改变训练方案的Dynamic R-CNN
目录 论文相关信息 Abstract. 1 Introduction 2 Related Work 3 Dynamic Quality in the Training Procedure 3.1 Pr ...
- dqn在训练过程中loss越来越大_用DQN算法玩FlappyBird
DQN算法可以用于解决离散的动作问题,而FlappyBird的操作正好是离散的. FlappyBird的游戏状态一般可以通过图像加卷积神经网络(CNN)来进行强化学习.但是通过图像分析会比较麻烦,因为 ...
- dqn在训练过程中loss越来越大_强化学习笔记:OpenAI Gym+DQN+Tensorflow2实现
参考了一些文章,针对OpenAI gym环境,使用tf2.x实现了DQN算法:加上了一些没有太大必要(?)的小功能,比如:自动保存视频,保存训练日志从而利用TensorBoard实现数据可视化,保存和 ...
- 神经网络测试集loss不变_神经网络训练过程中不收敛或者训练失败的原因
在面对模型不收敛的时候,首先要保证训练的次数够多.在训练过程中,loss并不是一直在下降,准确率一直在提升的,会有一些震荡存在.只要总体趋势是在收敛就行.若训练次数够多(一般上千次,上万次,或者几十个 ...
- 在Caffe的训练过程中打印验证集的预测结果
起因:Caffe里的GoogLeNet Inception V1只能输出对应于三个loss的accuracy,我想计算precision,recall和F1-measure.但是调用caffe的Pyt ...
- Pytorch在训练过程中常见的问题
1 Input type (CUDAFloatTensor) and weight type (CPUFloatTensor) should be the same 仔细看错误信息,CUDA和CPU, ...
最新文章
- AI进军摇滚圈,老炮:这是啥?
- 06. 为知笔记 -- 我的修改
- hdu1058(dp||优先队列)
- SMG12232A2标准图形点阵型液晶显示模块的演示程序[C51编程语言]
- ORM的问题第2部分–查询
- python总结教程_python基础教程总结10——文件
- iPhone 13供需接近平衡,iPhone 13 Pro交付时间较长
- 由几个月前写的(验证码利用ashx一般处理程序来做),修改为不用以一般处理程序...
- 即时通讯学习笔记004---即时通讯服务器种类认知
- Note: pdfcrop
- Kaggle泰坦尼克数据科学解决方案
- Python+OpenCV:图像平滑
- 如何去掉桌面图标上的小箭头
- Oracle SQL脚本批量导入导出
- 三维重建(知识点详细解读、主要流程)
- Long与Integer的转换
- 【iOS】开发者账号
- 如何从阿里云官方镜像站下载centos并安装
- python中如何使用sin、cos等三角函数
- 电机仿真系列-基于LabVIEW的电机测试系统研究