这个错误源于Pytorch对Tensor进行 backward() 自动求导时,该Tensor的requires_grad为False,requires_grad参数指定是否记录对Tensor的操作以便计算梯度。在创建Tensor时该参数默认为False,需要手动设置如下
loss = torch.zeros(1, requires_grad=True)
也可以通过loss.requires_grad_(True)
设置。有篇文章详细介绍了相关原理,引用一下链接。
Pytorch报错:element 0 of tensors does not require grad and does not have a grad_fn
最新推荐文章于 2024-09-11 15:39:37 发布