有关pytorch的backward的问题

D:\Anaconda3\envs\ltt\python.exe D:\python\pythonProject\VigilanceNet-main\VigilanceNet-main\train.py D:\Anaconda3\envs\ltt\lib\site-packages\torch\autograd\__init__.py:200: UserWarning: Error detected in ReluBackward0. Traceback of forward call that caused the error: File "D:\python\pythonProject\VigilanceNet-main\VigilanceNet-main\train.py", line 79, in <module> train_model(config.args, net, train_data_loader, criterion, optimizer) File "D:\python\pythonProject\VigilanceNet-main\VigilanceNet-main\train.py", line 43, in train_model output, output1, output2 = model(inputs1, inputs2) File "D:\Anaconda3\envs\ltt\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(*args, **kwargs) File "D:\python\pythonProject\VigilanceNet-main\VigilanceNet-main\model.py", line 258, in forward x1 = self.feature_embed1(x1) File "D:\Anaconda3\envs\ltt\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(*args, **kwargs) File "D:\python\pythonProject\VigilanceNet-main\VigilanceNet-main\model.py", line 155, in forward out = F.relu(self.BN(self.proj(x))) File "D:\Anaconda3\envs\ltt\lib\site-packages\torch\nn\functional.py", line 1457, in relu result = torch.relu(input) (Triggered internally at C:\cb\pytorch_1000000000000\work\torch\csrc\autograd\python_anomaly_mode.cpp:119.) Variable._execution_engine.run_backward( # Calls into the C++ engine to run the backward pass Traceback (most recent call last): File "D:\python\pythonProject\VigilanceNet-main\VigilanceNet-main\train.py", line 79, in <module> train_model(config.args, net, train_data_loader, criterion, optimizer) File "D:\python\pythonProject\VigilanceNet-main\VigilanceNet-main\train.py", line 47, in train_model loss.backward() File "D:\Anaconda3\envs\ltt\lib\site-packages\torch\_tensor.py", line 487, in backward torch.autograd.backward( File "D:\Anaconda3\envs\ltt\lib\site-packages\torch\autograd\__init__.py", line 200, in backward Variable._execution_engine.run_backward( # Calls into the C++ engine to run the backward pass RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.DoubleTensor [64, 80, 5]], which is output 0 of ReluBackward0, is at version 1; expected version 0 instead. Hint: the backtrace further above shows the operation that failed to compute its gradient. The variable in question was changed in there or anywhere later. Good luck! Process finished with exit code 1

根据提示找到第43行代码,再找到43行代码的源码,查看其中是否有’+=‘、’-=‘、’*=‘ 这样的运算符,若有,改为 'x = x + y'、或 'x = x - y'、或'x = x * y'。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值