2、环境配置与工具链:Anaconda安装、PyTorch框架安装、CUDA与cuDNN配置、Jupyter Notebook使用
说实话,环境配置这件事,看着简单,但坑是真不少。我带过不少新人,十有八九第一周都在跟各种报错死磕。我自己也翻过车——有一次配CUDA版本没对齐,折腾了两天才发现是驱动没更新。所以这一章,我尽量把那些容易踩的坑都给你指出来。
2.1 Anaconda安装:你的Python环境管家
为什么要用Anaconda?说白了,就是帮你管理Python版本和第三方库。你想想看,一个项目用PyTorch 1.10,另一个用2.0,版本冲突怎么办?Anaconda的虚拟环境就是干这个的。
安装步骤:
- 去官网下载对应系统的安装包(Windows/Linux/macOS)
- 双击安装,一路默认就行。但有个关键点——记得勾选「Add Anaconda to my PATH environment variable」。我见过有人没勾,后面命令行死活找不到conda命令,又得重装。
- 安装完成后,打开终端(Windows用Anaconda Prompt),输入
conda --version验证。
2.2 创建虚拟环境:隔离的艺术
环境隔离是深度学习的必修课。我建议每个项目都建一个独立环境,别图省事全装base里。
# 创建一个名为dl_env的环境,Python版本3.9
conda create -n dl_env python=3.9
# 激活环境
conda activate dl_env
# 退出环境
conda deactivate
# 查看所有环境
conda env list
嗯,这里要注意:环境名别用中文,也别带空格。我见过有人用「深度学习环境」做名字,结果后面路径解析报错,折腾半天。
2.3 PyTorch框架安装:选对版本是关键
PyTorch安装其实就一行命令,但版本选择有讲究。你得先搞清楚自己的CUDA版本。
查看CUDA版本:
# Windows
nvidia-smi
# Linux
nvidia-smi
# 或者
nvcc --version
看到输出里的CUDA Version了吗?比如显示11.8,那你就装对应版本的PyTorch。
安装命令(以CUDA 11.8为例):
# 官方推荐方式
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# 或者用conda(但速度慢,不推荐)
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
pip install torch,结果装了个CPU版本。跑模型时发现GPU占用为0,查了半天才发现问题。所以一定要指定 --index-url 参数,或者去PyTorch官网用版本选择器生成命令。
验证安装:
import torch
print(torch.__version__) # 查看版本
print(torch.cuda.is_available()) # 检查CUDA是否可用
print(torch.cuda.device_count()) # GPU数量
print(torch.cuda.get_device_name(0)) # GPU型号
如果 torch.cuda.is_available() 返回 True,恭喜你,环境配好了。
2.4 CUDA与cuDNN配置:深度学习的加速引擎
CUDA是NVIDIA的并行计算平台,cuDNN是专门为深度学习优化的加速库。说白了,没有它们,你的GPU就是个摆设。
CUDA安装要点:
- 去NVIDIA官网下载对应版本的CUDA Toolkit
- 安装时选择「自定义安装」,只勾选CUDA组件,别装Driver(除非你的驱动太旧)
- 安装完成后,配置环境变量:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin
cuDNN配置:
cuDNN其实是个压缩包,解压后把里面的文件复制到CUDA安装目录就行。
# 假设CUDA安装在 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
# 把cuDNN解压后的bin、include、lib文件夹内容分别复制到对应目录
| PyTorch版本 | CUDA版本 | cuDNN版本 |
|---|---|---|
| 2.0.0 | 11.7 / 11.8 | 8.5 / 8.6 |
| 1.13.0 | 11.6 / 11.7 | 8.4 / 8.5 |
| 1.10.0 | 10.2 / 11.3 | 8.2 |
你想想看,如果CUDA是11.8,但PyTorch编译时用的是11.7的接口,那肯定报错。所以装之前一定查清楚。
2.5 Jupyter Notebook使用:交互式开发的利器
Jupyter Notebook特别适合做实验和调试。你可以一段一段地跑代码,随时看中间结果,比写脚本方便多了。
安装与启动:
# 在虚拟环境中安装
conda activate dl_env
pip install jupyter notebook
# 启动
jupyter notebook
启动后浏览器会自动打开,默认端口8888。你会看到一个文件列表,点「New」→「Python 3」就能新建一个Notebook。
常用快捷键:
Shift + Enter:运行当前单元格并跳到下一个Ctrl + Enter:运行当前单元格Esc + A:在当前单元格上方插入新单元格Esc + B:在当前单元格下方插入新单元格Esc + M:切换为Markdown模式(写说明文字用)
配置内核与虚拟环境关联:
默认情况下,Jupyter用的是base环境的Python。要让它在你的 dl_env 环境下运行,需要装一个包:
# 在dl_env中安装ipykernel
conda activate dl_env
pip install ipykernel
# 将当前环境注册到Jupyter
python -m ipykernel install --user --name dl_env --display-name "PyTorch DL"
重启Jupyter后,新建Notebook时就能选择「PyTorch DL」这个内核了。
2.6 常见问题与排错
环境配置这块,我踩过的坑能写满一页纸。挑几个最常见的说说:
- 「CUDA error: no kernel image is available」——多半是PyTorch和CUDA版本不匹配。重新装对应版本的PyTorch。
- 「ImportError: DLL load failed」——Windows上常见,一般是cuDNN没复制对位置。检查一下bin目录下有没有
cudnn64_8.dll这类文件。 - Jupyter无法连接内核——试试
pip install --upgrade jupyter_client,或者重启Jupyter。
嗯,环境配置确实烦人,但一次配好,后面能省很多事。我建议你把安装步骤和版本号记下来,下次换机器直接照着来,省得再查一遍。
好了,这一章就到这儿。下一章我们开始动手写第一个图像分类模型,到时候这些环境就派上用场了。