mrg*_*oom 7 c++ machine-learning neural-network deep-learning caffe
我使用C++将我的图像数据转换为caffe db格式(leveldb,lmdb),例如我将此代码用于imagenet.
是否需要对数据进行洗牌,我可以写入所有积极因素,然后写入所有负面信息,例如00000000111111111,或者数据是否需要洗牌,标签应该看起来像010101010110101011010?
来自DB的caffe样本数据是如何使用size = batch_size
?的所有数据的随机子集的?
Sha*_*hai 10
你应该把样品洗牌吗?如果你不洗牌,想想学习过程; caffe只看到0
样本 - 你期望算法推断出什么?简单地预测0
所有的时间,一切都很酷.如果你有足够的时间0
在你的第一个1
caffe之前就会非常自信地预测0
.从这一点开始移动模型将非常困难.
另一方面,如果它经常看到混合,0
并从一开始1
就学习分离示例的有意义的特征.底线:对训练样本进行洗牌非常有利,特别是在使用基于SGD的方法时.
AFAIK,caffe不会随机抽样batch_size
样本,而是batch_size
在batch_size
样本后顺序通过输入DB .
TL; DR
shuffle.