解决pytorch 数据类型报错的问题


Posted in Python onMarch 03, 2021

pytorch报错:

RuntimeError: Expected object of type Variable[torch.LongTensor] but found type Variable[torch.cuda.ByteTensor] for argument #1 ‘argument1'

解决方法:

pytorch框架在存储labels时,采用LongTensor来存储,所以在一开始dataset返回label时,就要返回与LongTensor对应的数据类型,即numpy.int64

补充:使用pytorch遇到的各种问题及解决方案

自己在使用pytorch遇到的各种问题及解决方案:

RuntimeError: Expected object of scalar type Float but got scalar type Double for argument #4 'mat1'

RuntimeError: The size of tensor a (12800) must match the size of tensor b (100) at non-singleton dimension 0

输入维度为12800,输出维度为100,输入输出的维度不一致,正确的例子如下:

inputs = [(1,2,3), (2,3,4)]
outsputs = [4, 5]

将输入输出的长度改为一致

取tensor的第一个元素

XXX.item() # XXX为tensor对象

tensor中的元素改变数据类型

# 常常因为数据类型出错,要修改数据类型
XXX.int()
XXX.float()

补充:Pytorch的Dataloader报错:TypeError: batch must contain tensors, numbers, dicts or lists

具体报错:

TypeError: batch must contain tensors, numbers, dicts or lists; found <class 'PIL.Image.Image'>

loader的代码:

dataloader=torch.utils.data.DataLoader(dataset,batch_size=1,shuffle=True)

表面上看这个代码没有问题,实际上问题出在了dataloader机制的要求上,dataloader要求接收的是一个tensor,而我的dataset没有做transform,所以dataset的getitem函数返回的是一个PIL的Image对象,所以就会报错

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
完美解决Python2操作中文名文件乱码的问题
Jan 04 Python
深入理解python中的atexit模块
Mar 07 Python
Python读取本地文件并解析网页元素的方法
May 21 Python
关于python列表增加元素的三种操作方法
Aug 22 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
Mar 29 Python
Django REST framework内置路由用法
Jul 26 Python
使用python将最新的测试报告以附件的形式发到指定邮箱
Sep 20 Python
python实现的多任务版udp聊天器功能案例
Nov 13 Python
pymysql 插入数据 转义处理方式
Mar 02 Python
python利用递归方法实现求集合的幂集
Sep 07 Python
Django Model层F,Q对象和聚合函数原理解析
Nov 12 Python
Python制作动态字符画的源码
Aug 04 Python
python反编译教程之2048小游戏实例
Mar 03 #Python
python 如何读、写、解析CSV文件
Mar 03 #Python
聊聊python在linux下与windows下导入模块的区别说明
Mar 03 #Python
python 递归相关知识总结
Mar 03 #Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
Mar 03 #Python
用gpu训练好的神经网络,用tensorflow-cpu跑出错的原因及解决方案
Mar 03 #Python
神经网络训练采用gpu设置的方式
Mar 03 #Python
You might like
php中用数组的方法设置cookies
2011/04/21 PHP
php长字符串定义方法
2012/07/12 PHP
Yii实现的多级联动下拉菜单
2016/07/13 PHP
php常用字符函数实例小结
2016/12/29 PHP
Laravel实现autoload方法详解
2017/05/07 PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
2019/07/22 PHP
Valerio 发布了 Mootools
2006/09/23 Javascript
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
2012/01/13 Javascript
location对象的属性和方法应用(解析URL)
2013/04/12 Javascript
使用Grunt.js管理你项目的应用说明
2013/04/24 Javascript
js转义字符介绍
2013/11/05 Javascript
使用javascript为网页增加夜间模式
2014/01/26 Javascript
js父窗口关闭时子窗口随之关闭完美解决方案
2014/04/29 Javascript
《JavaScript DOM 编程艺术》读书笔记之DOM基础
2015/01/09 Javascript
jQuery实现的多屏图像图层切换效果实例
2015/05/07 Javascript
jquery.zclip轻量级复制失效问题
2017/01/08 Javascript
javascript计算对象长度的方法
2017/10/25 Javascript
Vue EventBus自定义组件事件传递
2018/06/25 Javascript
微信小程序项目实践之验证码倒计时功能
2018/07/18 Javascript
独立部署小程序基于nodejs的服务器过程详解
2019/06/24 NodeJs
Elasticsearch实现复合查询高亮结果功能
2019/09/10 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
2020/07/30 Javascript
Python开发SQLite3数据库相关操作详解【连接,查询,插入,更新,删除,关闭等】
2017/07/27 Python
Python计算一个给定时间点前一个月和后一个月第一天的方法
2018/05/29 Python
先进个人事迹材料
2014/01/25 职场文书
参观考察邀请函范文
2014/01/29 职场文书
个人自荐材料
2014/05/23 职场文书
财务管理专业求职信
2014/06/11 职场文书
生物工程专业求职信
2014/09/03 职场文书
北京离婚协议书范文2014
2014/09/29 职场文书
小学校园广播稿集锦
2014/10/04 职场文书
玩手机检讨书1000字
2014/10/20 职场文书
综合素质自我评价评语
2015/03/06 职场文书
幼儿园开学通知
2015/04/24 职场文书
清明祭英烈活动总结
2015/05/11 职场文书
SQL Server实现分页方法介绍
2022/03/16 SQL Server