【pytorch | bug | 版本不兼容】:RuntimeError: Expected 2D (unbatched) or 3D (batched) input to conv1d, but g

  • Post author:
  • Post category:其他


在这里插入图片描述


作者

:非妃是公主


专栏

:《python学习》《计算机视觉》


博客地址



https://blog.csdn.net/myf_666




个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩



在这里插入图片描述



专栏推荐

专栏名称 专栏地址
软件工程
专栏——软件工程
计算机图形学
专栏——计算机图形学
操作系统
专栏——操作系统
软件测试
专栏——软件测试
机器学习
专栏——机器学习
数据库
专栏——数据库
算法
专栏——算法



一、报错信息

RuntimeError: Expected 2D (unbatched) or 3D (batched) input to conv1d, but got input of size: [4, 128, 160, 120]



二、原因分析

经过检索发现,这是由于pytorch新版本与老版本之间不兼容导致的


1


在这里插入图片描述

因此,按照上面的说法,解决方案有2种:

  1. 重构代码;
  2. 配置老版本的环境

    pytorch=1.10

由于在复现论文,对论文的代码并不是很熟悉,因此为了避免节外生枝,果断选择了第2种方式。




三、解决过程

解决过程如下:

首先找到pytorch的官网:

https://pytorch.org/get-started/locally/

打开后界面如下(注意,可能会由于网络原因造成网页打不开,需要想一些办法,自行解决吧= =。)

在这里插入图片描述

向下滑,会发现一个自动生成

pip

命令的控件,如下:

在这里插入图片描述

但是它只能生成最新版本的命令,如上图,这并不是我们想要的,我们想要安装

1.10

版本的

pytorch

所以我们点击下图中箭头指向的超链接,安装以前版本的,至少是pytorch1.10版本。

在这里插入图片描述

打开后,界面如下:

在这里插入图片描述

这里面都是pytorch早期版本的一些安装命令了。

往下滑,找到

v1.10

版本,以及

Windows

下的安装命令,同时需要考虑一下自己电脑的cuda版本,我的

cuda

版本是

11.5

的,所以我选择

cuda11.3

的那个指令(因为同为11,应该是向后兼容的,至于如何查看

GPU



cuda

版本,请您继续往下看),如下:

在这里插入图片描述

关于cuda版本的选择主要看NVIDIA的控制面板->帮助->系统信息->组件,然后就可以看到了,如下图:

在这里插入图片描述

因此,选择命令如下:

# CUDA 10.2
conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=10.2 -c pytorch

有了安装命令之后,创建虚拟环境,然后运行安装命令就可以了,关于创建虚拟环境的详细步骤可以看我这一篇文章,十分简洁,2分钟就可以搞定:

python配置虚拟环境,并在虚拟环境中安装pytorch教程.

在这里插入图片描述

经检验,pytorch环境及cuda都已经配置成功(注:检验方法也在上面链接中有详细说明),如下:

在这里插入图片描述

重新训练模型,发现正常运行,如下:

在这里插入图片描述




the end……


关于pytorch版本不兼容的一个小bug

到这里就要结束啦~~到此既是缘分,欢迎您的

点赞



评论



收藏



关注

我,不迷路,我们下期再见!!

😘😘😘 我是Cherries,一位计算机科班在校大学生,写博客用来记录自己平时的所思所想!

💞💞💞 内容繁杂,又才疏学浅,难免存在错误,欢迎各位大佬的批评指正!

👋👋👋 我们相互交流,共同进步!




:本文由

非妃是公主

发布于

https://blog.csdn.net/myf_666

,转载请务必标明原文链接:

https://blog.csdn.net/myf_666/article/details/129308874



  1. https://github.com/matthias-k/DeepGaze/issues/3


    ↩︎



版权声明:本文为myf_666原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。