深度学习中的batch的大小对学习效果与时间的影响

 

除此文记录外,可以参考此:

https://www.zhihu.com/question/32673260/answer/71137399 这个答案写的很好,下次再总结下

batchsize 影响模型的泛化性能,小的batchsize能提高模型的泛化性能。随机梯度下降算法的原理如下:

深度学习中的batch的大小对学习效果与时间的影响_第1张图片

n是批量大小( batchsize),η是学习率(learning rate)。可知道除了梯度本身,这两个因子直接决定了模型的权重更新,从优化本身来看它们是影响模型性能收敛最重要的参数。

学习率直接影响模型的收敛状态,batchsize则影响模型的泛化性能。

1)相对大的batchsize 减少训练时间,提高稳定性,但降低泛化性能。

同样的epoch数目,大的batchsize需要的batch数目减少了,所以可以减少训练时间,目前已经有多篇公开论文在1小时内训练完ImageNet数据集。另一方面,大的batch size梯度的计算更加稳定,因为模型训练曲线会更加平滑。在微调的时候,大的batch size可能会取得更好的结果。

表明大的batchsize收敛到sharp minimum,而小的batchsize收敛到flat minimum,后者具有更好的泛化能力。两者的区别就在于变化的趋势,一个快一个慢,



此文参考:
链接:https://www.zhihu.com/question/32673260/answer/675161450

 

你可能感兴趣的:(深度学习-tensorflow)