训练完train_datasets之后,model要来测试样本了。在model(test_datasets)之前,需要加上model.eval(). 否则的话,有输入数据,即使不训练,它也会改变权值。这是model中含有batch normalization层所带来的的性质。
在做one classification的时候,训练集和测试集的样本分布是不一样的,尤其需要注意这一点。
在训练模型时会在前面加上:
model.train()
在测试模型时在前面使用:
model.eval()
参考链接:
https://blog.csdn.net/iammelon/article/details/89928531
https://blog.csdn.net/weixin_38410551/article/details/104282103
https://blog.csdn.net/qq_36653505/article/details/84728489