快捷方式

线性LR

class torch.optim.lr_scheduler.LinearLR(optimizer, start_factor=0.3333333333333333, end_factor=1.0, total_iters=5, last_epoch=-1, verbose='deprecated')[source]

通过线性更改小的乘法因子来衰减每个参数组的学习率。

乘法在 epoch 数达到预定义的里程碑(total_iters)之前进行。请注意,这种衰减可能与来自此调度程序外部的学习率的其他变化同时发生。当 last_epoch=-1 时,将初始 lr 设置为 lr。

参数
  • 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。

  • verbose (bool | str) –

    如果为 True,则为每次更新在标准输出中打印一条消息。默认值: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()
get_last_lr()

返回当前调度程序计算的最后一个学习率。

返回类型

List[float]

get_lr()[source]

计算学习率。

load_state_dict(state_dict)

加载调度程序的状态。

参数

state_dict (dict) – 调度程序状态。应该是从调用 state_dict() 返回的对象。

print_lr(is_verbose, group, lr, epoch=None)

显示当前学习率。

从版本 2.4 开始已弃用: print_lr() 已弃用。请使用 get_last_lr() 访问学习率。

state_dict()

将调度器的状态作为 dict 返回。

它包含 self.__dict__ 中每个变量的条目,这些变量不是优化器。

step(epoch=None)

执行一步。

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源