pytorch优化器动态学习率和动量设置(scheduler & momentum)
2022/7/22 23:26:46
本文主要是介绍pytorch优化器动态学习率和动量设置(scheduler & momentum),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、动量(momentum)
可以给优化器加上一个动量,可以有效缓解局部最优问题。
原理上就是让优化过程从
W = W - lr * dW
变成
V = momentum * V - lr * dW
W = W + V
使用示例:
from torch import optim ... model = Model() optimizer = optim.SGD(model.parameters(), lr=0.005, momentum=0.9) ...
二、优化器动态学习率设置(scheduler)
可以让学习率随着epoch的增大而减小,此处以ExponentialLR为例
使用示例:
from torch.optim.lr_scheduler import ExponentialLR ... optimizer = optim.SGD(catp.parameters(), lr=0.005, momentum=0.9) scheduler = ExponentialLR(optimizer, gamma=0.99) for epoch in range(epochs): for i, batch_data in enumerate(dataloader): loss = ... optimizer.zero_grad() loss.backward() optimizer.step() scheduler.step() ...
这篇关于pytorch优化器动态学习率和动量设置(scheduler & momentum)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-19升级 Gerrit 时有哪些注意事项?-icode9专业技术文章分享
- 2024-11-19pnpm是什么?-icode9专业技术文章分享
- 2024-11-19将文件或目录压缩并保留到指定的固定目录怎么实现?-icode9专业技术文章分享
- 2024-11-19使用 tar 命令压缩文件并且过滤掉某些特定的目录?-icode9专业技术文章分享
- 2024-11-18Nacos安装入门教程
- 2024-11-18Nacos安装入门:轻松掌握Nacos服务注册与配置管理
- 2024-11-18Nacos配置中心入门:新手必读教程
- 2024-11-18Nacos配置中心入门教程
- 2024-11-18RocketMQ IM和业务服务沟通入门教程
- 2024-11-18Rocketmq安装入门