虽然我觉得调参很蛋疼,但是最好还是记录一下,以后可以节省很多时间。
附一个大神的经验总结训练神经网络的秘诀
batch size更大时,学习率可以更大,因而训练更快。
训练网络时,如果batch size很小,比如1或2,这时候采用较大的学习率训练会出现loss波动大,且很有可能几个batch之后loss变成nan,无法训练。
显然解决方法是减小学习率,或者增大batch size,推荐后者,又快又好。
而一般来说无法采用较大的batch size的原因往往是单卡的显存限制,batch size稍微大一点就出现 Out of memory
的报错,因而需要“开源节流”。
DataParallel
等。假如你原来1张卡只能运行batch size=2,那2张卡就可运行batch size=4,以此类推。卡越多越快乐。一些密集预测型(dense prediction)的任务,如语义分割、深度/高度估计、人群密度估计等,对细节的要求较高,所以最好在训练网络时保持较大的输入分辨率。
原文:https://www.cnblogs.com/tofengz/p/13412607.html