使用torch.load()加载模型参数时,提示“xxx.pt is a zip archive(did you mean to use torch.jit.load()?)“
一、服务器上训练的参数在个人电脑上预测
在服务器上训练好的参数load到个人电脑上预测时,出现错误。
根据博客1,和博客2了解到:
xxx.pth来自pytorch1.6或更高的版本。1.6之后pytorch默认使用zip文件格式来保存权重文件,导致这些权重文件无法直接被1.5及以下的pytorch加载。
Windows上torch的版本为1.3
查看命令:pip list
服务器上的torch版本为1.7
加上以下代码即可:
state_dict = torch.load("xxx.pth")
torch.save(state_dict, "xxx.pth", _use_new_zipfile_serialization=False)
则将权重文件转换成非zip格式。
注意:GPU训练的参数是可以在CPU上运行的
参考pytorch模型载入之gpu和cpu互转