star1964 2021-06-02 21:19 采纳率: 50%
浏览 78

python2 加载 python3 生成的npz文件报错

pth模型是python3 的 所以我用

param = torch.load(pthfile)加载了模型 把处理后的数据存为npz文件

但是在python2环境下

weights = np.load(weights_dir ,allow_pickle=True)['arr_0'].item()报错

请问有什么办法能解决 python版本的兼容性问题呢?

  • 写回答

1条回答 默认 最新

  • 天元浪子 Python领域优质创作者 2021-06-02 21:41
    关注

    直接原因是Py2和Py3的NumPy版本不同造成的。有一个建议,但不确定一定可行:joblib曾经是早期sklenrn的一个功能,后来独立出来了,建议题主在Py3环境下使用joblib模块(pip install joblib)对数据持久化,然后在Py2环境下使用sklearn.externals的joblib还原。

    评论

报告相同问题?