关于梯度下降

批量梯度下降法BGD

  通过对所有的样本的计算来求解梯度的方向

小批量梯度下降法MBGD  Minibatch

  通过对一部分个样本 (batch_size个) 的计算来求解梯度的方向

  增大batch_size:

    内存利用率提高,但可能遇到内存不足的问题

    矩阵乘法的并行化效率提高

    跑完一次全数据集所需的迭代次数减少,对于相同数据量的处理速度加快。要想达到相同的精度,其所花费的时间增加,从而对参数的修正也就显得更加缓慢

    在一定范围内,一般来说 Batch_Size 越大,其确定的下降方向越准,引起训练震荡越小。

随机梯度下降法SGD  online training 在线学习

  每次仅仅对一个样本 (batch_size=1) 的计算来求解梯度的方向

  每次修正方向以各自样本的梯度方向修正,横冲直撞各自为政,难以达到收敛。如图所示:

  

 reference: https://blog.csdn.net/fuwenyan/article/details/53914371

原文地址:https://www.cnblogs.com/cbattle/p/9460426.html