作者 | hyk_1996来源 | CSDN博客1. nn.Module.cuda() 和 Tensor.cuda() 的作用效果差异无论是对于模型还是数据,cuda()函数都能实现从CPU到GPU的内存迁移,但是他们的作用效果有所不同。对于nn.Module:model = model.cuda() model.cuda() 上面两句能够达到一样的效果,即对model自身进行的内存迁移。对于Tensor:和nn.Module不同,调用tensor.cuda()只是返回这个tensor对象在GPU内存上的拷贝,而不会对自身进行改变。因此必须对tensor进行重新赋值,即tensor=tensor.cuda().例子:model = create_a_model()tensor = torch.zeros([2,3,10,10])model.cuda()tensor.cuda()model(tensor) # 会报错tensor = tensor.cuda()model(tensor) # 正常运行2. PyTorch 0.4 计算累积损失的不同以广泛使用的模式total_loss += loss.data[0]为例。Python0.4.0之前,loss是一
………………………………