在构造优化器对象时,第一个参数不传递模型的所有参数,而是传递一个列表。将要更新的参数构造一个单独的参数组,其中包含属于它的参数列表。
# 实例
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的动量对所有参数都适用。
本文详细解析了如何在PyTorch中通过优化器构造参数分组,实现不同层的学习率调整。示例展示了如何为模型的不同部分设置不同的学习率和动量,以实现更精细的训练控制。
584

被折叠的 条评论
为什么被折叠?



