Pytorch 升级后,我的模型几乎是随机输出

After Pytorch Upgrade , my model is giving almost random output

我训练、测试并仍在使用 "Pytorch 0.4.1" 中的模型。如果我使用 pitch 0.4.1,它曾经并且仍然工作正常(输出是应该的)。 但是当我升级到版本 1.0.1 时,每次我尝试评估相同的输入图像时,我都会得到不同的输出(这是一个回归)。

我试图查看这些版本中发生了什么变化,但由于我没有收到任何错误、任何警告,我不确定我应该具体寻找什么。

PS: 我检查了权重,当我加载模型时它们也是一样的

是因为drop out层。 Model.eval 禁用丢弃层。很简单。 但是现在在 Pytorh 升级中,如果没有在模型 init 函数中专门定义 Dropout,它不会在 eval 期间被禁用。 至少这是我的案子的原因。