Pytorch訓練網路時調整學習率

2021-09-22 17:57:28 字數 562 閱讀 8217

為了得到更好的網路,學習率通常是要調整的,即剛開始用較大的學習率來加快網路的訓練,之後為了提高精確度,需要將學習率調低一點。如圖所示,步長(學習率)太大容易跨過最優解。

**如下:表示每20個epoch學習率調整為之前的10%

optimizer = optim.sgd(gan.parameters(), 

lr=0.1,

momentum=0.9,

weight_decay=0.0005)

lr = optimizer.param_groups[0]['lr'] * (0.1 ** (epoch // 20))

for param_group in optimizer.param_groups:

param_group['lr'] = lr

print(optimizer.param_groups[0]['lr'])

Pytorch 如何訓練網路時調整學習率

為了得到更好的網路,學習率通常是要調整的,即剛開始用較大的學習率來加快網路的訓練,之後為了提高精確度,需要將學習率調低一點。如圖所示,步長 學習率 太大容易跨過最優解。表示每20個epoch學習率調整為之前的10 optimizer optim.sgd gan.parameters lr 0.1,m...

pytorch調整訓練學習率方法

pytorch學習率調整策略通過torch.optim.lr scheduler介面實現。pytorch提供的學習率調整策略分為三大類,分別是 a.有序調整 等間隔調整 step 按需調整學習率 multistep 指數衰減調整 exponential 和 余弦退火cosineannealing。b...

pytorch筆記 調整網路學習率

1 class lenet t.nn.module 2def init self 3 super lenet,self init 4 self.features t.nn.sequential 5 t.nn.conv2d 3,6,5 6t.nn.relu 7 t.nn.maxpool2d 2,2 8...