x = torch.tensor(2.0, requires_grad=True) y = x ** 3 y.retain_grad() # keep y's gradient too z = y * 5 z.backward() print(x.grad) # tensor(60.) dz/dx = 15x² = 60 print(y.grad) # tensor(5.) dz/dy = 5