看啥推荐读物
专栏名称: AI科技大本营
迎来到AI科技大本营。这里汇集了优秀的AI学习者,技术大咖和产业领袖;提供接地气的实战课程。在这里和优秀的人一起成长。
今天看啥  ›  专栏  ›  AI科技大本营

PyTorch踩过的12坑 | CSDN博文精选

AI科技大本营  · 公众号  · AI  · 2019-11-12 16:45
作者 | 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是一 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照