面对标题中这些需要安装配置的内容肯定有些头大,不过没关系,此文带你梳理它们之间的关系并手把手带你配置一个完整的环境~🎁
一、引言
①不需要在此之前安装python,但要确保自己的电脑有NVIDIA的GPU,和windows系统
②下面是安装顺序和流程
1.CUDA
它是NVIDIA公司推出的一个并行计算平台和编程模型,允许用户在NVIDIA的GPU上运行并行计算程序。简言之,有了它才能充分利用GPU,才能更快地加速你的深度学习、机器学习任务。
2.cuDNN
是NVIDIA基于CUDA开发的一个专为深度神经网络设计的加速库。专门用于加速神经网络中的计算密集型操作,比如卷积运算、池化、激活函数等。(更快一层楼)
3.Anconda
安装Anaconda后,可以轻松管理不同的Python环境和包的依赖关系。比如我现在有两个任务,与甲方1对接的要求使用python3.8.19,与甲方2对接的需要python3.10,不同的python环境所要求使用的包版本不一致,那么我该怎么在同一台计算机解决不同包版本之间冲突呢?答案就是利用conda创建两个虚拟环境,分别使用python3.8.19和python3.10,不同的虚拟环境将各种库和包隔绝起来,避免冲突。
4.PyTorch、torchvision、torchau
pytorch提供了灵活的张量运算和自动微分功能,特别适合构建和训练神经网络。也是许多深度学习模型的核心,可以用于构建和训练各种类型的神经网络,如卷积神经网络(CNN)、循环神经网络(RNN)等。
torchvision是PyTorch生态系统中的计算机视觉库,包含了用于图像处理的工具、预训练模型、常用的数据集和数据增强方法。经常用于计算机视觉任务,包括图像分类、目标检测、图像分割等。
torchaudio是PyTorch的音频处理库,提供了音频数据的加载、预处理和变换工具,用在语音和音频相关的深度学习任务。比如如语音的识别、音频分类、情感分析等。(选装,做视觉这个不装也可)
二、安装CUDA和cuDNN
1.在下载CUDA之前你需要办2件事:
①确认自己GPU支持的CUDA版本(win+r然后输入cmd确认,在终端直接运行nvidia-smi即可)
nvidia-smi
②确认pytorch官网支持的CUDA版本,官网:点击这里
办这两件事的目的是①确保计算机的显卡支持安装的CUDA版本,②方便后续安装pytorch
可以看到我GPU的CUDA版本是12.2,较新版本的pytorch官网支持的CUDA版本是11.8、12.1、12.4,所以对于我电脑,安装11.8和12.1版本均可,我选择安装CUDA12.1版本。
2.在安装CUDA时你还需要办5件事:
①下载CUDA安装包官网:点击这里
比如我安装时找到CUDA Toolkit 12.1.0或者12.1.1均可,你找到你电脑对应的版本下载后安装CUDA的步骤可以参考这个(此处不再赘述,繁杂容易遮盖掉主线任务)。注意按照链接里的方法检查环境变量和是否能在终端窗口nvcc -V查询到对应CUDA版本信息。
②下载cuDNN压缩包官网:点击这里
下载时注意后边的for CUDA版本,对应下载CUDA12.x或11.x,我下载任意一个CUDA 12.x的版本即可。
③下载cuDNN后解压里面会出现三个文件夹bin、include、lib,将这三个文件夹复制粘贴在CUDA的安装目录中即可
④ 添加cuDNN环境变量
将这4个系统环境变量,按照安装路径手动添加进去即可。
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\libnvvp
⑤验证
我CUDA的安装路径为C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1,然后进入...\extras\demo_suite,发现里面有bandwidthTest.exe和deviceQuery.exe两个可执行文件
然后复制路径,进入cmd,直接cd+路径进入当前文件夹,直接输入bandwidthTest.exe回车,在输入deviceQuery.exe回车,两个返回结果如下即为正常。
三、安装Anconda
进入官网下载:点击这里,下载最新版本即可,不需要关注是python哪个版本,在你创建虚拟环境时指定python版本,会自动下载对应版本的python。
Anconda安装比较简单,参考这篇博文,此处不再赘述,如果没成功,注意检查系统环境变量path中是否存在以下几个,若没存在,手动添加即可(注意自己的安装路径)。
四、创建虚拟环境
比如甲方1对接后要求我python版本应为3.8.19,在cmd中直接输入以下命令,其中“jiafang1”是我的环境名称,“python=3.8.19”是我指定的版本名,更换为你想安装的版本即可,如“python=3.10”
conda create -n jiafang1 python=3.8.19
输入指令后回车,Proceed?时输入y,回车就行。
当出现以下界面时表示创建成功,
使用‘conda activate jiafang1’进入虚拟环境。并使用‘python -V’指令查看python版本。
conda activate jiafang1
python -V
五、安装GPU版本的pytorch、torchvision、torchaudio
由于pytorch大概2.4GB,指令在线安装容易出问题,极推荐离线安装,pytorch、torchvision、torchaudio安装包地址都在一起:点击这里
进去之后你会发现,有太多版本,其中cu121,表示CUDA版本为12.1;cp38表示python版本为python3.8;win表示windows系统;中间的torch2.2.2、torch2.2.1或者其他的什么版本都无所吊谓,下载哪一个均可。
由于刚安装的CUDA版本是12.1,因此我下载第二个红线标注的cu121+torch-2.2.2+cp38+win_amd64版本。
同理,torchvision和torchaudio也下载对应CUDA和python版本的就行,但是要注意与pytorch的版本对应关系。对应关系查询:点击这里
可以看到与pytorch2.2.2对应的torchvision版本是0.17.2,对应的torchaudio是2.2.2
下载完成
开始安装,在创建好的jiafang1环境中运行以下代码即可(注意你自己的路径),如果没有换源而安装不成功,运行第二个加了清华源地址的代码即可。
pip install E:\zhaojunqi\yingwenlujing\torch_python38\torch-2.2.2+cu121-cp38-cp38-win_amd64.whl
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple E:\zhaojunqi\yingwenlujing\torch_python38\torch-2.2.2+cu121-cp38-cp38-win_amd64.whl
同理安装torchvision和torchaudio
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple E:\zhaojunqi\yingwenlujing\torch_python38\torchvision-0.17.2+cu121-cp38-cp38-win_amd64.whl
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple E:\zhaojunqi\yingwenlujing\torch_python38\torchaudio-2.2.2+cu121-cp38-cp38-win_amd64.whl
安装成功,在jiafang1的虚拟环境中输入以下代码检查是否安装成功。
python
import torch
torch.cuda.is_available()
如果返回为True则安装成功,接下来你就可以在此虚拟环境中运行你的深度学习算法啦✔🎉🎉🎉。
六、以YOLOv5为例检测整体环境是否搭建成功
1.在运行YOLO之前需要安装Git
Git是运行程序需要而不是搭建环境需要,其对搭建的环境没有影响,只是方便管理和协作开发代码的,对于yolo这种开源代码追踪、回滚、共享代码很有必要。安装Git可以参考这篇文章:点击此处。
2.下载yolov5
点击此处进行下载,也可以参考这篇文章:保姆式yolov5教程,训练你自己的数据集
下载完成后解压,在虚拟环境中cd 进入解压路径,使用以下命令安装所需第三方库。
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
等待安装完成即可,
3.运行yolov5
使用Vscode或者pycharm均可,打开解压后的yolov5;也可以使用终端,cd进入解压后的yolov5路径,确保运行的python环境在之前创建的jiafang1虚拟环境中,在终端使用以下命令运行train.py
python train.py --img 640 --batch 16 --epochs 50 --data data/coco128.yaml --weights yolov5s.pt --device 0
如果出现以下内容,说明正在使用GPU训练yolov5自带的训练集
七、总结
一些官方网站加载速度较慢,可能需要🚀,pip安装不成功时,关掉🚀,并切换国内镜像源即可,欢迎私信和留言讨论学习。