評價此頁

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)[來源]#

執行一步。