当前位置:网站首页>深度学习:优化器
深度学习:优化器
2022-08-09 02:53:00 【ZERO_pan】
0. 各种优化器介绍
参考这个博客: 各种优化器SGD,AdaGrad,Adam,LBFGS都做了什么?
1.优化器选择(优先选择以下三个)
1.0. 代码使用pytorch
1.1. SGD+Momentum
optimer = optim.SGD(model.parameters(), lr=0.1, weight_decay=0.2, momentum=0.9, nesterov=True)
- weight_decay:L2正则化惩罚系数
- momentum:惯性动量
- nesterov:就是Nesterov Accelerated Gradient这个优化器,防止按照惯性走的太快,会衡量一下梯度做出修正
- 以上超参数需要调参
1.2. Adam
optimer= optim.Adam(model.parameters(), lr=0.1, weight_decay=0)
- 为不同参数产生自适应的学习速率
- 没有L2正则化
1.3. AdamW(Adam+L2正则)
optimer = optim.AdamW(model.parameters(), lr=0.1, weight_decay=0.2)
2. 学习率更新
手动设置的学习率更新。用的比较少,可以结合SGD使用。
step1.设置一个动态学习率
optimer = optim.SGD(model.parameters(), lr=0.1, weight_decay=0.2, momentum=0.9, nesterov=True)
scheduler = optim.lr_scheduler.LinearLR(optimer , start_factor=1.0, end_factor=0.6, total_iters=5)
start_factor:开始的权重系数
end_factor:结束的权重系数
total_iters:迭代系数
step2.在更新模型参数的同时,更新学习率
optimer.step()
scheduler.step()
step3.学习率
- 0.1*1.0=0.1
- 0.1*0.9=0.09
- 0.1*0.8=0.08
- 0.1*0.7=0.07
- 0.1*0.6=0.06
- 0.06
- 0.06
- 不再改变

边栏推荐
猜你喜欢

全文翻译:Multimodal Neural Networks: RGB-D for Segmantic Segmentation and Object Detection

那些关于DOM的常见Hook封装(一)

Likou Brush Question Record 4.1-----209. The sub-array with the smallest length

【剑指offer】二进制中1的个数&&2的幂

The building had been registry cluster, load balancing

Shell脚本:正则表达式

Kubernetes:(十四)安全机制(一定要做好安全措施哦)

Jenkins配置钉钉通知

金融行业软件测试面试题(含答案)| 入门指南

自动化测试框架总结
随机推荐
马斯克被因狗狗币被索赔2580亿美元 操纵价格牟利?狗狗币已下跌92%
金融行业软件测试面试题(含答案)| 入门指南
【面试整理】-- 多线程
Pytest+request+Allure实现接口自动化框架
Jenkins配置钉钉通知
《独行月球》:独孤月的两次选择,让一个“中间人”成为大英雄
DSP28379学习笔记 (一)——GPIO基本操作
不会吧!不会吧!居然还有人不知道重绘以及回流
按钮点击动画
LintCode 146. 大小写转换 II
接口的安全性测试,应该从哪些方面入手?
Processing Point Clouds
多态 polymorphism
grafana的panel点击title,没有反应,没有出现edit选项
数字 05 verilog&vivado2018.2零散笔记
图论相关知识
MVVM项目开发(商品管理系统二)
button click animation
普通人如何增加收入
原文翻译:Structure Aware Single-stage 3D Object Detection from Point Cloud