本文主要是介绍【PyTorch 新手基础】一分钟快速部署 learning rate decay,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
【方法一:
ReduceLROnPlateau
】当设定指标在最近几个epoch中都没有变化时,调整学习率。optimizer = torch.optim.SGD(net.parameters(), lr=learning_rate, weight_decay=0.01) scheduler = torch.optim.lr_sheduler.ReduceLROnPlateau(optimizer, mode='min', factor=0.1, patience=10) scheduler.step(设定指标) ## 判断一次是否更新
主要参数:
- mode:min 或 max
- min:表示当指标
patience
个 epoch 都不再降低 ,max:都不再升高
- min:表示当指标
- patience: 忍受多少个 epoch 不变化,再调整 learning rate
- factor: 学习率调整倍数,需要调整时,lr *= factor
- mode:min 或 max
-
【方法二:
StepLR
】每 n=step_size 轮,调整学习率scheduler = torch.optim.lr_sheduler.StepLR(optimizer, step_size=30, gamma=0.1)
主要参数:
- step_size: 等待多少 epoch,再调整 learning rate
- gamma: 学习率调整倍数,需要调整时,lr *= gamma
- B站视频参考资料
这篇关于【PyTorch 新手基础】一分钟快速部署 learning rate decay的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!