学习率调参一直是我们调参中非常重要的一个点,如果设置的太大,会导致网络跳过最优值,如果设置的太小,会导致学习的收敛速度太慢。
本文主要讲两种学习率的调参方法:学习率衰减和学习率对数均匀取值。
1. 学习率衰减
学习率衰减问题主要是让学习率前期以一个较大的学习率来训练,使得模型快速迭代,训练收敛,而后期为了使得模型不跳过最优点,我们就需要将学习率以一个较小的值来迭代,所以主要就是将学习率设置为从大到小来逐步训练。需要注意的是,这里学习率的调整不是一个iteration调整一次,而是一个epoch结束之后调整一次。
主要有以下几种调整方法(设置 t 为第 t 次epoch):
(1)第一种是设置一个和 t 成反比形式的学习率函数:
decay_rate 在上面的公式中也是需要我们调试的一个超参数,例如可以设置初始值为1.
(2) 设置一个学习率的指数衰减