TensorFlow提供了灵活的学习率设置方法——指数衰减法,使得学习率会指数级的减小,实现公式是:
decayed_learning_rate = learning_rate * decay_rate ^ (global_step / decay_steps) 其中,learning_rate表示初始学习率,global_step表示总的迭代训练次数,decay_steps表示改变学习率的间隔次数,decay_rate表示衰减速率,staircase为True表示学习率呈阶梯状衰减按为False表示连续衰减。
使用示例:
global_step
= tf
.Variable
(0, trainable
=False)
starter_learning_rate
= 0.1
learning_rate
= tf
.train
.exponential_decay
(starter_learning_rate
,global_step
, 100000, 0.96, staircase
=True)
learning_step
= (tf
.train
.GradientDescentOptimizer
(learning_rate
).minimize
(...my loss
..., global_step
=global_step
))