tensor.backward():该方法用于计算梯度,计算后的梯度累加在该tensor对象的grad属性中。.backward()方法等价于.backward(torch.tensor(1.)),会为tensor求出初始梯度值。
例:
x = torch.ones(2,2,requires_grad = True)
y = x + 2
z = y*y*3
out = z.mean()
out.backward()
print(x.grad)
输出为:
tensor([[4.5000, 4.5000],
[4.5000, 4.5000]])
再看看第一步时x的梯度
x = torch.ones(2