解决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版简单工厂模式
Oct 16 Python
解决pycharm无法调用pip安装的包问题
May 18 Python
python指定写入文件时的编码格式方法
Jun 07 Python
python排序函数sort()与sorted()的区别
Sep 18 Python
详解Python_shutil模块
Mar 15 Python
深入了解和应用Python 装饰器 @decorator
Apr 02 Python
python Event事件、进程池与线程池、协程解析
Oct 25 Python
python 实现简单的FTP程序
Dec 27 Python
Python使用正则实现计算字符串算式
Dec 29 Python
Python识别验证码的实现示例
Sep 30 Python
如何用python爬取微博热搜数据并保存
Feb 20 Python
python实现监听键盘
Apr 26 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
smarty模板中拼接字符串的方法
2014/02/14 PHP
php实现的双向队列类实例
2014/09/24 PHP
PHP异常处理Exception类
2015/12/11 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
JQuery遍历json数组的3种方法
2014/11/08 Javascript
JavaScript获取网页表单提交方式的方法
2015/04/02 Javascript
jQuery插件windowScroll实现单屏滚动特效
2015/07/14 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
2016/08/17 Javascript
AngularJS实现数据列表的增加、删除和上移下移等功能实例
2016/09/05 Javascript
jQuery过滤选择器用法示例
2016/09/12 Javascript
浅谈Angular的$q, defer, promise
2016/12/20 Javascript
jQuery实现ajax无刷新分页页码控件
2017/02/28 Javascript
Angular5中调用第三方js插件的方法
2018/02/26 Javascript
微信小程序简单的canvas裁剪图片功能详解
2019/07/12 Javascript
jquery实现直播视频弹幕效果
2020/02/25 jQuery
VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)
2020/08/27 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
详细解析Python当中的数据类型和变量
2015/04/25 Python
Python实现购物车功能的方法分析
2017/11/10 Python
Python异常处理操作实例详解
2018/05/10 Python
纯用NumPy实现神经网络的示例代码
2018/10/24 Python
python 命令行传入参数实现解析
2019/08/30 Python
Python如何操作office实现自动化及win32com.client的运用
2020/04/01 Python
Python Django路径配置实现过程解析
2020/11/05 Python
Raffaello Network西班牙:意大利拉斐尔时尚购物网
2019/03/12 全球购物
罗技英国官方网站:Logitech UK
2020/11/03 全球购物
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
2014/03/30 面试题
《月迹》教学反思
2014/02/19 职场文书
教师中国梦演讲稿
2014/04/23 职场文书
球队口号
2014/06/18 职场文书
通报表扬范文
2015/01/17 职场文书
初中家长意见
2015/06/03 职场文书
2016年教师学习教师法心得体会
2016/01/20 职场文书
《分一些蚊子进来》读后感3篇
2020/01/09 职场文书
matlab xlabel位置的设置方式
2021/05/21 Python
pyqt5蒙版遮罩mask,setmask的使用
2021/06/11 Python