Bug解决UnpicklingError: A load persistent id instruction was encountered, but no persistent_load.

Posted zstar-_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bug解决UnpicklingError: A load persistent id instruction was encountered, but no persistent_load.相关的知识,希望对你有一定的参考价值。

问题环境

在将pytorch本地训练好的模型,传到jetson nano平台上,加载模型时,报了这个错误:

UnpicklingError: A load persistent id instruction was encountered, but no persistent_load.

问题原因

查阅相关资料,这是由于pytorch在1.6.0版本之后,模型保存默认方式是压缩的形式,而在jetson nano版本上的pytorch版本是1.0.0,因此无法直接加载.pth文件。
用下面的方式可以查看pytorch的版本:

import torch
print(torch.__version__)

问题解决

设置保存模型时不进行压缩,即修改保存模型语句为:

torch.save(model.state_dict(), MODEL_PATH, _use_new_zipfile_serialization=False)
开发者涨薪指南 48位大咖的思考法则、工作方式、逻辑体系

以上是关于Bug解决UnpicklingError: A load persistent id instruction was encountered, but no persistent_load.的主要内容,如果未能解决你的问题,请参考以下文章

import xlwings时_pickle.UnpicklingError: invalid load key, ‘x00‘解决方案

import xlwings时_pickle.UnpicklingError: invalid load key, ‘x00‘解决方案

文件加载出现 _pickle.UnpicklingError: could not find MARK

文件加载出现 _pickle.UnpicklingError: could not find MARK

文件加载出现 _pickle.UnpicklingError: could not find MARK

YOLOv5 BUG修复记录