評價此頁

MultiStepLR#

class torch.optim.lr_scheduler.MultiStepLR(optimizer, milestones, gamma=0.1, last_epoch=-1)[source]#

在 epoch 數達到 milestones 中的任何一個時,將每個引數組的學習率按 gamma 衰減。

請注意,這種衰減可能與此排程器之外的其他學習率變化同時發生。當 last_epoch=-1 時,將初始學習率設定為 lr。

引數
  • optimizer (Optimizer) – 包裝的最佳化器。

  • milestones (list) – epoch 索引列表。必須是遞增的。

  • gamma (float) – 學習率衰減的乘法因子。預設值:0.1。

  • last_epoch (int) – 最後一個 epoch 的索引。預設值:-1。

示例

>>> # Assuming optimizer uses lr = 0.05 for all groups
>>> # lr = 0.05     if epoch < 30
>>> # lr = 0.005    if 30 <= epoch < 80
>>> # lr = 0.0005   if epoch >= 80
>>> scheduler = MultiStepLR(optimizer, milestones=[30, 80], gamma=0.1)
>>> for epoch in range(100):
>>>     train(...)
>>>     validate(...)
>>>     scheduler.step()
../_images/MultiStepLR.png
get_last_lr()[source]#

返回當前排程器計算的最後一個學習率。

返回型別

list[float]

get_lr()[source]#

計算每個引數組的學習率。

返回型別

list[float]

load_state_dict(state_dict)[source]#

載入排程器的狀態。

引數

state_dict (dict) – 排程器狀態。應該是呼叫 state_dict() 返回的物件。

state_dict()[source]#

返回排程器狀態,作為一個 dict

它包含 self.__dict__ 中除最佳化器之外的所有變數的條目。

返回型別

dict[str, Any]

step(epoch=None)[source]#

執行一步。