nn.Module中定义参数:不需要加cuda,可以求导,反向传播
class BiFPN(nn.Module):
def __init__(self, fpn_sizes):
self.w1 = nn.Parameter(torch.rand(1))
print("no---------------------------------------------------",self.w1.data, self.w1.grad)
下面这个例子说明中间变量可能没有梯度,但是最终变量有梯度:
cy1 cd都有梯度
import torch
xP=torch.Tensor([[ 3233.8557, 3239.0657, 3243.4355, 3234.4507, 3241.7087,
3243.7292, 3234.6826, 3237.6609, 3249.7937, 3244.8623,
3239.5349, 3241.4626, 3251.3457, 3247.4263, 3236.4924,
3251.5735, 3246.4731, 3242.4692, 3239.4958, 3247.7283,
3251.7134, 3249.0237, 3247.563