深度学习之超参调节 、算法优化

  • 首先介绍下,mini-batch gradient descent 在之前的讲解中,我们使用梯度下降来优化时,都是将所有training data全部输入,计算cost 这种算法叫做 batch gradient descent。这种算法只适用于训练集较小的情况。比如 训练集大小 m <2000时。
    通常情况下,深度学习的训练集都会很大,所有最常用的 mini-batch gradient descent ,这里我们就要选择 mini-batch size了,这也是一个超参数,如下图,通常可以选择 64/128/256/512 或者1024总之都是2的指数
    mini-batch gradient descent 优点,训练速度快,高效
    原因: 1它不像batch gradient descent 每次迭代要把整个数据集计算法,当数据量很大时,计算缓慢很耗时。
    2 合适的batch size 可以继续利用vecterization 向量化计算来加速计算。
    在这里插入图片描述
  • 除了mini-batch gradient descent 外还有以下常用优化算法:
  • gradient descent with Momentum 它的基本思想是结合过去的梯度值做一个平均,以此来平滑整体的梯度序列,使得梯度能够更快的收敛到最优点。 要理解Momentum 你要首先理解 Exponentially Weighted Averages它的思想就是通过公式处理一个序列,使得新的序列更加平滑。
    这里的主要步骤,首先创建一个大小与参数长度相等的容器V ,初始值设为0,套用如下公式: V d W = β ∗ V d W + ( 1 − β ) ∗ d W V_{dW}=\beta*V_{dW}+(1-\beta)*dW VdW=βVdW+(1β)dW其中 β \beta β是一个超参,它的值在0-1之间,通常在0.8~0.999之间,值越大代表平均了更久之前的数据。例如0.9代表平均之前10条数据。每次迭代时,用上述公式计算 V d W V_{dW} VdW,然后更新参数 W = W − α ∗ V d W W=W-\alpha*V_{dW} W=WαVdW
  • RMSprop 公式如下 V d W = β 1 ∗ V d W + ( 1 − β 1 ) ∗ d W V_{dW}=\beta1*V_{dW}+(1-\beta1)*dW VdW=β1VdW+(1β1)dW
    S d W = β 2 ∗ V d W + ( 1 − β 2 ) ∗ d W 2 S_{dW}=\beta2*V_{dW}+(1-\beta2)*dW^2 SdW=β2VdW+(1β2)dW2更新参数用如下公式: W = W − α ∗ V d W S d W + ϵ W=W-\alpha*\frac{V_{dW}}{\sqrt{S_{dW}}+\epsilon} W=WαSdW +ϵVdW其中 α \alpha α是学习率 ϵ \epsilon ϵ是一个极小的正数,为了防止分母为0
  • Adam 结合RMSprop 和 Momentum 被认为是目前最高效的优化算法之一。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值