2、环境搭建与工具链:Anaconda、PyTorch、Transformers库安装、GPU环境配置与验证
说实话,每次开新课,我最怕的就是环境搭建这一块。很多同学兴致勃勃地来学深度学习,结果卡在装软件这一步,一卡就是一整天。我自己当年也踩过不少坑,所以这一章我尽量把那些容易出问题的地方都给你点出来。
咱们的目标很明确:把 Anaconda、PyTorch、Transformers 库装好,再把 GPU 环境配通。整个过程大概 30 分钟到 1 小时,看你的网络状况。
2.1 Anaconda:Python 的「瑞士军刀」
Anaconda 是什么?说白了就是一个 Python 发行版,帮你把 Python 解释器、常用的科学计算库、包管理器都打包好了。你不需要自己一个个去装 numpy、pandas、matplotlib 这些,Anaconda 一次性搞定。
我个人习惯用 Miniconda,它是 Anaconda 的轻量版,只保留核心功能。如果你硬盘空间够,直接上 Anaconda 也行,省心。
安装步骤
- 去官网下载对应系统的安装包(Windows / macOS / Linux)
- 双击安装,一路默认选项就行
- 安装完成后,打开终端(Windows 用 Anaconda Prompt)
- 输入
conda --version,看到版本号就说明装好了
创建虚拟环境
这是 Anaconda 最实用的功能。每个项目用独立的环境,互不干扰。我在项目中遇到过好几次因为依赖冲突导致代码跑不起来的情况,后来养成了每个项目建一个新环境的习惯。
# 创建一个名为 dl_course 的环境,Python 版本 3.9
conda create -n dl_course python=3.9
# 激活环境
conda activate dl_course
# 退出环境
conda deactivate
嗯,这里要注意:激活环境后,终端前面会出现 (dl_course) 这样的提示,说明你已经在虚拟环境里了。后面所有的安装操作,都要在这个环境下进行。
2.2 PyTorch:深度学习框架的选择
PyTorch 现在几乎是学术界和工业界的标配了。为什么选它?两个原因:一是动态计算图,调试起来特别方便;二是社区活跃,遇到问题基本都能搜到答案。
安装 PyTorch 之前,先确认一件事:你的电脑有没有 NVIDIA 显卡?
- 有 NVIDIA 显卡:装 CUDA 版本的 PyTorch,训练速度快 10 倍以上
- 没有显卡 / 是 AMD 显卡:装 CPU 版本,也能跑,就是慢点
安装命令
去 PyTorch 官网(pytorch.org),选择你的配置,它会自动生成安装命令。我直接给你最常用的两个版本:
# CPU 版本(通用)
pip install torch torchvision torchaudio
# CUDA 11.8 版本(推荐,需要 NVIDIA 显卡)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
验证安装
装完之后,跑一下这段代码:
import torch
print(torch.__version__) # 查看版本
print(torch.cuda.is_available()) # 检查 CUDA 是否可用
如果 torch.cuda.is_available() 返回 True,恭喜你,GPU 环境配好了。返回 False 也别慌,后面我会讲怎么排查。
2.3 Transformers 库:拥抱 Hugging Face
Hugging Face 的 Transformers 库,可以说是 NLP 领域的「乐高积木」。你想用 BERT、GPT、T5 这些模型?一行代码就能加载。我自己做项目时,80% 的时间都在用这个库,省去了重复造轮子的功夫。
安装
pip install transformers datasets accelerate
这三个包各司其职:
- transformers:模型和 tokenizer 的核心库
- datasets:方便加载和处理数据集
- accelerate:多 GPU 训练和混合精度训练的加速工具
快速测试
from transformers import pipeline
# 加载情感分析模型
classifier = pipeline("sentiment-analysis")
result = classifier("I love this course!")
print(result)
# 输出:[{'label': 'POSITIVE', 'score': 0.9998}]
看到这个输出,说明 Transformers 库已经能正常工作了。第一次运行时会自动下载模型,大概几百 MB,耐心等一会儿。
export HF_ENDPOINT=https://hf-mirror.com(Linux/Mac)或者设置环境变量 HF_ENDPOINT=https://hf-mirror.com(Windows)。
2.4 GPU 环境配置与验证
GPU 是深度学习的「发动机」。没有 GPU,训练一个 BERT 模型可能要几天;有了 GPU,几小时就搞定。但 GPU 环境的配置也是最容易出问题的环节。
第一步:检查显卡驱动
在终端输入:
nvidia-smi
如果能看到显卡信息、驱动版本、CUDA 版本,说明驱动没问题。如果提示「命令未找到」,你需要去 NVIDIA 官网下载驱动。
第二步:验证 PyTorch 的 GPU 支持
import torch
# 检查 CUDA 是否可用
print(torch.cuda.is_available()) # True
# 查看 GPU 数量
print(torch.cuda.device_count()) # 1
# 查看 GPU 名称
print(torch.cuda.get_device_name(0)) # NVIDIA GeForce RTX 3060
第三步:跑一个简单的 GPU 计算测试
import torch
import time
# 创建一个大型张量
size = 10000
a = torch.randn(size, size)
b = torch.randn(size, size)
# CPU 计算
start = time.time()
c = a @ b
print(f"CPU 耗时: {time.time() - start:.2f} 秒")
# GPU 计算
a_gpu = a.cuda()
b_gpu = b.cuda()
start = time.time()
c_gpu = a_gpu @ b_gpu
print(f"GPU 耗时: {time.time() - start:.2f} 秒")
你想想看,同样的矩阵乘法,GPU 比 CPU 快几十倍甚至上百倍。我第一次看到这个差距时,真的被震撼到了。
常见问题排查
| 问题 | 原因 | 解决方法 |
|---|---|---|
| torch.cuda.is_available() 返回 False | PyTorch 版本与 CUDA 驱动不匹配 | 卸载 PyTorch,重新安装对应 CUDA 版本的 PyTorch |
| nvidia-smi 找不到 | 显卡驱动未安装 | 去 NVIDIA 官网下载并安装驱动 |
| 显存不足 | 模型太大或 batch size 太大 | 减小 batch size,或使用梯度累积 |
| 安装速度慢 | 默认源在国外 | 使用国内镜像源:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple |
2.5 完整环境验证脚本
最后,我给你一个完整的验证脚本。把它保存为 check_env.py,跑一遍就能知道你的环境是否配好了。
import sys
import torch
import transformers
print(f"Python 版本: {sys.version}")
print(f"PyTorch 版本: {torch.__version__}")
print(f"Transformers 版本: {transformers.__version__}")
print(f"CUDA 是否可用: {torch.cuda.is_available()}")
if torch.cuda.is_available():
print(f"GPU 数量: {torch.cuda.device_count()}")
print(f"当前 GPU: {torch.cuda.get_device_name(0)}")
print(f"CUDA 版本: {torch.version.cuda}")
else:
print("注意:当前使用 CPU 模式,训练速度会较慢")
print("\n环境检查完成!")
如果所有信息都正确显示,恭喜你,环境搭建成功了!接下来我们就可以正式开始文本分类与情感分析的实战了。