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


Posted in Python onMarch 03, 2021

今天用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基础教程之字典操作详解
Mar 25 Python
Python入门篇之函数
Oct 20 Python
python使用7z解压apk包的方法
Apr 18 Python
粗略分析Python中的内存泄漏
Apr 23 Python
Windows下Python的Django框架环境部署及应用编写入门
Mar 10 Python
Python使用filetype精确判断文件类型
Jul 02 Python
Python+PIL实现支付宝AR红包
Feb 09 Python
django数据模型(Model)的字段类型解析
Dec 25 Python
Django 博客实现简单的全文搜索的示例代码
Feb 17 Python
Python基于pandas爬取网页表格数据
May 11 Python
python实现学生管理系统开发
Jul 24 Python
python基础之函数的定义和调用
Oct 24 Python
解决pytorch 模型复制的一些问题
Mar 03 #Python
Pytorch模型迁移和迁移学习,导入部分模型参数的操作
Mar 03 #Python
pytorch 实现L2和L1正则化regularization的操作
Mar 03 #Python
Pytorch自定义Dataset和DataLoader去除不存在和空数据的操作
Mar 03 #Python
python爬取youtube视频的示例代码
Mar 03 #Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
Mar 03 #Python
解决pytorch 数据类型报错的问题
Mar 03 #Python
You might like
详解php的魔术方法__get()和__set()使用介绍
2012/09/19 PHP
PHP 搜索查询功能实现
2016/11/29 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
jquery选择器的选择使用及性能介绍
2013/01/16 Javascript
JS实现简单的Canvas画图实例
2013/07/04 Javascript
JavaScript运行机制之事件循环(Event Loop)详解
2014/10/10 Javascript
JavaScript中的闭包(Closure)详细介绍
2014/12/30 Javascript
jQuery实现form表单基于ajax无刷新提交方法详解
2015/12/08 Javascript
js阻止浏览器默认行为触发的通用方法(推荐)
2016/05/15 Javascript
jQuery实现IE输入框完成placeholder标签功能的方法
2017/09/20 jQuery
two.js之实现动画效果示例
2017/11/06 Javascript
Angular项目从新建、打包到nginx部署全过程记录
2017/12/09 Javascript
解决iView中时间控件选择的时间总是少一天的问题
2018/03/15 Javascript
Vue使用json-server进行后端数据模拟功能
2018/04/17 Javascript
Vue SPA单页应用首屏优化实践
2018/06/28 Javascript
微信小程序按钮去除边框线分享页面功能
2018/08/27 Javascript
优雅地使用loading(推荐)
2019/04/20 Javascript
layer.prompt输入层的例子
2019/09/24 Javascript
[01:58]最残酷竞争 2016国际邀请赛中国区预选赛积分循环赛回顾
2016/06/28 DOTA
[57:31]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第一场 2月1日
2021/03/11 DOTA
Python中列表与元组的乘法操作示例
2018/02/10 Python
Python中矩阵创建和矩阵运算方法
2018/08/04 Python
使用python批量化音乐文件格式转换的实例
2019/01/09 Python
使用pth文件添加Python环境变量方式
2020/05/26 Python
python实现批量转换图片为黑白
2020/06/16 Python
原生 JS+CSS+HTML 实现时序图的方法
2019/07/31 HTML / CSS
Under Armour安德玛荷兰官网:美国高端运动科技品牌
2019/07/10 全球购物
学生处主任岗位职责
2013/12/01 职场文书
男方父母婚礼答谢词
2014/01/25 职场文书
一句话工作感言
2014/03/01 职场文书
大学生两会学习心得体会
2014/03/10 职场文书
元旦寄语大全
2014/04/10 职场文书
高考1977观后感
2015/06/04 职场文书
java调用Restful接口的三种方法
2021/08/23 Java/Android
处理canvas绘制图片模糊问题
2022/05/11 Javascript