之前一直不理解iter 与batch之间有什么关系,偶尔看反向传播的博客时注意到了,恍然大悟
解释如下:
当参数iter_size大于1的时候,比如为4,那么一次迭代会有4次Forward和Backward的过程,这时候loss会进行4次累加,最后做个平均;更重要的是每次方向传播的过程中,对于参数的梯度也会进行累加,包括权值和偏置,最后也会对梯度做个平均
iter_size :
这个参数乘上你的train prototxt中的batch_size是你实际使用的batch size。 相当于读取batchsize*itersize个图像才做一下gradient decent。 这个参数可以规避由于gpu不足而导致的batchsize的限制 因为你可以用多个iteration做到很大的batch 即使单次batch有限
原文:https://blog.youkuaiyun.com/sdlypyzq/article/details/84030312