直接更新优化器学习率

Directly update the optimizer learning rate

我有一个特定的学习率时间表。它基于 epoch 但与我所知道的普遍可用的不同,包括 StepLR.

有什么东西的性能相当于:

optimizer.set_lr(lr)

optimizer.set_param('lr,',lr)

然后我会在每个 epoch(或者可能更频繁)

的末尾简单地调用该方法

上下文:我正在使用 adam 优化器:

    optimizer = torch.optim.Adam(model.parameters(), lr=LrMax, weight_decay=decay) # , betas=(args.beta1, args.beta2)

更新 我找到了这个信息 https://discuss.pytorch.org/t/change-learning-rate-in-pytorch/14653:

for param_group in optimizer.param_groups:
        param_group['lr'] = lr

有没有办法确定正在使用的 adam 优化器正在采用新的学习率?

你可以这样做:

for param_group in optimizer.param_groups:
    param_group['lr'] = lr