optimizer = optim.SGD(pg, lr=args.lr, momentum=0.9, weight_decay=5E-5)
lf = lambda x: ((1 + math.cos(x * math.pi / args.epochs)) / 2) * (1 - args.lrf) + args.lrf  # cosine
scheduler = lr_scheduler.LambdaLR(optimizer, lr_lambda=lf)

optimizer指定使用哪个优化器;

scheduler对优化器的学习率进行调整。

只有用了optimizer.step(),模型才会更新;而scheduler.step()是对lr进行调整。optimizer.step()通常用在每个mini-batch里面,而scheduler.step()通常用在epoch里面。

optimizer种类有:

  • optim.SGD
  • optim.Adam

scheduler种类有:

pytorch有torch.optim.lr_scheduler模块提供了一些根据epoch训练次数来调整学习率(learning rate)的方法。一般情况下我们会设置随着epoch的增大而逐渐减小学习率从而达到更好的训练效果。学习率的调整应该放在optimizer更新之后。

  • torch.optim.lr_scheduler.LambdaLR
  • torch.optim.lr_scheduler.StepLR
  • torch.optim.lr_scheduler.MultiStepLR
  • torch.optim.lr_scheduler.ExponentialLR

参考:训练时的学习率调整:optimizer和scheduler - 知乎 (zhihu.com)

optimizer和scheduler相关推荐

  1. loss.backward(),scheduler(), optimizer.step()的作用

    在用pytorch训练模型时(pytorch1.1及以上版本),通常会在遍历epochs的过程中依次用到optimizer.zero_grad(),loss.backward()和optimizer. ...

  2. 【pytorch】optimizer(优化器)的使用详解

    目录 1 创建一个 Optimizer 一个简单的例子:求目标函数的最小值 Per-parameter 的优化器 2 Taking an optimization step 开始优化 optimize ...

  3. Pytorch优化器Optimizer

    优化器Optimizer 什么是优化器 pytorch的优化器:管理并更新模型中可学习参数的值,使得模型输出更接近真实标签 导数:函数在指定坐标轴上的变化率 方向导数:指定方向上的变化率(二元及以上函 ...

  4. 重学 PyTorch 第四天:Module 和 Optimizer

    Module 和 Optimizer 首先说明:在神经网络构建方面,PyTorch 也有面向对象编程和函数式编程两种形式,分别在 torch.nn 和 torch.nn.functional 模块下面 ...

  5. 优化器 optimizer

    优化器 optimizer optimizer 优化器,用来根据参数的梯度进行沿梯度下降方向进行调整模型参数,使得模型loss不断降低,达到全局最低,通过不断微调模型参数,使得模型从训练数据中学习进行 ...

  6. pytorch.optimizer 优化算法

    https://zhuanlan.zhihu.com/p/346205754 https://blog.csdn.net/google19890102/article/details/69942970 ...

  7. 3D MinkowskiEngine稀疏模式重建

    3D MinkowskiEngine稀疏模式重建 本文看一个简单的演示示例,该示例训练一个3D卷积神经网络,该网络用一个热点向量one-hot vector重构3D稀疏模式.这类似于Octree生成网 ...

  8. 利用 AssemblyAI 在 PyTorch 中建立端到端的语音识别模型

    作者 | Comet 译者 | 天道酬勤,责编 | Carol 出品 | AI 科技大本营(ID:rgznai100) 这篇文章是由AssemblyAI的机器学习研究工程师Michael Nguyen ...

  9. pytorch优化器与学习率设置详解

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者 | 小新 来源 | https://a.3durl.cn/Yr ...

最新文章

  1. 一份忧伤的大厂生存百科
  2. .NET轻量级任务管理类
  3. android表情开源,Android可能很快就会获得新的表情符号 而无需等待操作系统更新...
  4. Linux将数据从小存储通过FTP发送到大存储中
  5. LINQ TO XML 应用之 Win8 Metro 开发
  6. Length和lengthb的区别
  7. μVision5界面常用单词解释
  8. 中央民族大学教授赵小兵:少数民族语言信息化关乎民众福祉,需要各界的更多支持...
  9. DESC查看表的结构
  10. 视频后期调色,PR调色分享,lumetri color调色
  11. c51语言主函数,51单片机的基本c51语言程序介绍
  12. UI设计师和美工有哪些区别?
  13. 清明2013——祭父
  14. Ceph Cache Tier
  15. spring-boot、jeecg-boot中解除shiro限制了上传视频文件,以及设置上传文件大小的限制
  16. 适应各种工控组态软件的图库,一款常用的工控图库,包括3D按钮 、箭头、对角线、多边形、鼓风机、锅炉、工厂等多种图形
  17. CEC2019:麻雀搜索算法(提供Matlab代码)
  18. maven仓库已经存在jar包但是还是显示引入错误/失败
  19. 面对如何才能搭建优质网约车平台,让驾驶证识别来帮忙
  20. matlab画sar成像模糊,SAR成像学习(三)距离方向成像matlab代码解析 1

热门文章

  1. 现在距离1970年1月1日的天数
  2. 河北农业大学林学可转计算机系吗,河北农业大学什么专业好
  3. Python 黑箱 :输入与输出-day4
  4. NoSQL - MongoDB 常见的shell操作 - 安装
  5. prefab内容分析
  6. Unity 编辑Prefab的NavMesh
  7. 前端 好看实用的颜色大全(16进制)
  8. OFFICE文件碎片恢复
  9. 解读Google Analytics(分析)客户端javascript代码
  10. 一目了然——堆的概念及结构