SGD中batch_size大小的影响

随机梯度下降SGD中有一个重要的超参数batch_size(批量大小),其大小对整个模型训练的影响总结如下:

    1.更大的批量会计算更计算更精确的梯度估计,但是回报是小于线性地。

            因为每次参数更新所用到的数据越多,越能代表整体损失函数的梯度,因此梯度精确度更高。

    2.极小批量通常难以充分利用多核架构,低于某个值的小批量处理并不会减少计算时间。

    3.批量处理中所有样本可以并行处理,内存消耗和批量大小呈正比,通常限制批量大小的是硬件,比如GPU显存。

    4.在GPU上,通常用2的幂数作为批量大小可以获得更少的运行时间。

    5.小批量在学习过程中加入了噪声,会有一些正则化效果。但小批量训练通常需要较小的学习率以保持稳定性,因而需要更多步来遍历数据集,导致总运行时间变大。




内容来源:深度学习(花书)。

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