2、环境搭建与工具链:Anaconda、PyTorch、CUDA、Jupyter Notebook 安装与配置
说实话,做深度学习项目,最让人头疼的往往不是模型本身,而是环境配置。我见过太多同学花了两天装环境,最后发现版本对不上,心态直接崩了。
这一章,咱们就把这套工具链彻底捋清楚。我会把我在项目中踩过的坑、总结的经验都告诉你。你跟着我的步骤来,基本不会出问题。
2.1 整体架构:先看一张图
在动手之前,我建议你先看看下面这张图。它把整个工具链的层次关系讲得很清楚。
说白了,这套工具链就是一层叠一层。最底下是操作系统,上面是Anaconda管理Python环境,再往上CUDA负责调用GPU,PyTorch在CUDA之上做计算,最后你用Jupyter Notebook写代码。
2.2 Anaconda:环境管理的基石
我个人习惯用Anaconda来管理Python环境。为什么?因为它能帮你隔离不同项目的依赖。你想想看,项目A需要PyTorch 1.12,项目B需要PyTorch 2.0,如果没有环境隔离,这两个版本会打架打到死。
2.2.1 安装步骤
- 下载安装包:去Anaconda官网下载对应系统的安装包。我建议选Python 3.9或3.10版本,兼容性最好。
- 安装过程:一路默认即可。但有一个关键点——记得勾选"Add Anaconda to PATH"。如果不勾,后面你每次用conda命令都要先切目录,很烦。
- 验证安装:打开终端(Windows用cmd或PowerShell),输入:
conda --version
如果输出版本号,比如 conda 23.7.4,那就说明装好了。
conda update conda 把conda本身更新到最新。我在项目中遇到过旧版conda创建环境特别慢的情况,更新后就快多了。
2.2.2 创建虚拟环境
我们为这个课程单独创建一个环境。这样做的好处是:就算你把这个环境搞坏了,也不会影响你电脑上其他的Python项目。
conda create -n power_pred python=3.9
conda activate power_pred
看到命令行前面多了 (power_pred) 这个前缀,就说明环境激活成功了。
conda activate power_pred。我曾经忘记激活环境,直接在base环境里装了一堆包,结果跟另一个项目冲突,折腾了半天才清理干净。
2.3 CUDA与cuDNN:让GPU跑起来
做功率预测,数据量一大,CPU根本扛不住。我刚开始做这个项目时,用CPU训练一个LSTM模型要跑6个小时。后来换成GPU,20分钟就搞定了。这差距,你品品。
2.3.1 检查你的显卡
首先,你得确认自己的电脑有没有NVIDIA显卡。打开终端,输入:
nvidia-smi
如果能看到显卡信息,比如 NVIDIA GeForce RTX 3060,那就恭喜你,可以继续。如果提示"命令未找到",说明你没有NVIDIA驱动,或者显卡不是NVIDIA的。
nvidia-smi 输出的第一行会显示 CUDA Version,比如 CUDA Version: 12.1。这个版本号决定了你能装哪个版本的PyTorch。
2.3.2 安装CUDA Toolkit
其实你不一定需要手动装CUDA。PyTorch的安装包会自带CUDA运行时。但如果你要装cuDNN(用来加速卷积等操作),那就得单独装。
我个人建议:直接用PyTorch自带的CUDA,省事。除非你特别需要cuDNN的优化,否则没必要折腾。
如果你确实需要手动装,步骤是:
- 去NVIDIA官网下载CUDA Toolkit,版本要跟
nvidia-smi显示的版本一致或更低。 - 安装时选"自定义安装",只勾选"CUDA"组件,别装驱动(因为你的驱动已经是最新的了)。
- 装好后,在终端输入
nvcc --version验证。
2.4 PyTorch:核心框架安装
这是最关键的一步。PyTorch的安装命令会根据你的系统、CUDA版本自动生成。我建议你去 PyTorch官网 的 Get Started 页面,选择你的配置,它会给你一条命令。
2.4.1 安装命令示例
假设你的CUDA版本是12.1,那么命令是:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
如果你没有GPU,或者想用CPU版本:
pip install torch torchvision torchaudio
2.4.2 验证安装
装完之后,一定要验证一下。打开Python交互环境:
python
>>> import torch
>>> print(torch.__version__)
>>> print(torch.cuda.is_available())
如果 torch.cuda.is_available() 返回 True,那就说明PyTorch能正常调用GPU。如果返回 False,别慌,检查一下CUDA版本是否匹配。
torch.cuda.is_available() 返回 False,但 nvidia-smi 明明能看到显卡。这通常是因为PyTorch版本和CUDA版本不匹配。解决办法:卸载PyTorch,重新安装对应版本的。
2.5 Jupyter Notebook:交互式开发环境
做深度学习实验,Jupyter Notebook几乎是标配。它能让你边写代码边看结果,特别适合数据探索和模型调试。
2.5.1 安装与启动
如果你装了Anaconda,Jupyter Notebook已经自带了。直接启动:
jupyter notebook
浏览器会自动打开一个页面,显示当前目录的文件列表。点击右上角的 New → Python 3 (ipykernel),就能新建一个Notebook。
2.5.2 配置内核
这里有个坑:默认情况下,Jupyter Notebook用的是base环境的Python。但我们的环境是 power_pred。所以需要把 power_pred 注册为内核:
conda activate power_pred
pip install ipykernel
python -m ipykernel install --user --name power_pred --display-name "Python (power_pred)"
之后在Jupyter里新建Notebook时,选择 Python (power_pred) 内核就行了。
Python 3 (ipykernel),那就是base环境,不是我们的 power_pred。选错了内核,你装的PyTorch包就找不到。
2.6 完整安装清单
为了让你心里有数,我把整个工具链的安装步骤整理成了一张表。你可以对照着检查。
| 组件 | 安装方式 | 验证命令 | 常见问题 |
|---|---|---|---|
| Anaconda | 官网下载安装包 | conda --version |
忘记勾选PATH |
| 虚拟环境 | conda create -n power_pred python=3.9 |
conda info --envs |
环境激活失败 |
| CUDA | PyTorch自带 或 官网下载 | nvidia-smi |
版本不匹配 |
| PyTorch | pip install torch ... |
torch.cuda.is_available() |
GPU不可用 |
| Jupyter | Anaconda自带 | jupyter notebook |
内核选错 |
2.7 快速验证脚本
最后,我给你准备了一个小脚本。把它复制到Jupyter Notebook里跑一下,如果全部通过,说明你的环境已经搭建好了。
import torch
import sys
print(f"Python版本: {sys.version}")
print(f"PyTorch版本: {torch.__version__}")
print(f"CUDA是否可用: {torch.cuda.is_available()}")
if torch.cuda.is_available():
print(f"GPU型号: {torch.cuda.get_device_name(0)}")
print(f"CUDA版本: {torch.version.cuda}")
else:
print("注意:当前使用CPU模式,训练速度会较慢。")
print("✅ 环境搭建完成!")
嗯,到这里,你的深度学习开发环境就全部搭好了。整个过程其实不复杂,关键就是版本匹配。你只要记住:先查PyTorch支持的CUDA版本,再决定装什么,就能避开90%的坑。
接下来,你就可以开始真正的功率预测实战了。数据、模型、训练,咱们一步步来。