解决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中精确输出JSON浮点数的方法
Apr 18 Python
Python实现Tab自动补全和历史命令管理的方法
Mar 12 Python
Python的Django框架中if标签的相关使用
Jul 15 Python
Python中运算符&quot;==&quot;和&quot;is&quot;的详解
Oct 08 Python
python实现对任意大小图片均匀切割的示例
Dec 05 Python
简单了解python高阶函数map/reduce
Jun 28 Python
Pycharm中Python环境配置常见问题解析
Jan 16 Python
Python使用type动态创建类操作示例
Feb 29 Python
PyQt5 界面显示无响应的实现
Mar 26 Python
Python使用Selenium实现淘宝抢单的流程分析
Jun 23 Python
python实现PolynomialFeatures多项式的方法
Jan 06 Python
Python可变与不可变数据和深拷贝与浅拷贝
Apr 06 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
让FireFox支持innerText的实现代码
2009/12/01 Javascript
jquery keypress,keyup,onpropertychange键盘事件
2010/06/25 Javascript
js Event对象的5种坐标
2011/09/12 Javascript
jQuery实现精美的多级下拉菜单特效
2015/03/14 Javascript
JS实现不使用图片仿Windows右键菜单效果代码
2015/10/22 Javascript
jquery树形菜单效果的简单实例
2016/06/06 Javascript
JQuery统计input和textarea文字输入数量(代码分享)
2016/12/29 Javascript
JavaScript中for循环的几种写法与效率总结
2017/02/03 Javascript
AngularJS点击添加样式、点击变色设置的实例代码
2017/07/27 Javascript
详解Webpack多环境代码打包的方法
2018/08/03 Javascript
详解如何在nuxt中添加proxyTable代理
2018/08/10 Javascript
vue开发拖拽进度条滑动组件
2019/09/21 Javascript
layui table 表格上添加日期控件的两种方法
2019/09/28 Javascript
前端开发之便利店收银系统代码
2019/12/27 Javascript
[48:32]VGJ.T vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
python多线程http压力测试脚本
2019/06/25 Python
python判断单向链表是否包括环,若包含则计算环入口的节点实例分析
2019/10/23 Python
详解Python3中的 input() 函数
2020/03/18 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
python中PyQuery库用法分享
2021/01/15 Python
Zatchels官网:英国剑桥包品牌
2021/01/12 全球购物
编写用C语言实现的求n阶阶乘问题的递归算法
2014/10/21 面试题
行政助理岗位职责范文
2013/12/03 职场文书
给男朋友的道歉信
2014/01/12 职场文书
收银出纳员岗位职责
2014/02/23 职场文书
创建市级文明单位实施方案
2014/03/01 职场文书
清明节扫墓活动方案
2014/03/02 职场文书
个人函授自我鉴定
2014/03/25 职场文书
小学生国庆节演讲稿
2014/09/05 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
总经理岗位职责
2015/02/04 职场文书
婚庆公司开业主持词
2015/06/30 职场文书
关于感恩的歌曲整理(8首)
2019/08/14 职场文书
ORACLE查看当前账号的相关信息
2021/06/18 Oracle
python画条形图的具体代码
2022/04/20 Python