pytorch 0.3到0.4迁移

1. 弃用Variables

2. .data改用.detach

x.detach()返回一个requires_grad=False的共享数据的Tensor,并且,如果反向传播中需要x,那么x.detach返回的Tensor的变动会被autograd追踪。相反,x.data()返回的Tensor,其变动不会被autograd追踪,如果反向传播需要用到x的话,值就不对了。

3. .data[0]改用.item()

4. cuda改为device

device = torch.device(“cuda” if torch.cuda.is_available() else “cpu”)

5. 弃用volatile

测试中不需要计算梯度的话,用with torch.no_grad():

6. torchvision

torchvision.transforms.Scale(*args, **kwargs)即将被函数torchvision.transforms.Resize(size, interpolation=2)代替

torchvision.transforms.RandomSizedCrop(*args, **kwargs)即将被函数torchvision.transforms.RandomResizedCrop(size, scale=(0.08, 1.0), ratio=(0.75, 1.3333333333333333), interpolation=2)代替。

你可能感兴趣的:(pytorch)