接触深度学习半年,pytorch小白一枚
1.之前下载的pytorch,忘记了是下载的什么版本的,用yolov5训练神经网络的时候,1000张数据集,跑了三天三夜,直接使用的就是cpu,无法调用gpu,运用了各种方法有解决不了,(现在觉得应该是下载错版本了,直接安装上了cpu版本)
解决办法:
1.在Anaconda新建一个环境,我命名为gpu
2.激活gpu环境 conda activate gpu
3.给环境换源。在gpu环境下执行如下的命名给环境换清华源。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes4
4.查看自己电脑显卡的型号,并查看匹配的cuda
我的cuda是11.2,但是从pytorch官网上看的只有11.3cuda版本和10.2
5.第一次我下载了一个11.3版本,发现无法使用,后来查资料得知,只能下载小于等于自己本机cuda,也就是说我是11.2版本的,我只能下载,<=11.2的cuda。
6.在pytorch官网点开历史版本,找到历史版本,我下载的是11.1版本的cuda,然后将下面红色框框中的内容复制下来,一定不要把后面的-c pytorch -c conda-forge也复制下来,因为这样运行就是还是在国外源下载,这样就会很慢。
7.下载好ptorch,再寻找对应版本的torch
我下载的pytorch是1.7.0。
这样以后cuda和pytorch版本对应以后就可以使用gpu训练神经网络啦。
附上查询各版本,以及cuda的方法
import torch
print(torch.__version__)
print(torch.version.cuda)
print(torch.backends.cudnn.version())
print(torch.cuda.is_available())
显示true就是代表可以用。
ps。当运行train.py时,显示显卡内存不足,可以选择调小batch.size ,如果发现调整的再小都没用的话,可能就是版本的问题,而且可以查看cuda的数量和名称,我的是0,所以我可以在dafault中输入0.或者空。