学习率衰减 Learning Rate Decay

Why should learning rate decay?


      以目前最主流的参数优化算法Gradient Descent为例,为了让梯度下降的性能更优,我们需要将学习率设定在一个合适的范围。具体来说,学习率其实就是算法的步长,一步走多少决定了很多事情:步子大了,优化效率高,很可能一下越过最优解;相反,步子小了,优化效率低,很可能陷进一个局部最优解怎么都走不出来。所以学习率的调整在算法参数最优的过程中至关重要。

How decay learning rate?


  • exponential_decay:指数衰减
    decayed_learning_rate = learning_rate * decay_rate ^ (global_step / decay_steps)
  • natural_exp_decay:自然指数衰减
    decayed_learning_rate = learning_rate * exp(-decay_rate * global_step)
  • inverse_time_decay:逆时间衰减
    decayed_learning_rate = learning_rate / (1 + decay_rate * global_step / decay_step)
  • polynomial_decay:多项式衰减
    global_step = min(global_step, decay_steps)
    decayed_learning_rate = (learning_rate - end_learning_rate) *(1 - global_step / decay_steps) ^ (power) + end_learning_rate
参数 意义
decayed_learning_rate 衰减后的学习率
learning_rate 初始学习率
decay_rate 衰减率
global_step 当前的step
decay_steps 衰减周期

你可能感兴趣的:(机器学习,机器学习,学习率,算法,learning,rate,衰减)