在加载保存了的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)