需要更新的参数被原地操作更改了
可能是以下几种情况导致
1)找到网络模型中的 inplace 操作,将inplace=True改成 inplace=False,例如torch.nn.ReLU(inplace=False)
2)将代码中的“a+=b”之类的操作改为“c = a + b”,a=b改成a=ab,a/=b改成a=a/b。注意认真找。
3)训练代码的optimizer.step()函数放到loss.backward()后面
4)pytorch降版本到1.4或1.5
需要更新的参数被原地操作更改了
可能是以下几种情况导致
1)找到网络模型中的 inplace 操作,将inplace=True改成 inplace=False,例如torch.nn.ReLU(inplace=False)
2)将代码中的“a+=b”之类的操作改为“c = a + b”,a=b改成a=ab,a/=b改成a=a/b。注意认真找。
3)训练代码的optimizer.step()函数放到loss.backward()后面
4)pytorch降版本到1.4或1.5
本文标题:解决RuntimeError: one of the varia
本文链接:https://www.haomeiwen.com/subject/atowortx.html
网友评论