.backward() is called so that the .grad field of all the leaf Tensor (nn.Parameter in particular) are populated with the gradients of the operations that were done.
If you don’t call .backward(), no gradient will be computed.
But if a Tensor does not require gradients, it means that it was not computed using things that require gradients.