Hi I am trying to understand the NN with pytorch. I have doubts in gradient calculations..
import torch.optim as optim
create your optimizer optimizer = optim.SGD(net.parameters(), lr=0.01)
# in your training loop: optimizer.zero_grad() # zero the gradient buffers output = net(input) loss = criterion(output, target) loss.backward() optimizer.step() # Does the update
From the about code, I understood loss.backward() calculates the gradients.
I am not sure, how these info shared with
optimizer to update the gradient.
Can anyone explain this..
Thanks in advance !