在构造优化器对象时,第一个参数不传递模型的所有参数,而是传递一个列表。将要更新的参数构造一个单独的参数组,其中包含属于它的参数列表。
# 实例
model = Model(input_size, hidden_size, output_size)
optimizer = optim.SGD([
{'params': model.fc.parameters()},
{'params': model.fc2.parameters(), 'lr': 1e-3}
], lr=1e-2, momentum=0.7)
这意味着model.fc的参数使用1e-2的默认学习率,model.fc2的参数使用1e-3的学习率,0.7的动量对所有参数都适用。