本文簡要介紹python語言中 torch.optim.lr_scheduler.ReduceLROnPlateau
的用法。
用法:
class torch.optim.lr_scheduler.ReduceLROnPlateau(optimizer, mode='min', factor=0.1, patience=10, threshold=0.0001, threshold_mode='rel', cooldown=0, min_lr=0, eps=1e-08, verbose=False)
optimizer(Optimizer) -包裝優化器。
mode(str) -
min
、max
之一。min
模式下,當監控數量停止減少時,lr會減少;在max
模式下,當監控的數量停止增加時,它將減少。默認值:‘min’。factor(float) -學習率降低的因子。 new_lr = lr * 因子。默認值:0.1。
patience(int) -沒有改善的時期數,之後學習率將降低。例如,如果
patience = 2
,那麽我們將忽略前 2 個沒有改善的 epoch,並且隻有在第 3 個 epoch 之後損失仍然沒有改善時才會降低 LR。默認值:10。threshold(float) -衡量新最佳值的閾值,僅關注重大變化。默認值:1e-4。
threshold_mode(str) -
rel
、abs
之一。在rel
模式下,dynamic_threshold = ‘max’ 模式下的最佳 * ( 1 + 閾值 ) 或min
模式下的最佳 * ( 1 - 閾值 )。在abs
模式下,dynamic_threshold =max
模式中的最佳 + 閾值或min
模式中的最佳 - 閾值。默認值:‘rel’。cooldown(int) -lr 減少後恢複正常操作之前要等待的紀元數。默認值:0。
eps(float) -應用於 lr 的最小衰減。如果新舊lr之差小於eps,則忽略更新。默認值:1e-8。
verbose(bool) -如果
True
,每次更新都會向標準輸出打印一條消息。默認值:False
。
當指標停止改進時降低學習率。一旦學習停滯,模型通常會受益於將學習率降低 2-10 倍。該調度程序讀取一個指標數量,如果在 ‘patience’ 的 epoch 數量上沒有看到任何改進,則學習率會降低。
示例
>>> optimizer = torch.optim.SGD(model.parameters(), lr=0.1, momentum=0.9) >>> scheduler = ReduceLROnPlateau(optimizer, 'min') >>> for epoch in range(10): >>> train(...) >>> val_loss = validate(...) >>> # Note that step should be called after validate() >>> scheduler.step(val_loss)
參數:
相關用法
- Python PyTorch ReflectionPad1d用法及代碼示例
- Python PyTorch RemoteModule用法及代碼示例
- Python PyTorch ReplicationPad1d用法及代碼示例
- Python PyTorch Resample用法及代碼示例
- Python PyTorch ReplicationPad3d用法及代碼示例
- Python PyTorch ReflectionPad2d用法及代碼示例
- Python PyTorch RelaxedOneHotCategorical用法及代碼示例
- Python PyTorch RendezvousHandler.shutdown用法及代碼示例
- Python PyTorch ReLU用法及代碼示例
- Python PyTorch ReLU6用法及代碼示例
- Python PyTorch ReplicationPad2d用法及代碼示例
- Python PyTorch ReflectionPad3d用法及代碼示例
- Python PyTorch RelaxedBernoulli用法及代碼示例
- Python PyTorch RNNTLoss用法及代碼示例
- Python PyTorch RRef.rpc_sync用法及代碼示例
- Python PyTorch RReLU用法及代碼示例
- Python PyTorch RRef.backward用法及代碼示例
- Python PyTorch Rows2Columnar用法及代碼示例
- Python PyTorch RandomRecDataset用法及代碼示例
- Python PyTorch RandomApply用法及代碼示例
- Python PyTorch RRef.remote用法及代碼示例
- Python PyTorch RarArchiveLoader用法及代碼示例
- Python PyTorch RandomErasing用法及代碼示例
- Python PyTorch RNN用法及代碼示例
- Python PyTorch RNNCell用法及代碼示例
注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.optim.lr_scheduler.ReduceLROnPlateau。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。