张量基本概念
张量是一个高维数组
在 pytorch0.4.0之前,torch.autograd 包中存在 Variable 这种数据类型,主要是用于封装 Tensor,进行自动求导 。
构建神经网络的计算图时,需用torch.autograd.Variable将Tensor包装起来,形成计算图中的节点。backward()自动计算出所有需要的梯度。来针对某个变量执行grad获得想要的梯度值。
import torch
from torch.autograd import Variable
x=Variable(torch.randn(2,2),requires_grad=True)
y=x+3
z=y*y*3
out=z.mean()
out.backward()
print(x.grad)
Variable具有以下几个属性。
在 PyTorch 0.4.0 之后,Variable 并入了 Tensor。在之后版本的 Tensor 中,除了具有上面 Variable的5个属性,还有另外3个属性。