在将HRNet从PyTorch框架向MindSpore迁移的过程中,由于初始学习率的选择不好,导致了最终精度没有达到预期要求。
文末有总结。
具体实验过程如下:
实验过程
-
优化器:SGD
初始学习率:0.01
学习率调整策略:poly
miou精度变化:
整体上呈上升趋势,但是没有达到预期的0.81。
经过检查,在400–484周期,miou一直是呈上升趋势。因此我有了第一个猜想:收敛速度不够。
因此,我尝试了其他的优化器和初始学习率。 -
优化器:Momentum
初始学习率:0.01
学习率调整策略:poly
miou精度变化:
-
优化器:SGD
初始学习率:0.015
学习率调整策略:poly
miou精度变化:
从上面的两个实验(以及其他更多类似实验)中可以得出一下结论:- 更换收敛更快的优化器并没有对实际的收敛速度有明显的帮助;
- 增大学习率后,精度先是正常上升,但在200–300周期出现了断崖式下跌,此后一蹶不振。
更改不同的初始学习率(均大于0.01