当前位置:网站首页>【小记】BatchSize的数值是设置的越大越好吗
【小记】BatchSize的数值是设置的越大越好吗
2022-08-11 04:12:00 【Time.Xu】
BatchSize的数值并不是设置的越大越好
通常我们可能会认为设置较大的batchsize时,模型的训练效果会比较好。原因有以下几点:
1、模型由于每次得到较多的训练数据,模型的下降方向会更加准确,模型训练曲线会更加平滑。
2、减少了训练时间。同样的epoch时,batchsize需要的batch数目减少了,所以处理速度变快了。
但是啊但是,
较大的batchsize有以下几点问题需要注意:
1、内存问题。较大的batch可能会造成内存/显存溢出
2、泛化能力下降。这一点是我之前没有考虑到的一点。使用太大的批处理大小可能会在训练期间对网络的准确性产生负面影响,因为它减少了梯度下降的随机性。
使用较小的批处理大小产生更不稳定、更随机的权重更新。这有两个积极的影响。首先,它可以帮助训练“跳出”之前可能陷入的局部最小值,其次,它可以使训练稳定在“更平坦”的最小值,这通常表明泛化性能更好。
怎么选取训练神经网络时的Batch size? - 知乎 (zhihu.com)
上面这篇链接里(侵删)指出:
- 当有足够算力时,选取batch size为32或更小一些。
- 算力不够时,在效率和泛化性之间做trade-off,尽量选择更小的batch size。
- 当模型训练到尾声,想更精细化地提高成绩(比如论文实验/比赛到最后),有一个有用的trick,就是设置batch size为1,即做纯SGD,慢慢把error磨低。
边栏推荐
猜你喜欢
A simple JVM tuning, learn to write it on your resume
Interchangeable Measurement Techniques - Geometric Errors
《卫星界》刊评“星辰大海”计划:孙宇晨为太空旅游带来新的机遇
【FPGA】名词缩写
机器学习中什么是集成学习?
Interchangeability and Measurement Techniques - Tolerance Principles and Selection Methods
"110 Balanced Binary Tree Judgment" in leetCode's 14-day binary tree series
Clang Code Model: Error: The clangbackend executable “X:/clangbackend.exe“ could not be started
Interchangeability Measurements and Techniques - Calculation of Deviations and Tolerances, Drawing of Tolerance Charts, Selection of Fits and Tolerance Classes
Basic understanding of MongoDB (2)
随机推荐
【FPGA】SDRAM
How to learn machine learning?machine learning process
【人话版】WEB3将至之“权益的游戏”
阿里云发布3大高性能计算解决方案
(转)JVM中那些区域会发生OOM?
What is third-party payment?
MySQL数据库存储引擎以及数据库的创建、修改与删除
破解事务性工作瓶颈,君子签电子合同释放HR“源动力”!
.NET自定义中间件
LeetCode刷题第10天字符串系列之《125回文串验证》
《卫星界》刊评“星辰大海”计划:孙宇晨为太空旅游带来新的机遇
Common layout effect realization scheme
App Basic Framework Construction丨Log Management - KLog
.NET Custom Middleware
【FPGA】day18-ds18b20实现温度采集
Jetson Orin平台4-16路 GMSL2/GSML1相机采集套件推荐
leetcode刷题第13天二叉树系列之《98 BST及其验证》
什么是机器强化学习?原理是什么?
使用百度EasyDL实现森林火灾预警识别
The FTP error code list