优化器

1. 神门是优化器

pytorch的优化器:管理并更新模型中可学习参数的值,使得模型输出更接近真实标签
梯度下降
参考 : https://blog.csdn.net/weixin_40170902/article/details/80092628
在这里插入图片描述

在这里插入图片描述

导数:函数在指定坐标轴上的变化率
方向导数:指定方向上的变化率
梯度:一个向量,方向为方向导数取得最大值的方向

2. optimizer的属性

在这里插入图片描述

• de faul ts:优化器超参数
• s ta te:参数的缓存,如mom en tum的缓存
• pa rams_g roups:管理的参数组
• _s tep_coun t:记录更新次数,学习率调整中使用

3. optimizer的方法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

pytorch特性:张量梯度不自动清零
• zero_grad():清空所管理参数的梯度
• step():执行一步更新
• add_param_group():添加参数组
• state_dict():获取优化器当前状态信息字典
• load_state_dict() :加载状态信息字典

4. learning rate 学习率

梯度下降: 𝒘𝒊+𝟏 = 𝒘𝒊 − 𝒈(𝒘𝒊 ) 𝒘𝒊+𝟏 = 𝒘𝒊 − LR * 𝒈(𝒘𝒊)
学习率(learning rate)控制更新的步伐
使用较小的学习率可以让模型收敛,较大会导致梯度爆炸

5. momentum动量

在这里插入图片描述

6. torch.optim.SGD

在这里插入图片描述

主要参数:
• params:管理的参数组
• lr:初始学习率
• momentum:动量系数,贝塔
• weight_decay:L2正则化系数
• nesterov:是否采用NAG

7. pytorch的十种优化器

  1. optim.SGD:随机梯度下降法
  2. optim.Adagrad:自适应学习率梯度下降法
  3. optim.RMSprop: Adagrad的改进
  4. optim.Adadelta: Adagrad的改进
  5. optim.Adam:RMSprop结合Momentum
  6. optim.Adamax:Adam增加学习率上限
  7. optim.SparseAdam:稀疏版的Adam
  8. optim.ASGD:随机平均梯度下降
  9. optim.Rprop:弹性反向传播
  10. optim.LBFGS:BFGS的改进
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值