versucht, meinen Kopf herum, wie Steigungen dargestellt und wie autograd Werke zu wickeln:Warum erzeugt Autograd keinen Gradienten für Zwischenvariablen?
import torch
from torch.autograd import Variable
x = Variable(torch.Tensor([2]), requires_grad=True)
y = x * x
z = y * y
z.backward()
print(x.grad)
#Variable containing:
#32
#[torch.FloatTensor of size 1]
print(y.grad)
#None
Warum produzieren macht es keinen Gradienten für y
? Wenn y.grad = dz/dy
, sollte es dann nicht mindestens eine Variable wie y.grad = 2*y
erzeugen?
denke ich, das ist ein Interessante Frage, die auf https://discuss.pytorch.org/ –