RuntimeError: element 0 of tensors does not require grad and does not have a grad_fn
在这里插入图片描述
出错位置:

 loss = loss1 + loss2
  ........
 loss.backward() 

原因: 这里的loss默认的requires_grad是False,因此在backward()处不会计算梯度,导致出错

方法:将loss的requires_grad属性设为True,如下所示:

 loss = loss1 + loss2
 loss.requires_grad_(True)   #加入此句就行了
  ........
 loss.backward() 
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐