pytorch 模型不同层设置不同的学习率
2018-07-13 09:16
330 查看
在目标检测的模型训练中, 我们通常都会有一个特征提取网络backbone, 例如YOLO使用的darknet SSD使用的VGG-16。
为了达到比较好的训练效果, 往往会加载预训练的backbone模型参数, 然后在此基础上训练检测网络, 并对backbone进行微调, 这时候就需要为backbone设置一个较小的lr。
[code]class net(torch.nn.Module): def __init__(self): super(net, self).__init__() # backbone self.backbone = ... # detect self....
在设置optimizer时, 只需要参数分为两个部分, 并分别给定不同的学习率lr。
[code]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)
阅读更多
相关文章推荐
- 在sparkle中如何对3d模型设置不同的Brush材质
- pytorch给同一个layer的weight和bias设置不同的学习速率
- 【tensorflow】在不同层上设置不同的学习率,fine-tuning
- 使用Excel对象模型在Excel单元格中设置不同的字体
- 处理模型——对不同对象设置不同的世界矩阵,组合世界矩阵
- Torch7入门续集补充(2)--- 每一层设置不同的学习率(finetuning有用)
- PyTorch(三)——使用训练好的模型测试自己图片
- 在pandas中, DataFrame的 ix(loc, iloc)属性的设置误区,以及reindex可以找到两个df不同之处
- ASP.NET MVC在服务端把异步上传的图片裁剪成不同尺寸分别保存,并设置上传目录的尺寸限制
- 通过HTML的方式给textview设置不同的颜色
- keras 设置学习率的办法
- UITabBarItem title 和self.title设置不同的标题
- JQuery EasyUI-DataGrid:列名、数据列分别设置不同对齐方式
- 【练习6.7】设置cvCanny的不同参数处理图像,对比结果
- 不同用户设置ssh信任关系不输入密码执行scp 命令
- 设置textview显示不同的字体和颜色
- 设置GroupBox里的不同控件的Enabled属性
- 两个div块中的文字所占用的高度在不同浏览器中不一致,此时应设置两个div块中height和line-height
- iOS-设置控件不同方位的圆角(OC & Swift)
- itexpdf同一个段落不同文字,如何设置不同的格式