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 相关文章推荐
Eclipse中Python开发环境搭建简单教程
Mar 23 Python
详解Python import方法引入模块的实例
Aug 02 Python
Python数据结构之单链表详解
Sep 12 Python
浅谈Scrapy框架普通反爬虫机制的应对策略
Dec 28 Python
python+opencv轮廓检测代码解析
Jan 05 Python
python生成多个只含0,1元素的随机数组或列表的实例
Nov 12 Python
python实现停车管理系统
Nov 30 Python
用Python实现大文本文件切割的方法
Jan 12 Python
python打造爬虫代理池过程解析
Aug 15 Python
Python实现RabbitMQ6种消息模型的示例代码
Mar 30 Python
pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法)
Apr 15 Python
基于python检查矩阵计算结果
May 21 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
判“新”函数:得到今天与明天的秒数
2006/10/09 PHP
PHP+DBM的同学录程序(5)
2006/10/09 PHP
destoon常用的安全设置概述
2014/06/21 PHP
PHP时间戳和日期相互转换操作实例小结
2018/12/18 PHP
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
2009/02/17 Javascript
javascript之querySelector和querySelectorAll使用介绍
2011/12/20 Javascript
Js 正则表达式知识汇总
2014/12/02 Javascript
bootstrap flask登录页面编写实例
2016/11/01 Javascript
Node.js 异步异常的处理与domain模块解析
2017/05/10 Javascript
详解vue-router2.0动态路由获取参数
2017/06/14 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
tween.js缓动补间动画算法示例
2018/02/13 Javascript
js异步上传多张图片插件的使用方法
2018/10/22 Javascript
微信小程序常用赋值方法小结
2019/04/30 Javascript
微信小程序自定义导航栏(模板化)
2019/11/15 Javascript
微信小程序按顺序同步执行的两种方式
2019/12/20 Javascript
小程序瀑布流组件实现翻页与图片懒加载
2020/05/19 Javascript
[02:51]2014DOTA2国际邀请赛 IG战队官方纪录片
2014/07/21 DOTA
探寻python多线程ctrl+c退出问题解决方案
2014/10/23 Python
python实现图片变亮或者变暗的方法
2015/06/01 Python
python3写的简单本地文件上传服务器实例
2018/06/04 Python
使用python实现回文数的四种方法小结
2019/11/24 Python
CSS3为背景图设置遮罩并解决遮罩样式继承问题
2020/06/22 HTML / CSS
如何用canvas实现在线签名的示例代码
2018/07/10 HTML / CSS
Probikekit欧盟:在线公路自行车专家
2019/07/12 全球购物
购买正版游戏和游戏激活码:Green Man Gaming
2019/11/06 全球购物
社会实践先进工作者事迹材料
2014/05/06 职场文书
供电工程专业求职信
2014/08/09 职场文书
师范生免费教育协议书范本
2014/10/09 职场文书
狂人日记读书笔记
2015/06/30 职场文书
2016新春团拜会致辞
2015/08/01 职场文书
2016春季幼儿园开学寄语
2015/12/03 职场文书
护士心得体会范文
2016/01/25 职场文书
python基础之匿名函数详解
2021/04/21 Python
SpringBoot系列之MongoDB Aggregations用法详解
2022/02/12 MongoDB
apache ftpserver搭建ftp服务器
2022/05/20 Servers