zeekrmini-batch梯度下降
汽车宝马⼀、背景
传统的梯度下降,每次梯度下降都是对所有的训练数据进⾏计算平均梯度,这种梯度下降法叫做full-batch梯度下降法。考虑⼀种情况,当训练数据量在千万级别时,⼀次迭代需要等待多长时间,会极⼤的降低训练速度。
天津违章车辆查询>美国道奇汽车每次训练的使⽤同⼀份数据,所以loss的损失函数会是⼀直下降的,收敛到的是全局最优解。
⼆、mini-batch梯度下降
273二手车交易网如果选择介于1和最⼤训练数据量之间的⼀个bath size数据量进⾏训练,叫mini-batch 梯度下降。
每次训练的不能保证使⽤的是同⼀份数据,所以每⼀个batch不能保证都下降,整体训练loss变化会有很
多噪声,但是整体趋势是下降的,随后会在最优值附近波动,不会收敛。
三、⽐较
当batch size 为1时,如图中红⾊变化⽰意图,每⼀个训练数据都要更新权值。通过⼩的学习率,噪声丰田汉兰达爬坡
也会⼩很多,但舍弃了向量化处理带来的加速,这种梯度下降叫随机梯度下降(SGD);
当batch_size为mini batch时,如图中蓝⾊变化⽰意图,每⼀个batch更新⼀次去权值。下降会有⼀些噪声变化,但是总体趋势是⾛向拟合中⼼的;
当batch_size为full batch时,如图中⿊⾊变化⽰意图,全部数据训练完更新⼀次权值。下降时变化很快,⼀直是趋于拟合的,但是当数据量⼤时,单次迭代时间过长,这种梯度下降叫BGD(batch gradient descent)。