深度学习中Batch_size相关问题汇总
2017-07-26 20:52
369 查看
1.Batch_size的使用意义及大小的选择
Batch_size不宜选的太小,太小了容易不收敛,或者需要经过很大的epoch才能收敛;也没必要选的太大,太大的话首先显存受不了,其次可能会因为迭代次数的减少而造成参数修正变的缓慢。
http://blog.csdn.net/ycheng_sjtu/article/details/49804041这篇文章很详细的介绍了Batch_size的使用意义和选择原则,并且进行了试验来比较Batch_size对训练结果的影响情况,非常值得一看。
2.Batch_size有时候明明已经很小了,可显存还是很紧张,还有就是同样的图片大小,同样的Batch_size,为啥有时候显存够用有时候就不够用呢,目前我所知道的可能是如下四个问题:
(1)模型的复杂度,复杂的模型占的内存比简单的模型要大很多,这一点容易被忽略;
(2)电脑可能还在运行其他占显存的任务,使用nvida-smi命令来查看,并关闭它们;
(3)不光train阶段的Batch_size要改,test阶段的Batch_size也要调小,我以前一直以为只改动train的就可以了,too naive;
(4)图片大小,这个好理解
部分参考自Stack Overflow :https://stackoverflow.com/questions/33790366/caffe-check-failed-error-cudasuccess-2-vs-0-out-of-memory
3.如果我们的显卡比较渣,就2G,无法提高Batch_size,有什么办法挽救一下精度:
当batch_size无法提高的时候,可以把solver里面的iter_size调大一些,因为caffe在每个随机梯度下降步骤中通过iter_size*batch_size实现累加梯度。所以增加iter_size也可以得到更稳定的梯度。
摘自Stack Overflow : https://stackoverflow.com/questions/36526959/caffe-what-can-i-do-if-only-a-small-batch-fits-into-memory
Batch_size不宜选的太小,太小了容易不收敛,或者需要经过很大的epoch才能收敛;也没必要选的太大,太大的话首先显存受不了,其次可能会因为迭代次数的减少而造成参数修正变的缓慢。
http://blog.csdn.net/ycheng_sjtu/article/details/49804041这篇文章很详细的介绍了Batch_size的使用意义和选择原则,并且进行了试验来比较Batch_size对训练结果的影响情况,非常值得一看。
2.Batch_size有时候明明已经很小了,可显存还是很紧张,还有就是同样的图片大小,同样的Batch_size,为啥有时候显存够用有时候就不够用呢,目前我所知道的可能是如下四个问题:
(1)模型的复杂度,复杂的模型占的内存比简单的模型要大很多,这一点容易被忽略;
(2)电脑可能还在运行其他占显存的任务,使用nvida-smi命令来查看,并关闭它们;
(3)不光train阶段的Batch_size要改,test阶段的Batch_size也要调小,我以前一直以为只改动train的就可以了,too naive;
(4)图片大小,这个好理解
部分参考自Stack Overflow :https://stackoverflow.com/questions/33790366/caffe-check-failed-error-cudasuccess-2-vs-0-out-of-memory
3.如果我们的显卡比较渣,就2G,无法提高Batch_size,有什么办法挽救一下精度:
当batch_size无法提高的时候,可以把solver里面的iter_size调大一些,因为caffe在每个随机梯度下降步骤中通过iter_size*batch_size实现累加梯度。所以增加iter_size也可以得到更稳定的梯度。
摘自Stack Overflow : https://stackoverflow.com/questions/36526959/caffe-what-can-i-do-if-only-a-small-batch-fits-into-memory
相关文章推荐
- TensorFlow及深度学习相关资料积累汇总【不定期更新】
- 谈谈深度学习中的 Batch_Size
- 谈谈深度学习中的 Batch_Size
- 谈谈深度学习中的 Batch_Size
- 深度学习----Tensorflow常见问题汇总
- 谈谈深度学习中的 Batch_Size
- 深度学习中的 Batch_Size的作用
- 深度学习中的 Batch_Size
- 深度学习总结(四)——正则项系数、Batch_size设置
- caffe+报错︱深度学习参数调优杂记+caffe训练时的问题+dropout/batch Normalization
- 深度学习中常见的相关概念及TensorFlow中的batch和minibatch
- 谈谈深度学习中的 Batch_Size
- 谈谈深度学习中的 Batch_Size Batch_Size(批尺寸)是机器学习中一个重要参数,涉及诸多矛盾,下面逐一展开。 首先,为什么需要有 Batch_Size 这个参数? Batch 的选
- 深度学习系列1----深度学习环境搭建及相关问题解决
- 谈谈深度学习中的 Batch_Size
- 深度学习炼丹师的养成之路之——Batch size/Epoch/Learning Rate的设置和学习策略
- 谈谈深度学习中的 Batch_Size
- caffe+报错︱深度学习参数调优杂记+caffe训练时的问题+dropout/batch Normalization
- caffe+报错︱深度学习参数调优杂记+caffe训练时的问题+dropout/batch Normalization
- tensorflow学习笔记--深度学习中的epochs,batch_size,iterations详解