pytorch常用优化器总结

1.梯度下降原理

        梯度下降的主要目的是通过迭代找到目标函数的最小值,或者收敛到最小值。最常用的例子就是下山,例如每1步算是一次步长,每次向下走都找最陡峭的地方(不考虑摔死的情况...)。假设山体是近似光滑没有山谷的,那么最终会找到一条最短最快的下山路径,这个路径也是梯度最陡的地方。

                                                                           公式: x1 = x0 + λ▽J(x)                                 (1)

    J是关于x的一个函数,我们当前所处的位置为x0点,要从这个点走到J的最小值点。首先确定前进的方向,也就是梯度的反向,然后λ的步长,就到达了x1这个点。以上就是梯度下降的直观解释。

2.深度学习中的梯度下降

2.1 sgd

        深度学习一般都用小批量梯度下降算法(Mini-batch gradient descent)。下面再说sgd算法,实际上指的就是mini-batch gradient descent算法,没有人会去一次拿整个数据集或者一个样本进行优化。核心原理还是公式1。

优缺点;

(1) 学习率大小和策略选择困难。使用mini-batch的时候,可以收敛得很快.

(2) 学习率不够智能,对参数的各个维度一视同仁。

(3) 同时面临局部极值和鞍点的问题。不能解决局部最优解的问题

(4) 在随机选择梯度的同时会引入噪声,使得权值更新

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值