解决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的Twisted框架实现一个简单的服务器
Apr 16 Python
python使用电子邮件模块smtplib的方法
Aug 28 Python
浅谈Python爬取网页的编码处理
Nov 04 Python
利用pandas读取中文数据集的方法
Jul 25 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
Oct 31 Python
python 实现倒排索引的方法
Dec 25 Python
在Python3 numpy中mean和average的区别详解
Aug 24 Python
python安装scipy的步骤解析
Sep 28 Python
为什么说Python可以实现所有的算法
Oct 04 Python
关于ResNeXt网络的pytorch实现
Jan 14 Python
python实现扫雷小游戏
Apr 24 Python
详解python程序中的多任务
Sep 16 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使之能同时支持GIF和JPEG
2006/10/09 PHP
PHP 生成的XML以FLASH获取为乱码终极解决
2009/08/07 PHP
PHP判断图片格式的七种方法小结
2013/06/03 PHP
将字符串中由空格隔开的每个单词首字母大写
2014/04/06 Javascript
js实现简洁的滑动门菜单(选项卡)效果代码
2015/09/04 Javascript
详解JavaScript节流函数中的Throttle
2016/07/16 Javascript
JS全角与半角转化实例(分享)
2017/07/04 Javascript
简述jQuery Easyui一些用法
2017/08/01 jQuery
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
详解Vue demo实现商品列表的展示
2019/05/07 Javascript
JS实现的字符串数组去重功能小结
2019/06/17 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
小程序采集录音并上传到后台
2019/11/22 Javascript
vue v-for出来的列表,点击某个li使得当前被点击的li字体变红操作
2020/07/17 Javascript
[54:43]DOTA2-DPC中国联赛 正赛 CDEC vs Dynasty BO3 第一场 2月22日
2021/03/11 DOTA
python实现的简单窗口倒计时界面实例
2015/05/05 Python
浅谈numpy数组的几种排序方式
2017/12/15 Python
解决python中使用plot画图,图不显示的问题
2018/07/04 Python
Tensorflow中的placeholder和feed_dict的使用
2018/07/09 Python
python实现字符串和字典的转换
2018/09/29 Python
flask/django 动态查询表结构相同表名不同数据的Model实现方法
2019/08/29 Python
python设置代理和添加镜像源的方法
2020/02/14 Python
PyCharm中Matplotlib绘图不能显示UI效果的问题解决
2020/03/12 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
2020/05/22 Python
Python字符串的15个基本操作(小结)
2021/02/03 Python
为女性购买传统的印度服装和婚纱:Kalkifashion
2019/07/22 全球购物
Three Graces London官网:英国奢侈品牌
2021/03/18 全球购物
酒店服务实习自我鉴定
2013/09/22 职场文书
《美丽的彩虹》教学反思
2014/02/25 职场文书
绿色环保标语
2014/06/12 职场文书
保险公司开门红口号
2014/06/21 职场文书
2014年社区综治工作总结
2014/11/17 职场文书
酒店保洁员岗位职责
2015/02/26 职场文书
开学随笔
2015/08/15 职场文书
正确的理解和使用Django信号(Signals)
2021/04/14 Python
Django利用AJAX技术实现博文实时搜索
2021/05/06 Python