mindspore.experimental.optim.lr_scheduler.ConstantLR
- class mindspore.experimental.optim.lr_scheduler.ConstantLR(optimizer, factor=1.0 / 3, total_iters=5, last_epoch=- 1)[源代码]
将每个参数组的学习率按照衰减因子 factor 进行衰减,直到 last_epoch 达到 total_iters。注意,这种衰减可能与外部对于学习率的改变同时发生。
警告
这是一个实验性的动态学习率接口,需要和 mindspore.experimental.optim 下的接口配合使用。
- 参数:
optimizer (
mindspore.experimental.optim.Optimizer
) - 优化器实例。factor (float,可选) - 学习率的衰减因子。 默认值:
1.0 / 3
。total_iters (int,可选) - 学习率进行衰减的执行次数,当 last_epoch 数达到 total_iters,恢复学习率。默认值:
5
.last_epoch (int,可选) - 当前scheduler的 step() 方法的执行次数。默认值:
-1
。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> from mindspore import nn >>> from mindspore.experimental import optim >>> net = nn.Dense(2, 3) >>> optimizer = optim.Adam(net.trainable_params(), 0.05) >>> # Assuming optimizer uses lr = 0.05 for all groups >>> # lr = 0.025 if epoch <4 >>> # lr = 0.05 if epoch >= 4 >>> scheduler = optim.lr_scheduler.ConstantLR(optimizer, factor=0.5, total_iters=4) >>> for i in range(6): ... scheduler.step() ... current_lr = scheduler.get_last_lr() ... print(current_lr) [Tensor(shape=[], dtype=Float32, value= 0.025)] [Tensor(shape=[], dtype=Float32, value= 0.025)] [Tensor(shape=[], dtype=Float32, value= 0.025)] [Tensor(shape=[], dtype=Float32, value= 0.05)] [Tensor(shape=[], dtype=Float32, value= 0.05)] [Tensor(shape=[], dtype=Float32, value= 0.05)]