Ответ 1
Вот решение:
from torch.optim import Adam
model = Net()
optim = Adam(
[
{"params": model.fc.parameters(), "lr": 1e-3},
{"params": model.agroupoflayer.parameters()},
{"params": model.lastlayer.parameters(), "lr": 4e-2},
],
lr=5e-4,
)
Другие параметры, которые не указаны в оптимизаторе, не будут оптимизированы. Поэтому вы должны указать все слои или группы (или слои, которые вы хотите оптимизировать). и если вы не указали скорость обучения, то будет принята общая скорость обучения (5e-4). Хитрость в том, что когда вы создаете модель, вы должны дать имена слоям или вы можете сгруппировать ее.