评价此页

LambdaLR#

class torch.optim.lr_scheduler.LambdaLR(optimizer, lr_lambda, last_epoch=-1)[来源]#

设置初始学习率。

每个参数组的学习率被设置为初始学习率乘以给定的函数。当 last_epoch=-1 时,将初始学习率设置为 lr。

参数
  • optimizer (Optimizer) – 包装的优化器。

  • lr_lambda (functionlist) – 一个函数,它根据整数参数 epoch 计算一个乘法因子,或者是一个此类函数的列表,每个函数对应于 optimizer.param_groups 中的一个组。

  • last_epoch (int) – 最后一个 epoch 的索引。默认值:-1。

示例

>>> # Assuming optimizer has two groups.
>>> num_epochs = 100
>>> lambda1 = lambda epoch: epoch // 30
>>> lambda2 = lambda epoch: 0.95**epoch
>>> scheduler = LambdaLR(optimizer, lr_lambda=[lambda1, lambda2])
>>> for epoch in range(num_epochs):
>>>     train(...)
>>>     validate(...)
>>>     scheduler.step()
>>>
>>> # Alternatively, you can use a single lambda function for all groups.
>>> scheduler = LambdaLR(opt, lr_lambda=lambda epoch: epoch // 30)
>>> for epoch in range(num_epochs):
>>>     train(...)
>>>     validate(...)
>>>     scheduler.step()
../_images/LambdaLR.png
get_last_lr()[来源]#

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

返回类型

list[float]

get_lr()[来源]#

计算学习率。

返回类型

list[float]

load_state_dict(state_dict)[来源]#

加载调度器的状态。

在保存或加载调度器时,请确保同时保存或加载优化器的状态。

参数

state_dict (dict) – 调度器状态。应该是调用 state_dict() 后返回的对象。

state_dict()[来源]#

返回调度器状态,作为一个 dict

它包含 self.__dict__ 中所有非优化器变量的一个条目。学习率 lambda 函数仅在它们是可调用对象时保存,而不是在它们是函数或 lambda 时保存。

在保存或加载调度器时,请确保同时保存或加载优化器的状态。

返回类型

dict[str, Any]

step(epoch=None)[来源]#

执行一步。