티스토리 뷰

728x90

RuntimeError: element 0 of variables does not require grad and does not have a grad_fn

Autograd에서 미분(differentiation)하는 경우 grad_fn은 기울기를 계산하는 것을 도와주는 함수이다. 기울기를 계산해서 학습을 해야하는데, 설정된 텐서값이 그게 되지 않는다는 것이다. 손실함수를 계산할 때, 필요한 값들이 no_grad 처리가 되어 있진 않은지 보고 `required_grad_(True)'로 설정해두면 해결됨

a = torch.tensor([2., 3.], requires_grad=True)
b = torch.tensor([6., 4.])
b.requires_grad_(True)
728x90
댓글