pytorch 实现模型不同层设置不同的学习率方式


Posted in Python onJanuary 06, 2020

在目标检测的模型训练中, 我们通常都会有一个特征提取网络backbone, 例如YOLO使用的darknet SSD使用的VGG-16。

为了达到比较好的训练效果, 往往会加载预训练的backbone模型参数, 然后在此基础上训练检测网络, 并对backbone进行微调, 这时候就需要为backbone设置一个较小的lr。

class net(torch.nn.Module):
  def __init__(self):
    super(net, self).__init__()
    # backbone
    self.backbone = ...
    # detect
    self....

在设置optimizer时, 只需要参数分为两个部分, 并分别给定不同的学习率lr。

base_params = list(map(id, net.backbone.parameters()))
logits_params = filter(lambda p: id(p) not in base_params, net.parameters())
params = [
  {"params": logits_params, "lr": config.lr},
  {"params": net.backbone.parameters(), "lr": config.backbone_lr},
]
optimizer = torch.optim.SGD(params, momentum=config.momentum, weight_decay=config.weight_decay)

以上这篇pytorch 实现模型不同层设置不同的学习率方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python Django连接MySQL数据库做增删改查
Nov 07 Python
python出现"IndentationError: unexpected indent"错误解决办法
Oct 15 Python
配置 Pycharm 默认 Test runner 的图文教程
Nov 30 Python
Python面向对象程序设计类的封装与继承用法示例
Apr 12 Python
python3获取当前目录的实现方法
Jul 29 Python
Python 3.6 中使用pdfminer解析pdf文件的实现
Sep 25 Python
Python for i in range ()用法详解
Sep 18 Python
Python标准库:内置函数max(iterable, *[, key, default])说明
Apr 25 Python
Python的Tqdm模块实现进度条配置
Feb 24 Python
Python requests库参数提交的注意事项总结
Mar 29 Python
七个Python必备的GUI库
Apr 27 Python
python中如何对多变量连续赋值
Jun 03 Python
浅析Python3 pip换源问题
Jan 06 #Python
通过实例学习Python Excel操作
Jan 06 #Python
pytorch载入预训练模型后,实现训练指定层
Jan 06 #Python
python与mysql数据库交互的实现
Jan 06 #Python
win10系统下python3安装及pip换源和使用教程
Jan 06 #Python
基于python实现文件加密功能
Jan 06 #Python
Pytorch 实现冻结指定卷积层的参数
Jan 06 #Python
You might like
apache2.2.4+mysql5.0.77+php5.2.8安装精简
2009/04/29 PHP
使用Apache的htaccess防止图片被盗链的解决方法
2013/04/27 PHP
使用PHP接收POST数据,解析json数据
2013/06/28 PHP
php函数指定默认值方法的小例子
2013/12/04 PHP
php上传文件并显示上传进度的方法
2015/03/24 PHP
PHP实现远程下载文件到本地
2015/05/17 PHP
详解PHP数组赋值方法
2015/11/07 PHP
php命令行写shell实例详解
2018/07/19 PHP
js实现省市联动效果的简单实例
2014/02/10 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
禁用页面部分JavaScript不是全部而是部分
2014/09/03 Javascript
JavaScript中获取样式的原生方法小结
2014/10/08 Javascript
node.js中的fs.statSync方法使用说明
2014/12/16 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
动态加载JavaScript文件的两种方法
2016/04/22 Javascript
JS控制HTML元素的显示和隐藏的两种方法
2016/09/27 Javascript
vue实现todolist基本功能以及数据存储功能实例详解
2019/04/11 Javascript
Vue CLI项目 axios模块前后端交互的使用(类似ajax提交)
2019/09/01 Javascript
vue-calendar-component 封装多日期选择组件的实例代码
2020/12/04 Vue.js
[46:23]OG vs EG 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
python实现将汉字转换成汉语拼音的库
2015/05/05 Python
python操作sqlite的CRUD实例分析
2015/05/08 Python
一步步解析Python斗牛游戏的概率
2016/02/12 Python
python实现发送邮件功能代码
2017/12/14 Python
python如何发布自已pip项目的方法步骤
2018/10/09 Python
Python2和Python3的共存和切换使用
2019/04/12 Python
numpy和pandas中数组的合并、拉直和重塑实例
2019/06/28 Python
HTML5视频支持检测(检查浏览器是否支持视频播放)
2013/06/08 HTML / CSS
党的群众路线教育学习材料
2014/05/12 职场文书
政治学求职信
2014/06/03 职场文书
党员干部形式主义个人整改措施
2014/09/17 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
旗帜观后感
2015/06/08 职场文书
婚礼父母致辞
2015/07/28 职场文书
新手,如何业余时间安排好写作、提高写作能力?
2019/10/21 职场文书
Python爬虫入门案例之爬取二手房源数据
2021/10/16 Python