2、深度学习环境搭建:Anaconda安装、CUDA与cuDNN配置、PyTorch框架安装、验证环境
说实话,环境搭建是很多初学者最头疼的一步。我见过太多人卡在这里,明明代码写好了,结果跑不起来——要么CUDA版本不对,要么PyTorch和显卡驱动打架。嗯,咱们今天就把这事一次性捋清楚。
我个人习惯把环境搭建分成四个阶段:基础工具 → 显卡驱动 → 深度学习框架 → 验证闭环。每一步都有坑,但只要你按顺序来,基本不会出问题。
核心原则:版本匹配是环境搭建的灵魂。CUDA、cuDNN、PyTorch、显卡驱动,这四个东西必须“对齐”。差一个版本号,可能就白折腾半天。
2.1 Anaconda安装:Python环境的“管家”
Anaconda这东西,说白了就是一个Python环境管理器。你想想看,做YOLO项目可能要同时用Python 3.8、3.9、3.10,每个项目依赖的包版本还不一样。手动切换?太累了。Anaconda帮你搞定。
安装步骤:
- 去官网下载Anaconda(推荐Python 3.9+版本)
- 安装时勾选“Add Anaconda to my PATH environment variable”
- 安装完成后,打开终端(Windows用Anaconda Prompt)
- 输入
conda --version验证安装
我的习惯:每个项目建一个独立的虚拟环境。比如YOLO项目,我会用 conda create -n yolo_env python=3.9。这样就算环境搞坏了,删掉重建就行,不影响其他项目。
常用conda命令速查:
| 命令 | 作用 |
|---|---|
conda create -n 环境名 python=3.9 |
创建虚拟环境 |
conda activate 环境名 |
激活环境 |
conda deactivate |
退出环境 |
conda list |
查看已安装包 |
conda remove -n 环境名 --all |
删除环境 |
2.2 CUDA与cuDNN配置:让GPU干活
YOLO训练靠的是GPU。没有CUDA,你的显卡就是个“摆设”。CUDA是NVIDIA的并行计算平台,cuDNN是专门为深度神经网络优化的加速库。两者配合,才能让GPU全力跑起来。
第一步:检查显卡驱动
在终端输入 nvidia-smi,你会看到显卡信息和驱动版本。注意看右上角的“CUDA Version”,这个数字决定了你能装哪个版本的CUDA Toolkit。
我曾经踩过的坑:有一次我直接装了最新的CUDA 12.0,结果PyTorch当时只支持到11.8,折腾了两天才发现是版本不匹配。记住:PyTorch官网会明确标注支持的CUDA版本,先查PyTorch,再选CUDA。
第二步:安装CUDA Toolkit
- 去NVIDIA官网下载对应版本的CUDA Toolkit
- 安装时选择“自定义安装”,只勾选“CUDA”组件(别装驱动,避免覆盖)
- 安装完成后,添加环境变量:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin - 验证:终端输入
nvcc --version
第三步:配置cuDNN
- 去NVIDIA官网下载cuDNN(需要注册账号)
- 选择与CUDA版本匹配的cuDNN版本
- 解压后,把bin、include、lib文件夹里的文件复制到CUDA安装目录对应文件夹
- 验证:运行CUDA自带的
deviceQuery.exe和bandwidthTest.exe
版本匹配速查表(2024年推荐):
| PyTorch版本 | CUDA版本 | cuDNN版本 | 显卡驱动最低版本 |
|---|---|---|---|
| 2.0.x | 11.8 | 8.7+ | 525.60.13 |
| 2.1.x | 12.1 | 8.9+ | 545.23.06 |
| 2.2.x | 12.1 | 8.9+ | 545.23.06 |
2.3 PyTorch框架安装
PyTorch是咱们YOLO项目的核心框架。安装其实很简单,关键是要选对版本。
安装命令(以CUDA 11.8为例):
# 激活你的虚拟环境
conda activate yolo_env
# 安装PyTorch(官方推荐用pip)
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118
# 或者用conda安装(慢但稳定)
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 cudatoolkit=11.8 -c pytorch -c conda-forge
我的建议:用pip安装。conda有时候会解析依赖很久,pip快得多。而且PyTorch官方对pip的支持更好,版本更新也及时。
2.4 验证环境:跑通第一个Demo
环境搭好了,不验证等于白搭。我每次搭完环境都会跑三个检查,确保万无一失。
检查1:PyTorch能否正常导入
python -c "import torch; print('PyTorch版本:', torch.__version__)"
检查2:CUDA是否可用
python -c "import torch; print('CUDA可用:', torch.cuda.is_available()); print('GPU数量:', torch.cuda.device_count()); print('GPU名称:', torch.cuda.get_device_name(0))"
检查3:跑一个简单的张量运算
import torch
# 创建一个在GPU上的张量
x = torch.randn(3, 3).cuda()
y = torch.randn(3, 3).cuda()
z = x + y
print('GPU计算成功!')
print('结果:\n', z)
验证结果解读:
torch.cuda.is_available()返回True→ CUDA配置成功- 能看到GPU名称(如“NVIDIA GeForce RTX 3060”)→ 驱动正常
- 张量运算无报错 → cuDNN正常工作
常见问题排查:
- “CUDA not available” → 检查驱动版本、CUDA版本、PyTorch版本是否匹配
- “DLL load failed” → cuDNN没复制对位置,或者环境变量没配好
- “Out of memory” → GPU显存不够,可以调小batch size或者换小模型测试
嗯,到这里环境就搭好了。整个过程大概20分钟,但如果你第一次做,可能会遇到各种小问题。别慌,记住一个原则:版本匹配是王道。所有问题都可以归结为“版本没对齐”。
我个人习惯把搭建好的环境做个快照:conda env export > environment.yaml。这样换机器或者重装系统,一条命令就能恢复:conda env create -f environment.yaml。省心。