人工智能学习环境配置
文章目录
- Python、CUDA、cuDNN、PyTorch 和 Anaconda 的介绍
- Python
- CUDA
- cuDNN
- PyTorch
- Anaconda
- 联系
- 安装
- n卡驱动更新
- 安装 Anaconda
- Anaconda配置镜像源
- CUDA安装
- Cudnn安装
- Anaconda初始化
- 创建虚拟环境
- 安装 PyTorch
- 验证安装
- 可能的错误
- SSL错误
Python、CUDA、cuDNN、PyTorch 和 Anaconda 的介绍
在当今的深度学习和数据科学领域,Python、CUDA、cuDNN、PyTorch 和 Anaconda 是不可或缺的工具。
Python
- Python 是一种广泛使用的高级编程语言,因其简洁的语法和强大的库支持而受到数据科学家和机器学习工程师的青睐。Python 提供了丰富的库,比如 NumPy、Pandas 和 Matplotlib,使得数据处理和可视化变得更加简单。此外,Python 还与许多深度学习框架兼容,特别是 PyTorch 和 TensorFlow。
CUDA
- CUDA(Compute Unified Device Architecture)是 NVIDIA 提供的一种并行计算平台和编程模型,允许开发者利用 NVIDIA 的 GPU 进行通用计算。通过 CUDA,程序员可以编写可以在 GPU 上运行的代码,从而显著加速计算任务。对于深度学习来说,使用 CUDA 可以大幅提高模型训练和推理的速度。
cuDNN
- cuDNN(NVIDIA CUDA Deep Neural Network library)是一个用于深度神经网络的 GPU 加速库,它依赖于 CUDA 提供的并行计算能力。cuDNN 提供了一系列优化的算法,可以用来实现卷积、池化、归一化等操作,帮助开发者在使用深度学习框架时提升性能。
PyTorch
- PyTorch 是一个开源的深度学习框架,由 Facebook 开发,广泛用于学术研究和工业应用。PyTorch 支持动态计算图,使得模型的构建和调试更加灵活和直观。它天然与 CUDA 和 cuDNN 集成,能够充分利用 GPU 的计算能力,加速深度学习任务。
Anaconda
- Anaconda 是一个用于科学计算的开源包管理和环境管理工具,特别适合数据科学和机器学习项目。它可以帮助用户轻松管理 Python 版本和依赖库,创建虚拟环境。通过 Anaconda,用户可以快速安装 PyTorch 及其依赖,并管理不同项目的环境。
联系
- Python 是所有这些工具的基础语言,用户使用 Python 编写深度学习模型。
- Anaconda 提供了一个简化的环境管理和包安装工具,使得用户可以方便地安装和配置 Python 及其相关库,包括 PyTorch、CUDA 和 cuDNN。
- CUDA 提供了在 GPU 上并行计算的能力,PyTorch 可以利用 CUDA 来加速模型训练。
- cuDNN 是专为深度学习优化的库,PyTorch 在底层使用 cuDNN 来执行高效的神经网络操作。
安装
n卡驱动更新
- n卡驱动更新
安装 Anaconda
- 下载并安装Anaconda Anaconda 清华镜像下载。
- 选择最新和系统兼容的版本
Anaconda配置镜像源
- anaconda镜像源
#中科大
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
#设置搜索时显示通道地址
conda config --set show_channel_urls yes
#清华
conda config --add channels https:/mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
#设置搜索时显示通道地址
conda config --set show_channel_urls yes
CUDA安装
- 在终端使用
nvidia-smi
检查显卡支持的最高cuda版本,例如下图中3060驱动最高值支持CUDA为12.8
C:\Users\kongyue>nvidia-smi
Wed Feb 19 15:11:29 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 572.16 Driver Version: 572.16 CUDA Version: 12.8 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Driver-Model | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 3060 WDDM | 00000000:04:00.0 On | N/A |
| 0% 44C P8 17W / 170W | 1043MiB / 12288MiB | 11% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
- 打开cuda版本列表,目前最新的版本为12.8,建议使用稳定版本12.6
- 正常点击安装包,进行安装即可,如果出现系统检查错误,请重启电脑,再次安装。
- 在终端输入
nvcc -V
检验cuda安装是否成功。
C:\Users\kongyue>nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Wed_Oct_30_01:18:48_Pacific_Daylight_Time_2024
Cuda compilation tools, release 12.6, V12.6.85
Build cuda_12.6.r12.6/compiler.35059454_0
Cudnn安装
- 查看cudnn和cuda的版本兼容文档,可以看到cuDNN9.7.1支持较多本,还需要注意Nvidia驱动版本,建议更新到最新本版
- cuDNN历史版本
- 下载cuDNN,如9.7.1版本https://developer.nvidia.com/cudnn-9-7-1-download-archive
- 可视化安装cuDNN后,在终端执行命令检验cudNN是否安装成功。
# 进入`C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.6\extras\demo_suite`
cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.6\extras\demo_suite
# 依次执行测试程序
bandwidthTest.exe
deviceQuery.exe
# bandwidthTest.exe 测试结果
Result = PASS
NOTE: The CUDA Samples are not meant for performance measurements. Results may vary when GPU Boost is enabled.
# deviceQuery.exe 测试结果
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 12.8, CUDA Runtime Version = 12.6, NumDevs = 1, Device0 = NVIDIA GeForce RTX 3060
Result = PASS
Anaconda初始化
- 使用管理员身份运行终端,输入以下命令,防止出现’Run ‘conda init’ before ‘conda activate’'的错误提示
conda init
创建虚拟环境
conda create -n myenv python=3.9
conda activate myenv
安装 PyTorch
- 安装稳定版本的CUDA12.4(GPU版本)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124 -i https://pypi.tuna.tsinghua.edu.cn/simple
- 如果安装出现问题,卸载命令如下:
#卸载当前pytorch
pip uninstall torch torchvision torchaudio
# 清除掉对应的pip缓存
pip cache purge
验证安装
- 通过以下 Python 代码验证 PyTorch 是否正确安装并能够使用 GPU:
import torch
# 检查 CUDA 是否可用
print(torch.cuda.is_available())
if torch.cuda.is_available():
# 获取可用的 CUDA 设备数量
print("可用的 CUDA 设备数量:", torch.cuda.device_count())
# 获取当前使用的 CUDA 设备索引
print("当前 CUDA 设备索引:", torch.cuda.current_device())
# 获取指定索引 CUDA 设备的名称
print("当前 CUDA 设备名称:", torch.cuda.get_device_name(0))
# 创建一个张量并将其移动到 CUDA 设备上
x = torch.tensor([1.0, 2.0]).cuda()
y = torch.tensor([3.0, 4.0]).cuda()
z = x + y
print("在 CUDA 上计算的结果:", z)
else:
print("CUDA 不可用")
可能的错误
SSL错误
- 错误信息如下:
CondaSSLError: Encountered an SSL error. Most likely a certificate verification issue.
- 解决方法:关闭魔法上网工具即可