ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【转】Batch Size设置过大时,对神经网络性能的影响情况

2020-08-07 15:31:51  阅读:267  来源: 互联网

标签:过大时 泛化 batch Batch 网络 收敛 Size


之前的一片博文写了Batch Size的作用和应该如何设置比较合适,同时还有Batch Size大小,与学习率lrlr、训练次数epochepoch之间的关系。里面提及Batch Size越大,梯度的方向越准确。

上述的说法是没错的,梯度方向准确,最后网络收敛情况好,但是收敛情况好并不意味网络的性能就好,网络收敛好意味着对训练数据作出了较好的拟合,但是并不意味着就会对测试数据作出很好的拟合。这存在的一个“泛化”的问题。

ON LARGE-BATCH TRAINING FOR DEEP LEARNING:GENERALIZATION GAP AND SHARP MINIMA 论文发现了使用large-batch训练得到的网络具有较差的泛化能力。使用large-batch的情况下容易收敛成“sharp minimizers”,使其的泛化能力差。而相对使用“small-batch”训练的最终会收敛到“flat minimizers”,这是因为在“small-batch”中在梯度计算中固有噪声的存在,使得网络的最终收敛成“flat minimizers”
论文中提及了使用“large-batch”造成泛化能力差的原因可能是网络直接收敛到初始值附近。同时,论文尝试提出几种方法,如数据增强,“conservative training”和“robust optimization”,但好像也没什么效果。另一种补救方法包括使用动态抽样,在这种情况下,随着迭代的进行,批大小逐渐增大。

 

https://blog.csdn.net/qq_34886403/article/details/82597558

 

感想:batch size从64下降到6,发现平均准确率提升0.4%左右。我的ResNet最佳层数为6.

标签:过大时,泛化,batch,Batch,网络,收敛,Size
来源: https://www.cnblogs.com/zb-ml/p/13453160.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有