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