使用Pytorch训练,报错Runtime Error: cudnn RNN backward can only be called in training mode

直接原因:第一个Epoch训练正常,第一次切换至Eval并进行测试正常,第二个Epochs训练时报错

根本原因:默认Model的模式是

net.train()

但是测试时需要调成

net.eval()

因为再次训练时没调回 train 模式,故出现上述 bug, 只需在训练之前加上

net.train()

即可解决

posted @ 2022-03-24 22:17  TheBigSeven  阅读(1733)  评论(0)    收藏  举报