赞
踩
神经网络在开始训练时是很不稳定的。如果一开始步子太大(学习率太大),可能会使网络向着非最优的方向收敛。如果学习率设置太小,又会使训练过程变得十分缓慢。warm up是一种折中方案,首先让学习率由低到高逐渐增大,称之为热身阶段。但不能一直采用高学习率,因为这样会使网络来回震荡,始终无法收敛到一个最优值,所以在热身之后,学习率要随着训练的过程缓慢降低,使网络得到一个较好的收敛。
在video restoration transformer(VRT)的code中,采用的就是反复warmup的方法,每训练一段就经历一次warmup的过程,如下图。
github对应项目地址是 VRT_code。
在做实验的过程中,修改初始学习率,网络最终的效果也会有影响。但这个影响是有限的,体现在RDNet的实验中,多次修改初始学习率后,最好的初始学习率和较差的初始学习率,其测出的测试集平均PSNR差了约0.2dB左右,这在该project中是一个不大不小的gap。0.2dB的差距不能将其视为差不多,实际上这个差距已经较为可观了,但这样一个gap比起方法上的革新带来的巨大gap来说,又比较小。
通过调节学习率确实可以一定程度上提升网络的性能,但这种提升局限于方法本身,不可能带来非常大的增益。
其它学习率调节方式可参看 史上最全学习率调整策略lr_scheduler。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。