【发布时间】:2019-05-07 18:00:31
【问题描述】:
我正在尝试使用 Pytorch 训练一个 CNN 文本分类器。我正在使用这样的 Adam 优化器。
optimizer = torch.optim.Adam(CNN_Text.parameters(), lr=args.lr)
我发现优化器的收敛速度非常快,然后它的准确度会继续缓慢下降。 (validation loss在1-2分钟内减少很多,然后继续缓慢增加)
所以,我实现了学习率衰减,
If curr_loss > val_loss:
prev_lr = param_group['lr']
param_group['lr'] = prev_lr/10
我发现它并没有太大帮助。但是,如果我手动保存模型、加载它并以降低的学习率运行训练,它确实会获得更好的性能!
这让我很难过,因为我需要继续观察梯度下降并手动更改选项。我尝试了 SGD 和其他优化器,因为我认为这是 Adam 的问题,但我找不到好的方法。
谁能帮帮我?
【问题讨论】:
标签: optimization deep-learning pytorch gradient-descent