mini-batch gradient descent

mini-batch gradient descent

mini-batch gradient descent是为了加速gradient descent而对原数据进行切片的操作。

  • mini-batch gradient
  • mini-batch的缺点
  • mini-batch-size的选择

mini-batch gradient

batch-gradient,其实就是普通的梯度下降算法。因为批量处理,所以称为batch。
当数据集很大(比如有100000个左右时),每次iteration都要将1000000个数据跑一遍,机器带不动。
于是有了mini-batch-gradient——将1000000个样本分成1000份,每份1000个,都看成一组独立的数据集,进行forward_propagation和backward_propagation。
在整个算法的流程中,cost function是局部的,但是W和b是全局的。

##缺点
1、数据集小了以后,更容易陷入局部最低点而非全局最低点。
可以这样直观理解:数据集越大,一步迈得越大,越容易看清全局最低点在哪里。
极端地,如果每份mini-batch的大小为一个样本点,那么每次iteration只能保证让当前样本的cost function最优,对于其他的样本点一无所知。
解决这个问题的办法:减小learning_rate。这样一来,虽然方向错了,但是不会错得很远。
2、多个样本一起forward/backward_propagation,是可以利用向量运算加速运算的优势的。

mini-batch-size的选择

尽量选择2的幂次方,有利于GPU的加速

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值