第2章:环境搭建——Python环境配置、PyTorch安装、CUDA与cuDNN配置、YOLOv8源码下载与依赖安装
说实话,环境搭建是很多同学入门深度学习的第一道坎。我见过太多人卡在这一步,代码写好了,结果跑不起来,最后发现是CUDA版本没对上。这一章,咱们就把这些坑一个个填平。
本章核心目标:搭建一个能跑YOLOv8的完整深度学习环境。说白了,就是让你的电脑能调用GPU加速,能运行PyTorch,能顺利跑通YOLOv8的demo。
2.1 Python环境配置
我个人习惯用Anaconda来管理Python环境。为什么?因为项目多了,依赖冲突是家常便饭。Anaconda能帮你隔离环境,互不干扰。
2.1.1 安装Anaconda
- 去Anaconda官网下载对应系统的安装包(我建议选Python 3.9+版本)
- 安装时记得勾选"Add Anaconda to my PATH environment variable"
- 安装完成后,打开终端(Windows用cmd或PowerShell,Mac/Linux用bash)
- 输入
conda --version验证安装成功
2.1.2 创建YOLOv8专用环境
# 创建一个名为yolov8的环境,指定Python版本为3.9
conda create -n yolov8 python=3.9 -y
# 激活环境
conda activate yolov8
# 验证Python版本
python --version
小技巧:环境名最好和项目相关。我之前有个项目叫了"test",结果三个月后自己都忘了里面装了什么。yolov8、detection这种名字一目了然。
2.2 PyTorch安装
PyTorch是YOLOv8的底层框架。安装前,你得先搞清楚一件事:你的电脑有没有NVIDIA显卡?
| 场景 | 安装命令 | 说明 |
|---|---|---|
| 有NVIDIA显卡(推荐) | pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 |
CUDA 11.8版本,兼容性好 |
| 无NVIDIA显卡(CPU模式) | pip install torch torchvision torchaudio |
只能跑CPU,速度慢很多 |
| Mac M1/M2芯片 | pip install torch torchvision torchaudio |
PyTorch已原生支持MPS加速 |
注意:千万不要直接 pip install torch 完事。默认安装的是CPU版本,你显卡再好也用不上。我曾经帮一个学员排查了三天,最后发现他装的就是CPU版PyTorch……
安装完成后,验证一下:
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
如果输出 True,恭喜你,GPU加速已经就绪。如果是 False,别急,往下看CUDA配置。
2.3 CUDA与cuDNN配置
CUDA是NVIDIA的并行计算平台,cuDNN是深度神经网络的加速库。说白了,CUDA是高速公路,cuDNN是跑车——两者配合才能跑得快。
2.3.1 检查显卡驱动与CUDA版本
# Windows
nvidia-smi
# Linux/Mac
nvidia-smi
你会看到类似这样的输出:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.17 Driver Version: 525.105.17 CUDA Version: 12.0 |
+-----------------------------------------------------------------------------+
重点关注 CUDA Version。这个数字决定了你能安装哪个版本的PyTorch。
2.3.2 安装CUDA Toolkit
如果 nvidia-smi 显示的CUDA版本低于11.8,你需要手动安装:
- 访问NVIDIA CUDA Toolkit存档页面
- 选择CUDA 11.8(与PyTorch匹配)
- 根据你的操作系统选择安装包
- 安装完成后,重启终端,再次运行
nvidia-smi确认版本
2.3.3 配置cuDNN
cuDNN的安装其实很简单:
- 去NVIDIA cuDNN页面下载对应CUDA 11.8的cuDNN
- 解压后,把bin、include、lib文件夹复制到CUDA安装目录
- Windows默认路径:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
避坑指南:我曾经因为cuDNN版本不对,训练速度只有正常的一半。检查方法很简单:python -c "import torch; print(torch.backends.cudnn.version())"。如果报错,说明cuDNN没配置好。
2.4 YOLOv8源码下载与依赖安装
环境搭好了,现在来拉取YOLOv8的代码。我建议直接从官方仓库拉,别去第三方下载——你永远不知道别人改了什么。
2.4.1 克隆源码
# 进入你的工作目录
cd ~/projects
# 克隆YOLOv8官方仓库
git clone https://github.com/ultralytics/ultralytics.git
# 进入项目目录
cd ultralytics
# 查看分支(建议用main分支)
git branch -a
2.4.2 安装依赖
YOLOv8的依赖管理做得很好,一条命令搞定:
# 安装核心依赖
pip install -r requirements.txt
# 或者直接安装ultralytics包(推荐)
pip install ultralytics
安装完成后,验证一下:
python -c "from ultralytics import YOLO; print('YOLOv8导入成功')"
2.4.3 依赖清单速查
| 依赖包 | 版本要求 | 作用 |
|---|---|---|
| torch | >=1.8.0 | 深度学习框架 |
| torchvision | >=0.9.0 | 图像处理工具 |
| numpy | >=1.18.0 | 数值计算 |
| opencv-python | >=4.1.0 | 图像读取与处理 |
| matplotlib | >=3.2.0 | 可视化 |
| pillow | >=7.1.0 | 图像IO |
| pyyaml | >=5.3.0 | 配置文件解析 |
| tqdm | >=4.64.0 | 进度条显示 |
重要提醒:如果你用 pip install ultralytics,它会自动安装所有依赖。但如果你从源码安装,一定要先装好PyTorch再装其他依赖。顺序错了,可能会装成CPU版PyTorch。
2.5 环境搭建全流程一览
为了让你对整个流程有个直观认识,我画了张图:
2.6 常见问题与解决方案
环境搭建过程中,你可能会遇到这些问题。我把它们列出来,省得你到处搜:
| 问题 | 原因 | 解决方案 |
|---|---|---|
torch.cuda.is_available() 返回False |
PyTorch版本与CUDA版本不匹配 | 卸载PyTorch,重新安装对应CUDA版本的PyTorch |
ImportError: No module named 'torch' |
未激活conda环境 | 运行 conda activate yolov8 |
CUDA out of memory |
显存不足 | 减小batch size或使用更小的模型 |
git clone 速度慢 |
网络问题 | 使用代理或国内镜像源 |
pip install 超时 |
网络不稳定 | 加 -i https://pypi.tuna.tsinghua.edu.cn/simple 使用清华源 |
我的经验:如果你用的是Windows,强烈建议用PowerShell而不是cmd。PowerShell对conda的支持更好,不会出现激活环境后还是base环境的问题。这个坑我踩过两次,后来就再也没用cmd了。