torch.no_grad: 影响模型的自微分器,使得其停止工作;这样的话,数据计算的数据就会变快,内存占用也会变小,因为没有了反向梯度计算,当然,我哦们也无法做反向传播。 model.eval() 和model.train() : 告诉模型中的所有层,目前处于的状态,是训练还是测试阶段,从而每一层做出相应的行为和动作。batchnorm和dropout层会因为状态的不同,而有不同的行为和反应。