在python中遇到的错误(二):用pytorch的CNN发生的报错

在使用PyTorch实现卷积神经网络(CNN)时,作者遇到了多个错误,包括conv2d参数问题、数据类型不匹配、输入形状无效、Long与Double类型冲突以及低精度问题。通过检查数据格式、调整数据类型、修正模型结构和参数,以及优化训练过程,作者成功解决了这些问题并提高了模型精度。
摘要由CSDN通过智能技术生成

目录

一、conv2d() received an invalid combination of arguments

二、 expected scalar type double but found float

三、shape '[-1, 3136]' is invalid for input of size 35200000

四、expected scalar type Long but found Double

五、训练精度和测试精度都很低


最近在写机器学习的第二个大作业,因为要求是用神经网络去完成,上一学期模式识别用的是简单的BP,但是这学期是要求深度神经网络,所以想用CNN——卷积神经网络来做。但是。。。当然,遇到了特别多的问题。

一、conv2d() received an invalid combination of arguments

写CNN的时候,我借鉴的是这篇文章:

(60条消息) Python PyTorch6:卷积神经网络_Amzmks的博客-CSDN博客_卷积神经网络python

然后我把其中下载的数据集换成了我的数据集,就会发生以下报错

 刚开始我真的以为是cov2d这个函数的参数输入不对,然鹅,我发现怎么该参数都一样地报错,后来我思考了一下,我新建了一个文件,输入以下代码:

self.conv1 = nn.Sequential(nn.Conv2d(1, 64, 5, 1, 2), nn.ReLU(), nn.MaxPool2d(2, 2))

也就是报错的那句代码,运行,却没有报错。

然后我就觉得,一定是我输入的图片的格式的问题。

我的图片数据是np.array格式,二维数组,于是我就觉得我应该在原代码里调试一下,看一下别人训练前的数据格式是什么。

发现原来别人的格式是Tensor

参照文章:(60条消息) Pytorch中Tensor与各种图像格式的相互转化_明泽.的博客-CSDN博客_tensor转图片

可以知道在pytorch中ÿ

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值