【caffe】caffe需要shuffle训练数据吗?

35 篇文章 0 订阅
8 篇文章 0 订阅

原文见https://stackoverflow.com/questions/37658069/does-caffe-need-data-to-be-shuffled/37659171#37659171。本文不只是相对caffe而言的,更重要的是解释了为什么我们在训练模型的时候需要shuffle数据

提问:

我利用此处的代码把我的imagenet图片数据转换到caffe的db格式。
数据需要shuffle吗?即:我能先把负样本写入db,然后把正样本写入db吗?就像:0000001111111。还是说数据需要shuffle成010110101001?
caffe如何从db中采样数据?是每次以batch_size的大小从db中随机采子集吗?

回答

“我应该shuffle数据吗?” 假设你不shuffle,学习过程中caffe首先看到一系列0,你觉得模型会如何推断?显然对于模型来说,只要无脑预测0就可以了,而如过在出现1之前模型已经遇见到了足够多的0,那么它就只会吧新见到的1视作噪声从而依然预测为0。这样就很难进一步进行优化了。
而如果一开始1和0就混合出现,那么模型就可以直接学习这些样本的特征了。
所以,shuffle样本是及其重要的,尤其是在SGD方法中。
据我所知,caffe不从db中随机采样batch_size个数据,而已一组又一组地顺序采样batch_size个数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值