torch.Tensor.requires_grad_ — PyTorch 2.7 documentation (original) (raw)

Tensor.requires_grad_(requires_grad=True) → Tensor

Change if autograd should record operations on this tensor: sets this tensor’srequires_grad attribute in-place. Returns this tensor.

requires_grad_()’s main use case is to tell autograd to begin recording operations on a Tensor tensor. If tensor has requires_grad=False(because it was obtained through a DataLoader, or required preprocessing or initialization), tensor.requires_grad_() makes it so that autograd will begin to record operations on tensor.

Parameters

requires_grad (bool) – If autograd should record operations on this tensor. Default: True.

Example:

Let's say we want to preprocess some saved weights and use

the result as new weights.

saved_weights = [0.1, 0.2, 0.3, 0.25] loaded_weights = torch.tensor(saved_weights) weights = preprocess(loaded_weights) # some function weights tensor([-0.5503, 0.4926, -2.1158, -0.8303])

Now, start to record operations done to weights

weights.requires_grad_() out = weights.pow(2).sum() out.backward() weights.grad tensor([-1.1007, 0.9853, -4.2316, -1.6606])