2、Python与深度学习环境搭建:Anaconda安装、PyTorch框架配置、CUDA与cuDNN安装、Jupyter Notebook使用
说实话,很多同学学深度学习,第一关就卡在环境搭建上。
我记得自己刚入行那会儿,光装CUDA就折腾了两天。后来发现,其实只要理清步骤,这事儿没那么玄乎。今天我就带你一步步把环境搭好,保证你跑起来顺顺当当的。
本章核心目标: 搭建一套完整的深度学习开发环境,包括Python包管理、GPU加速支持、深度学习框架以及交互式编程工具。
2.1 Anaconda:Python的“瑞士军刀”
我个人习惯用Anaconda来管理Python环境。为什么?因为它自带conda包管理器,能帮你隔离不同项目的依赖。说白了,就是避免“装A项目把B项目搞崩了”这种尴尬事。
安装步骤:
- 去Anaconda官网下载对应系统的安装包(Python 3.9+版本)
- 安装时记得勾选“Add Anaconda to my PATH environment variable”
- 安装完成后,打开终端(Windows用Anaconda Prompt)
验证安装:
conda --version
python --version
如果看到版本号,说明安装成功。嗯,这里要注意:如果你用的是Mac M1/M2芯片,建议装Miniforge而不是Anaconda,兼容性更好。我在项目里踩过这个坑,原生Anaconda在ARM架构上偶尔会出幺蛾子。
2.2 创建虚拟环境:给你的项目一个“独立房间”
你想想看,每个项目需要的包版本可能不一样。比如项目A要PyTorch 1.12,项目B要2.0。如果全装在一起,迟早会冲突。
我的做法是:每个项目建一个独立环境。
# 创建环境(指定Python版本)
conda create -n dl_env python=3.9
# 激活环境
conda activate dl_env
# 退出环境
conda deactivate
环境名可以随便起,我习惯用项目名或“dl_env”这种通用名。激活后,终端前面会出现环境名,提醒你当前在哪个环境里操作。
2.3 PyTorch框架配置:深度学习的主力军
PyTorch是目前最流行的深度学习框架之一。它的动态图机制让调试变得特别直观——说白了,就是你可以像写普通Python代码一样写神经网络。
安装PyTorch:
去PyTorch官网(pytorch.org)选择你的配置,它会生成对应的安装命令。比如CPU版本:
pip install torch torchvision torchaudio
GPU版本(需要先装CUDA,后面会讲):
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
验证安装:
import torch
print(torch.__version__)
print(torch.cuda.is_available()) # 如果是GPU版本,应该返回True
避坑指南: 我曾经在服务器上装PyTorch,忘了激活虚拟环境,结果装到了base环境里。后来项目迁移时才发现依赖全乱了。所以,装包前一定确认环境已激活!
2.4 CUDA与cuDNN:让GPU跑起来的“引擎”
为什么要装CUDA?因为深度学习训练需要大量并行计算,CPU根本扛不住。CUDA是NVIDIA的并行计算平台,cuDNN是它的深度学习加速库。两者配合,能让GPU发挥最大性能。
安装步骤:
- 确认你的NVIDIA显卡型号(GTX 1060以上都行)
- 去NVIDIA官网下载对应系统的CUDA Toolkit(推荐11.8或12.1)
- 安装cuDNN(需要注册NVIDIA开发者账号)
验证CUDA:
nvcc --version
验证cuDNN:
# 在Python中
import torch
print(torch.backends.cudnn.version())
重要提醒: CUDA版本必须和PyTorch版本匹配!比如PyTorch 2.0对应CUDA 11.8。不匹配的话,torch.cuda.is_available()会返回False。我见过太多人卡在这一步了。
2.5 Jupyter Notebook:交互式编程利器
Jupyter Notebook特别适合做数据分析和深度学习实验。你可以边写代码边看结果,还能加注释、画图,非常直观。
安装与启动:
# 在虚拟环境中安装
conda install jupyter
# 启动
jupyter notebook
启动后浏览器会自动打开,默认端口是8888。你可以新建一个Python 3的Notebook,开始写代码。
我个人习惯在Notebook里做三件事:
- 数据探索:快速查看脑电信号的波形和统计特征
- 模型调试:逐层打印网络输出,检查梯度是否正常
- 结果可视化:用matplotlib画训练曲线、混淆矩阵
小技巧: 在Notebook里按Tab可以自动补全代码,按Shift+Tab可以查看函数文档。这两个快捷键能帮你省不少时间。
2.6 本章知识体系总览
下面这张图帮你理清整个环境搭建的逻辑关系:
2.7 常见问题与解决方案
| 问题 | 原因 | 解决方法 |
|---|---|---|
| torch.cuda.is_available() 返回False | CUDA版本不匹配或未安装 | 检查CUDA版本,重新安装匹配的PyTorch |
| conda命令找不到 | 未添加到PATH | 重新安装时勾选“Add to PATH” |
| Jupyter无法启动 | 端口被占用 | jupyter notebook --port=8889 |
| pip安装速度慢 | 默认源在国外 | pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名 |
最后提醒: 环境搭建是深度学习的第一步,也是最容易出问题的一步。如果你遇到报错,别慌。先看错误信息,再查官方文档。我当年也是这么过来的。
好了,环境搭好了,下一章我们就可以开始用PyTorch写真正的循环神经网络了。到时候你会觉得,今天这点折腾,值!