首页 Paddle框架 帖子详情
使用backward反向计算梯度时报错
收藏
快速回复
Paddle框架 问答模型训练 1867 8
使用backward反向计算梯度时报错
收藏
快速回复
Paddle框架 问答模型训练 1867 8
Paddle版本:2.1.1 with GPU 使用paddle.jit.load载入预先训练好的模型后进行预测,但在反向计算梯度的时候报错: loss.backward() File "", line 2, in backward File "/mnt/opt/anaconda2/envs/perce/lib/python3.7/site-packages/paddle/fluid/wrapped_decorator.py", line 25, in __impl__ return wrapped_func(*args, **kwargs) File "/mnt/opt/anaconda2/envs/perce/lib/python3.7/site-packages/paddle/fluid/framework.py", line 227, in __impl__ return func(*args, **kwargs) File "/mnt/opt/anaconda2/envs/perce/lib/python3.7/site-packages/paddle/fluid/dygraph/varbase_patch_methods.py", line 239, in backward framework._dygraph_tracer()) ValueError: (InvalidArgument) The OutScope of RunProgramGradOp should hold at least one sub scope. [Hint: Expected sub_scope_num 0, but received sub_scope_num:0 = 0:0.] (at /paddle/paddle/fluid/operators/run_program_op.h:283) 看起来是因为没有创建子对象域,尝试过使用fluid.digraph.guard()创建scope但是错误依然存在。请问大佬们有人遇到过类似的问题么?感激不尽。
0
收藏
回复
全部评论(8)
时间顺序
JavaRoom
#2 回复于2022-01

模型版本是多少?

0
回复
A
AIStudio1843460
#3 回复于2022-01
模型版本是多少?

模型用的paddlehub的预训练yolov3_darknet53, 版本1.0.2

0
回复
JavaRoom
#4 回复于2022-01
模型用的paddlehub的预训练yolov3_darknet53, 版本1.0.2

试试1.8环境

0
回复
A
AIStudio1843460
#5 回复于2022-01
试试1.8环境

1.8环境似乎也不行, 还是报同样的错误

0
回复
JavaRoom
#6 回复于2022-01

这个东西不同版本不兼容的,最好可以知道他是什么版本的。

0
回复
A
AIStudio1843460
#7 回复于2022-01
这个东西不同版本不兼容的,最好可以知道他是什么版本的。

是说开发模型时候的paddle版本和当前环境的paddle版本不兼容吗?

0
回复
JavaRoom
#8 回复于2022-01
是说开发模型时候的paddle版本和当前环境的paddle版本不兼容吗?

是的。

0
回复
玥亮
#9 回复于2022-01

进行预测为什么还要计算反向梯度呢?

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户