首页 > 其他 > 详细

深度学习调参

时间:2020-07-31 22:58:53      阅读:139      评论:0      收藏:0      [点我收藏+]

虽然我觉得调参很蛋疼,但是最好还是记录一下,以后可以节省很多时间。
附一个大神的经验总结训练神经网络的秘诀

更大的batch size

batch size更大时,学习率可以更大,因而训练更快。
训练网络时,如果batch size很小,比如1或2,这时候采用较大的学习率训练会出现loss波动大,且很有可能几个batch之后loss变成nan,无法训练。
显然解决方法是减小学习率,或者增大batch size,推荐后者,又快又好。
而一般来说无法采用较大的batch size的原因往往是单卡的显存限制,batch size稍微大一点就出现 Out of memory 的报错,因而需要“开源节流”。

  • 如果GPU充足,就采用多卡并行训练,如Pytorch的DataParallel等。假如你原来1张卡只能运行batch size=2,那2张卡就可运行batch size=4,以此类推。卡越多越快乐。
  • 如果你没有那么多卡,就要想办法减小显存占用:
    - 使用Apex混合精度训练;
    - 减小训练输入的图片尺寸,进而就会减小卷积网络中间层的feature map大小,但对一些任务会损失性能;

更大的图像输入尺寸

一些密集预测型(dense prediction)的任务,如语义分割、深度/高度估计、人群密度估计等,对细节的要求较高,所以最好在训练网络时保持较大的输入分辨率。

深度学习调参

原文:https://www.cnblogs.com/tofengz/p/13412607.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!