- 标题:导出自定义模型报错:The Tensor of Variable(dygraph_tmp_240) to be saved is not initialized.
- 版本、环境信息:
Paddle version: 2.1.2
Paddle With CUDA: True
OS: Deepin 20.2
Python version: 3.7.3
CUDA version: 9.2.148
cuDNN version: None.None.None
Nvidia driver version: 460.39
- 问题描述:
InvalidArgumentError: The Tensor of Variable(dygraph_tmp_240) to be saved is not initialized.
[Hint: Expected tensor.IsInitialized() == true, but received tensor.IsInitialized():0 != true:1.] (at /paddle/paddle/fluid/operators/save_combine_op.h:80)
找不到dygraph_tmp_240定义在哪,/tmp/中生成的.py文件也没有;给出的堆栈无法定位,基本都是paddle和python内部的函数;
看了下save_combine_op.h:80,也没什么可用信息;注解掉所有forward的内部代码,也会报同样的错误;
5条答案
按热度按时间4urapxun1#
您好,我们已经收到了您的问题,会安排技术人员尽快解答您的问题,请耐心等待。请您再次检查是否提供了清晰的问题描述、复现代码、环境&版本、报错信息等。同时,您也可以通过查看官网API文档、常见问题、历史Issue、AI社区来寻求解答。祝您生活愉快~
Hi! We've received your issue and please be patient to get responded. We will arrange technicians to answer your questions as soon as possible. Please make sure that you have posted enough message to demo your request. You may also check out the API,FAQ,Github Issue and AI community to get the answer.Have a nice day!
wgxvkvu92#
有什么方法可以帮忙定位问题未知?
f8rj6qna3#
找到问题所在了,单不知道什么原因,问题如下:在模型的__init__预先算了一些Tensor,并保存在list中;导出的时候会先构造模型,也就是Tensor被创建了出来;然后再进行导出操作,导出时被保存的Tensor没有被转换成LodTensor,导致错误发生;不放在List中是能够被自动转换成LodTensor的,也不会有这个问题;具体原因不行,希望能够得到解释~~~~
同时这种错误,不好查,提示的堆栈基本没用.
b1zrtrql4#
我们不支持将定义在python原生list中的Tensor保存下来,可以通过如下两种方式来实现:
7z5jn7bk5#
感谢