【快速理解AdaGrad】AdaGrad梯度下降算法

算法背景

梯度下降法的优化各式各样,主要分为两种:

  • 减少每一次的计算量【SGD、、、】
  • 优化下降路径【动量法、AdaGrad、前两者结合的Adam算法】
    今天介绍通过优化学习率来达到优化梯度下降路径的AdaGrad方法

Adagrad算法

Adagrad优化算法被称为自适应学习率优化算法,但是调整学习率很难被人为操作,所以 Adagrad 能够自适应做这件事。

如下图所示,为几个不同的梯度下降算法的梯度下降过程,其中五角星为最优点:
在这里插入图片描述

核心思想

如果一个参数的梯度一直都非常大,那么其对应的学习率就变小一点,防止震荡,而一个参数的梯度一直都非常小,那么这个参数的学习率就变大一点,使得其能够更快地更新。

算法核心

Adagrad优化算法就是在每次使用一个 batch size的数据进行参数更新的时候,计算所有参数的梯度,对于每个参数,初始化一个变量 s ,然后每次将该参数的梯度平方求和累加到这个变量 s 上,然后在更新这个参数的时候,学习率就变为:
在这里插入图片描述

  • η为初始学习率

  • ϵ是为了数值稳定性而加上的,因为有可能 s 的值为 0,那么 0 出现在分母就会出现无穷大的情况,通常 ϵ 取 10的负10次方。

  • 这样不同的参数由于梯度不同,他们对应的 s 大小也就不同,所以上面的公式得到的学习率也就不同,这也就实现了自适应的学习率。

    使用自适应的学习率就可以帮助算法在梯度大的参数方向减缓学习速率,而在梯度小的参数方向加快学习速率,这就可以促使神经网络的训练速度的加快。

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值