PyTorch中的No module named models?
原创
2020/07/28 16:21
阅读数 1.4K
本文被收录于专区
软硬件环境
-
ubuntu 18.04 64bit
-
anaconda with 3.7
-
nvidia gtx 1070Ti
-
cuda 10.1
-
pytorch 1.5
问题
在使用pytorch
深度学习框架训练出来的模型文件,在另外的工程中使用,经常会碰到如下的错误
File "/home/xugaoxiang/anaconda3/envs/torchTest/lib/python3.7/site-packages/torch/serialization.py", line 593, in load
return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
File "/home/xugaoxiang/anaconda3/envs/torchTest/lib/python3.7/site-packages/torch/serialization.py", line 773, in _legacy_load
result = unpickler.load()
ModuleNotFoundError: No module named 'models'
解决方法
其实这个问题,在pytorch
的官方文档中就有提到,如下
上面这种方法呢是推荐的做法,在执行torch.save
和torch.load
时,操作的都是模型的参数,这样移植起来非常的方便
而下面的方法则是针对整个模型,在训练模型的时候,会将本地的class
和目录结构都写入到模型中。很多开源项目在模型训练完成后也是采用这样的方法来保存,因此,当在你自己的项目中去使用这样的模型时,往往就会遇到上面出现的问题,解决的方法就是在你的项目中保持原有项目的必要结构,如相应的class
和模块
参考资料
-
https://pytorch.org/docs/stable/notes/serialization.html
-
https://discuss.pytorch.org/t/modulenotfounderror-no-module-named-network/71721/3
-
https://zhuanlan.zhihu.com/p/38056115
-
https://github.com/ultralytics/yolov5/issues/22
本文分享自微信公众号 - 迷途小书童的Note(Dev_Club)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享
在加载保存了的pytorch网络模型时报错:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/home/lihua/anaconda3/envs/Autoenc/lib/python3.5/site-packages/torch/serialization.py", line 367, in load
return _load(f, map_location, pickle_module)
File "/home/lihua/anaconda3/envs/Autoenc/lib/python3.5/site-packages/torch/serialization.py", line 538, in _load
result = unpickler.load()
File "/home/lihua/Downloads/pycharm-community-2018.2.4/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 20, in do_import
module = self._system_import(name, *args, **kwargs)
ImportError: No module named 'model'
然后查阅资料(here)才知道,直接使用save是有风险的,可能换了工程就不能load(好恐怖的问题,难怪有一次我的实验结果老是加载错误)。所以最终还是使用了推荐的方法:
torch.save(the_model.state_dict(), PATH)
————————————————
版权声明:本文为优快云博主「李歇特冯·兹拜因巴哈」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/m0_37518259/article/details/106050327