pytorch中优化器optimizer.param_groups
optimizer.param_groups: 是长度为2的list,其中的元素是2个字典;
optimizer.param_groups[0]: 长度为6的字典,包括[‘amsgrad’, ‘params’, ‘lr’, ‘betas’, ‘weight_decay’, ‘eps’]这6个参数;
optimizer.param_groups[1]: 好像是表示优化器的状态的一个字典;
import torch
import torch.optim as optimw1 = torch.randn(3, 3)
w1.requires_grad = True
w2 = torch.randn(3, 3)
w2.requires_grad = True
o = optim.Adam([w1])
print(o.param_groups)
[{'amsgrad': False,'betas': (0.9, 0.999),'eps': 1e-08,'lr': 0.001,'params': [tensor([[ 2.9064, -0.2141, -0.4037],[-0.5718, 1.0375, -0.6862],[-0.8372, 0.4380, -0.1572]])],'weight_decay': 0}]
Per the docs, the add_param_group method accepts a param_group parameter that is a dict. Example of use:import torch
import torch.optim as optimw1 = torch.randn(3, 3)
w1.requires_grad = True
w2 = torch.randn(3, 3)
w2.requires_grad = True
o = optim.Adam([w1])
print(o.param_groups)
gives[{'amsgrad': False,'betas': (0.9, 0.999),'eps': 1e-08,'lr': 0.001,'params': [tensor([[ 2.9064, -0.2141, -0.4037],[-0.5718, 1.0375, -0.6862],[-0.8372, 0.4380, -0.1572]])],'weight_decay': 0}]
nowo.add_param_group({'params': w2})
print(o.param_groups)
[{'amsgrad': False,'betas': (0.9, 0.999),'eps': 1e-08,'lr': 0.001,'params': [tensor([[ 2.9064, -0.2141, -0.4037],[-0.5718, 1.0375, -0.6862],[-0.8372, 0.4380, -0.1572]])],'weight_decay': 0},{'amsgrad': False,'betas': (0.9, 0.999),'eps': 1e-08,'lr': 0.001,'params': [tensor([[-0.0560, 0.4585, -0.7589],[-0.1994, 0.4557, 0.5648],[-0.1280, -0.0333, -1.1886]])],'weight_decay': 0}]
# 动态修改学习率
for param_group in optimizer.param_groups:param_group["lr"] = lr
# 得到学习率optimizer.param_groups[0]["lr"] # print('查看optimizer.param_groups结构:')
# i_list=[i for i in optimizer.param_groups[0].keys()]
# print(i_list)
['amsgrad', 'params', 'lr', 'betas', 'weight_decay', 'eps']
参考:
https://blog.csdn.net/bc521bc/article/details/85864555
https://blog.csdn.net/AWhiteDongDong/article/details/106143413
pytorch中优化器optimizer.param_groups相关推荐
- 一文详解Pytorch中的优化器Optimizer
本文将结合源码与代码示例详细解析Optimizer的五大方法. 1. 前言 优化器主要用在模型训练阶段,用于更新模型中可学习的参数.torch.optim提供了多种优化器接口,比如Adam.RAdam ...
- Pytorch优化器Optimizer
优化器Optimizer 什么是优化器 pytorch的优化器:管理并更新模型中可学习参数的值,使得模型输出更接近真实标签 导数:函数在指定坐标轴上的变化率 方向导数:指定方向上的变化率(二元及以上函 ...
- 【PyTorch基础教程9】优化器optimizer和训练过程
学习总结 (1)每个优化器都是一个类,一定要进行实例化才能使用,比如: class Net(nn.Moddule):··· net = Net() optim = torch.optim.SGD(ne ...
- Pytorch框架之优化器 Optimizer
Pytorch框架之优化器 Optimizer 基本用法 优化器主要是在模型训练阶段对模型可学习参数进行更新, 常用优化器有 SGD,RMSprop,Adam等 优化器初始化时传入传入模型的可学习参数 ...
- Pyotrch —— 优化器Optimizer(一)
目录 1.什么是优化器 2.optimizer的属性 3.optimizer的方法 4.代码分析 5.优化器基本方法的使用 1.什么是优化器 Pytorch优化器:管理并更新模型中可学习参数的值,使得 ...
- [源码解析] PyTorch分布式优化器(1)----基石篇
[源码解析] PyTorch分布式优化器(1)----基石篇 文章目录 [源码解析] PyTorch分布式优化器(1)----基石篇 0x00 摘要 0x01 从问题出发 1.1 示例 1.2 问题点 ...
- 总结机器学习优化器Optimizer
原谅小弟搬运 只为学习还是为了自己~~~ 以经典综述文献 An overview of gradient descent optimization algorithms为线索,结合一些优秀的文章,对目 ...
- Pytorch:优化器、损失函数与深度神经网络框架
Pytorch: 优化器.损失函数与深度神经网络框架 Copyright: Jingmin Wei, Pattern Recognition and Intelligent System, Schoo ...
- mysql cbo优化器_Oracle的优化器(Optimizer) (CBO优化) 分享
Oracle在执行一个SQL之前,首先要分析一下语句的执行计划,然后再按执行 计划去执行.分析语句的执行计划的工作是由优化器(Optimiz Oracle的优化器(Optimizer) (CBO优化) ...
最新文章
- CxImage的使用及基本用法
- Java爬虫https网页内容报错SSLHandshakeException信任(忽略)所有SSL证书
- python蒙特卡洛模拟_基于Python的21点游戏蒙特卡洛模拟
- 杭电acm 1846 Brave Game(巴什博弈)
- Elasticsearch自动补全(拼音查询自动补全)
- 订餐小项目-(适合公司内部使用)
- 如果把编程语言比作是一件武器……
- Tekla图纸二次开发课程
- 百度语音识别jar下载
- etho失败,无法上网的解决方法
- 钱多多软件第二阶段冲刺1
- 【设计模式】面向对象的四个特点
- html中怎么制作太阳月亮交替,使用纯CSS实现太阳和地球和月亮运转模型动画的方法...
- 国产数据库名录和产品信息一览-2023
- python中【-1】、【:-1】、【::-1】、【n::-1】
- H5 微信公众号 授权登录 前后端分离篇(资料准备+前端01)
- 【算法与数据结构】——后缀数组
- 安装oh-my-zsh报错could not create work tree dir '/root/.oh-my-zsh'.: Permission denied的原因解决办法
- [原创歌词]网络爱人
- django之跨表查询及添加记录
热门文章
- 唐僧与女富豪媳妇:身价500亿的陈丽华:生活费1天10元钱
- 排序函数(sort、sorted、argsort、lexsort、partition、argpartition、searchsorted)
- 12306抢票系统(框架+代码)- 持续更新
- 只有 5000 个用户,却估值一亿美金?音频社交产品出了匹「黑马」
- 风口上的AIGC,技术人才动不动就年薪百万?
- 赛效:如何获得公文写作模板
- c/c++易错点收集(持续更新)
- 1.AST API详解
- Web前端 PS切图
- java谓词_java8-谓词(predicate)