1. pytorch检验版本是否成功
import torch
print(torch.cuda.is_available())
true则成功,false则失败
2.model.train(),model.eval()的作用
关于代码中的model.train(),model.eval()的说明:
参考 PyTorch进行训练和测试时指定实例化的model模式为:train/eval:
eval即evaluation模式,train即训练模式。仅仅当模型中有Dropout和BatchNorm是才会有影响。因为训练时dropout和BN都开启,而一般而言测试时dropout被关闭,BN中的参数也是利用训练时保留的参数,所以测试时应进入评估模式。
3.Tensor.item()
Tensor.item():Use torch.Tensor.item() to get a Python number from a tensor containing a single value
4.optimizer.zero_grad()
梯度置零,清空过往梯度,这种操作模式的好处可参考https://www.zhihu.com/question/303070254