深度学习中Batch Size的大小对训练过程的影响

最近在调参,看了一下batch size这个参数的意义以及对训练过程的影响。故记录一下自己学习到的内容:
batch size大小的直接影响很明显:影响一个epoch中需要迭代iteration的次数以及完成每个epoch所需的时间。

从训练的角度来讲,batch size较小时,相邻Mini-batch间的差异较大,会导致loss曲线震荡比较严重,收敛速度会比较慢;而batch size较大时,相邻mini-batch间的差异较小,loss曲线较平滑,收敛速度相对较快,但由于梯度下降较平滑,会导致训练只朝着一个方向走,容易陷入局部最小值。

batch size与学习率lr的配合调参:一般情况下,对于较小的batch size,设置较小的lr,避免异常值对结果造成大的扰动;而对于较大的batch size,设置大一点的lr,因为大的batch size每次迭代的梯度方向相对固定,大的lr可以加快其收敛速度。

参考文章:https://cloud.tencent.com/developer/article/1528214

仅此mark
仰望星空 脚踏实地

你可能感兴趣的:(收藏学习资料,神经网络,深度学习)