tensorflow
tf.train.exponential_decay()
参数:
- learning_rate:初始学习率.
- global_step:用于衰减计算的全局步数,非负.用于逐步计算衰减指数.
- decay_steps:衰减步数,必须是正值.决定衰减周期.
- decay_rate:衰减率.
- staircase:若为True,则以不连续的间隔衰减学习速率即阶梯型衰减(就是在一段时间内或相同的eproch内保持相同的学习率);若为False,则是标准指数型衰减.
公式:
decayed_learning_rate = learning_rate * decay_rate ^ (global_step / decay_steps)
pytorch
torch.optim.lr_scheduler.ExponentialLR(optimizer, gamma, last_epoch=-1)
公式:
lr = lr * gamma**epoch
可以看到两者实现有不同,但pytorch实现tensorflow的模式可以利用gamma^decay_steps进行转换