如果X.grad报错:

grad can be implicitly created only for scalar outputs 

加上去 X.backward(torch.ones_like(X)) 即可。

import torch
 
a = torch.randn(2, 3, requires_grad=True)  # 创建一个张量
b = 3 * a  
b.backward(torch.ones_like(b))  # 自动计算所有梯度
print(a.grad)

 

更多推荐