欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

解决pytorch 保存模型遇到的问题

时间:2023-01-07 09:28:52|栏目:Python代码|点击:

今天用pytorch保存模型时遇到bug

Can't pickle <class 'torch._C._VariableFunctions'>

在google上查找原因,发现是保存时保存了整个模型的原因,而模型中有一些自定义的参数

torch.save(model,save_path) 改为 torch.save(model.state_dict(),save_path)

然后载入模型也做相应的更改就好了

补充:pytorch训练模型的一些坑

1. 图像读取

opencv的python和c++读取的图像结果不一致,是因为python和c++采用的opencv版本不一样,从而使用的解码库不同,导致读取的结果不同。

2. 图像变换

PIL和pytorch的图像resize操作,与opencv的resize结果不一样,这样会导致训练采用PIL,预测时采用opencv,结果差别很大,尤其是在检测和分割任务中比较明显。

3. 数值计算

pytorch的torch.exp与c++的exp计算,10e-6的数值时候会有10e-3的误差,对于高精度计算需要特别注意,比如

两个输入5.601597, 5.601601, 经过exp计算后变成270.85862343143174, 270.85970686809225

上一篇:Python 打印自己设计的字体的实例讲解

栏    目:Python代码

下一篇:pandas map(),apply(),applymap()区别解析

本文标题:解决pytorch 保存模型遇到的问题

本文地址:http://www.codeinn.net/misctech/223173.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有