pytorch学习笔记:低版本pytorch模型使用1.6以上版本保存的模型报错问题

出现这种错误:

RuntimeError: xxx.pth is a zip archive (did you mean to use torch.jit.load()?)

出现该报错的原因是pytorch1.6以上版本保存的方式使用了新版的保存方式
可以看下一下参数信息:

torch.save(api.net,'./weights/mobilenet0.25_epoch_15_torch1.2.pth',_use_new_zipfile_serialization=False)

有个隐藏的bool参数_use_new_zipfile_serialization,默认是True,将其修改为False保存的模型就可以在新旧版中使用。
因此只需要使用新版的pytorch重新读取模型,并使用该方法重新保存后就解决了该问题。

# torch.__version__>=1.6
import torch
state_dict = torch.load('pytorch_model.pth')
torch.save(state_dict, 'pytorch_model.pth', _use_new_zipfile_serialization=False)

你可能感兴趣的:(pytorch,学习,深度学习)