解决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开发之thread实现布朗运动的方法
Nov 11 Python
Python算法应用实战之栈详解
Feb 04 Python
Python DataFrame 设置输出不显示index(索引)值的方法
Jun 07 Python
python使用matplotlib绘制热图
Nov 07 Python
详解django2中关于时间处理策略
Mar 06 Python
基于python实现从尾到头打印链表
Nov 02 Python
wxPython之wx.DC绘制形状
Nov 19 Python
python opencv实现信用卡的数字识别
Jan 12 Python
python+selenium 脚本实现每天自动登记的思路详解
Mar 11 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
Apr 07 Python
Python中操作各种多媒体,视频、音频到图片的代码详解
Jun 04 Python
聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明
Mar 03 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 危险函数全解析
2009/09/09 PHP
Yii不依赖Model的表单生成器用法实例
2014/12/04 PHP
Jquery attr(&quot;checked&quot;) 返回checked或undefined 获取选中失效
2013/10/10 Javascript
javascript中的=等号个数问题两个跟三个有什么区别
2013/10/23 Javascript
JavaScript版的TwoQueues缓存模型
2014/12/29 Javascript
纯jquery实现模仿淘宝购物车结算
2015/08/20 Javascript
vue.js实现仿原生ios时间选择组件实例代码
2016/12/21 Javascript
详解webpack分包及异步加载套路
2017/06/29 Javascript
Makefile/cmake/node-gyp中区分判断不同平台的方法
2018/12/18 Javascript
关于element-ui的隐藏组件el-scrollbar的使用
2019/05/29 Javascript
jQuery实现视频展示效果
2020/05/30 jQuery
[03:22]DOTA2超级联赛专访单车:找到属于自己的英雄
2013/06/08 DOTA
[00:11]战神迅矛
2019/03/06 DOTA
python将多个文本文件合并为一个文本的代码(便于搜索)
2011/03/13 Python
Python中实现字符串类型与字典类型相互转换的方法
2014/08/18 Python
在Python中使用M2Crypto模块实现AES加密的教程
2015/04/08 Python
浅谈Python生成器generator之next和send的运行流程(详解)
2017/05/08 Python
PyQt5每天必学之滑块控件QSlider
2018/04/20 Python
python删除文本中行数标签的方法
2018/05/31 Python
对python opencv 添加文字 cv2.putText 的各参数介绍
2018/12/05 Python
对python中词典的values值的修改或新增KEY详解
2019/01/20 Python
Python opencv实现人眼/人脸识别以及实时打码处理
2019/04/29 Python
Python读写操作csv和excle文件代码实例
2020/03/16 Python
基于pytorch中的Sequential用法说明
2020/06/24 Python
使用Python封装excel操作指南
2021/01/29 Python
图片上传插件ImgUploadJS:用HTML5 File API 实现截图粘贴上传、拖拽上传
2016/01/20 HTML / CSS
Gtech官方网站:地毯清洁器、吸尘器及园艺设备
2018/05/23 全球购物
Dr. Martens马汀博士法国官网:马丁靴鼻祖
2020/01/15 全球购物
空字符串(“”)和null的区别
2012/11/13 面试题
个人找工作自荐信格式
2013/09/21 职场文书
校园新闻广播稿
2014/01/10 职场文书
卫生安全检查制度
2014/02/04 职场文书
善意的谎言事例
2014/02/15 职场文书
2014年党员发展工作总结
2014/12/02 职场文书
2015年环卫处个人工作总结
2015/07/27 职场文书
读《人生的智慧》有感:闲暇是人生的精华
2019/12/25 职场文书