LinearLR¶
- class torch.optim.lr_scheduler.LinearLR(optimizer, start_factor=0.3333333333333333, end_factor=1.0, total_iters=5, last_epoch=-1, verbose='deprecated')[source][source]¶
通过线性更改小的乘法因子来衰减每个参数组的学习率。
乘法运算持续到 epoch 数达到预定义的里程碑:total_iters。请注意,这种衰减可以与来自此调度器外部的学习率的其他更改同时发生。当 last_epoch=-1 时,将初始 lr 设置为 lr。
- 参数
optimizer (Optimizer) – 包裹的优化器。
start_factor (float) – 我们在第一个 epoch 中乘以学习率的数字。乘法因子在随后的 epoch 中向 end_factor 变化。默认值:1./3。
end_factor (float) – 我们在线性变化过程结束时乘以学习率的数字。默认值:1.0。
total_iters (int) – 乘法因子达到 1 的迭代次数。默认值:5。
last_epoch (int) – 最后一个 epoch 的索引。默认值:-1。
如果
True
,则为每次更新向 stdout 打印消息。默认值:False
。2.2 版本后已弃用:
verbose
已弃用。请使用get_last_lr()
访问学习率。
示例
>>> # Assuming optimizer uses lr = 0.05 for all groups >>> # lr = 0.025 if epoch == 0 >>> # lr = 0.03125 if epoch == 1 >>> # lr = 0.0375 if epoch == 2 >>> # lr = 0.04375 if epoch == 3 >>> # lr = 0.05 if epoch >= 4 >>> scheduler = LinearLR(optimizer, start_factor=0.5, total_iters=4) >>> for epoch in range(100): >>> train(...) >>> validate(...) >>> scheduler.step()
- load_state_dict(state_dict)[source]¶
加载调度器的状态。
- 参数
state_dict (dict) – 调度器状态。应为从调用
state_dict()
返回的对象。