这个问题的可行的一种解决方法:
刚开始有这个问题的时候,直接在百度上查的,就只找到了一种解决方法,就是让我去调小batchsize,试过之后,还是同样的问题。所以就想到可能不是代码本身的问题,因为原来如果是需要用到的显存超了的话,会显示cuda out of memery之类的错误。那么可能是我pytorch环境的问题,但是自己的水平比较差,查不出来具体环境哪里出了问题,所以用了一个本方法,那就是重新安装了pytroch和cuda,然后这个问题就得到了解决,一下是具体的代码,按照顺序来操作就可以了:
首先是卸载原来的环境:
conda uninstall pytorch
conda uninstall libtorch
pip uninstall torch
为了确保卸载的干净,还要接着执行下面的代码:
python -m ensurepip
python -m pip install --upgrade pip
pip uninstall torchvision
接着就可以重新安装环境了,可以去这个地址找对应的代码就可以了,注意下自己电脑或者是服务器的cuda版本。
我的服务器最大支持的cuda版本是11.7,所以我运行的是下面这行代码:
conda install pytorch==1.12.0 torchvision==0.13.0 torchaudio==0.12.0 cudatoolkit=11.6 -c pytorch -c conda-forge
最后等待安装,然后我的这个问题就解决了。
建议:
遇到这个问题的时候可能是GPU的显存不行,可以先调小batch size,要是没有别的办法了,可以试一下这个方法。
非常感谢这个教我重新安装pytorch环境的链接