caffe中train过程的train数据集、val数据集、test时候的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,也比从头开始更难过拟合。
所以大家一般都定一个训练迭代次数,直接取最后的模型来测试。
caffe中train过程的train数据集、val数据集、test时候的test数据集区别的更多相关文章
- caffe学习--使用caffe中的imagenet对自己的图片进行分类训练(超级详细版) -----linux
http://blog.csdn.net/u011244794/article/details/51565786 标签: caffeimagenet 2016-06-02 12:57 9385人阅读 ...
- Caffe初试(二)windows下的cafee训练和测试mnist数据集
一.mnist数据集 mnist是一个手写数字数据库,由Google实验室的Corinna Cortes和纽约大学柯朗研究院的Yann LeCun等人建立,它有60000个训练样本集和10000个测试 ...
- caffe中各层的作用:
关于caffe中的solver: cafffe中的sover的方法都有: Stochastic Gradient Descent (type: "SGD"), AdaDelta ( ...
- caffe中python接口的使用
下面是基于我自己的接口,我是用来分类一维数据的,可能不具通用性: (前提,你已经编译了caffe的python的接口) 添加 caffe塻块的搜索路径,当我们import caffe时,可以找到. 对 ...
- caffe绘制训练过程的loss和accuracy曲线
转自:http://blog.csdn.net/u013078356/article/details/51154847 在caffe的训练过程中,大家难免想图形化自己的训练数据,以便更好的展示结果.如 ...
- (原)caffe中通过图像生成lmdb格式的数据
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5909121.html 参考网址: http://www.cnblogs.com/wangxiaocvp ...
- 在Caffe中实现模型融合
模型融合 有的时候我们手头可能有了若干个已经训练好的模型,这些模型可能是同样的结构,也可能是不同的结构,训练模型的数据可能是同一批,也可能不同.无论是出于要通过ensemble提升性能的目的,还是要设 ...
- pycaffe︱caffe中fine-tuning模型三重天(函数详解、框架简述)
本文主要参考caffe官方文档[<Fine-tuning a Pretrained Network for Style Recognition>](http://nbviewer.jupy ...
- caffe 中 python 数据层
caffe中大多数层用C++写成. 但是对于自己数据的输入要写对应的输入层,比如你要去图像中的一部分,不能用LMDB,或者你的label 需要特殊的标记. 这时候就需要用python 写一个输入层. ...
随机推荐
- CSS---通向臃肿的道路(关于 “separation of concerns” (SoC)的原则)
When it comes to CSS, I believe that the sacred principle of “separation of concerns” (SoC) has lead ...
- 面试题:常用的http状态码
3XX 重定向 301 Moved Permanently 永久重定向,表示请求的资源已经永久的搬到了其他位置 302 Found 临时重定向,表示请求的资源临时搬到了其他位置 303 See ...
- C#中new的三种用法
在 C# 中,new 关键字可用作运算符.修饰符或约束. 1)new 运算符:用于创建对象和调用构造函数. 2)new 修饰符:在用作修饰符时,new 关键字可以显式隐藏从基类继承的成员. 3)new ...
- CSS文字垂直居中的一些问题
说到CSS文字垂直居中,很多初学者都喜欢用调整行高等于div高度的方式来达到效果, div { height:30px; line-height:30px; } 但其实这么做会遇到一个问题:多行文本溢 ...
- css 制作圆角、圆形图形布局
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 使用Eclipse中的SVN提交代码遇到的问题
问题: Previous operation has not finished; run 'cleanup' if it was interrupted svn: Commit failed (det ...
- 遍历文件后缀名 为 .java的文件
import java.io.File; import java.io.FileFilter; //创建一个功夫类继承文件管理类 public class FileFu implements Fil ...
- 使用 Canal 实现数据异构
小结: 1. https://mp.weixin.qq.com/s/z-5aoGVuk7JzIGrJJWgeJw 使用 Canal 实现数据异构 原创: 杜亦舒 性能与架构 3月4日
- 一个人工智能教程,教案接地气、限制级。 http://www.captainbed.net
一个人工智能教程,教案接地气.限制级. http://www.captainbed.net https://open.weibo.com/
- 获取各种编码(Unicode,UTF8等)的识别符
下面是常用编码的识别符, 在 Delphi(2009) 中如何获取呢?Unicode: FF FE; BigEndianUnicode: FE FF; UTF8: EF BB BF var bs: ...