Pytorch的安装

Pytorch的安装

PyTorch的安装绝对是一个不是那么简单的过程,或多或少总是会出现一些奇奇怪怪的问题,这里分享记录一下PyTorch的安装心得。

查看显卡信息

没用显卡的直接跳过,然后通过在cmd命令行中输入nvidia-smi(Linux和Win命令一样)、使用NVIDIA控制面板和使用任务管理器查看机器是否有NVIDIA的独立显卡及其型号

python
复制代码
root@master:/code # nvidia-smi
Fri Dec  8 03:09:45 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.57.02    Driver Version: 470.57.02    CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla V100S-PCI...  Off  | 00000000:8B:00.0 Off |                    0 |
| N/A   35C    P0    27W / 250W |      0MiB / 32510MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

CUDA兼容性

参考:CUDA兼容性

NVIDIA CUDA工具包使开发人员能够为台式计算机、企业和数据中心乃至超大规模企业构建 NVIDIA GPU 加速的计算应用程序。它由 CUDA 编译器工具链组成,其中包括 CUDA 运行时 (cudart) 以及各种 CUDA 库和工具。要构建应用程序,开发人员只需安装 CUDA 工具包和链接所需的必要库。

为了运行 CUDA 应用程序,系统应具有支持 CUDA 的 GPU 和与用于构建应用程序本身的 CUDA 工具包兼容的 NVIDIA 显示驱动程序。如果应用程序依赖于库的动态链接,那么系统也应该具有此类库的正确版本。

CUDA 的组件: Pytorch的安装_第1张图片

CUDA软件主要包括三部分:

复制代码
CUDA Toolkit : 库文件、运行环境 和 开发工具, 主要是面向开发者 CUDA编译环境

CUDA Driver: 用户驱动组建,用于运行 CUDA 程序,可以理解为 CUDA运行环境

Nvidia GPU 驱动 : 显卡核心驱动,就是 硬件驱动

CUDA版本与驱动版本关系如下:

参考:CUDA发布说明

CUDA Toolkit Linux x86_64 Driver Version Windows x86_64 Driver Version
CUDA 12.3 Update 1 >=545.23.08 >=546.12
CUDA 12.3 GA >=545.23.06 >=545.84
CUDA 12.2 Update 2 >=535.104.05 >=537.13
CUDA 12.2 Update 1 >=535.86.09 >=536.67
CUDA 12.2 GA >=535.54.03 >=536.25
CUDA 12.1 Update 1 >=530.30.02 >=531.14
CUDA 12.1 GA >=530.30.02 >=531.14
CUDA 12.0 Update 1 >=525.85.12 >=528.33
CUDA 12.0 GA >=525.60.13 >=527.41
CUDA 11.8 GA >=520.61.05 >=520.06
CUDA 11.7 Update 1 >=515.48.07 >=516.31
CUDA 11.7 GA >=515.43.04 >=516.01
CUDA 11.6 Update 2 >=510.47.03 >=511.65
CUDA 11.6 Update 1 >=510.47.03 >=511.65
CUDA 11.6 GA >=510.39.01 >=511.23
CUDA 11.5 Update 2 >=495.29.05 >=496.13
CUDA 11.5 Update 1 >=495.29.05 >=496.13
CUDA 11.5 GA >=495.29.05 >=496.04
CUDA 11.4 Update 4 >=470.82.01 >=472.50
CUDA 11.4 Update 3 >=470.82.01 >=472.50
CUDA 11.4 Update 2 >=470.57.02 >=471.41
CUDA 11.4 Update 1 >=470.57.02 >=471.41
CUDA 11.4.0 GA >=470.42.01 >=471.11
CUDA 11.3.1 Update 1 >=465.19.01 >=465.89
CUDA 11.3.0 GA >=465.19.01 >=465.89
CUDA 11.2.2 Update 2 >=460.32.03 >=461.33
CUDA 11.2.1 Update 1 >=460.32.03 >=461.09
CUDA 11.2.0 GA >=460.27.03 >=460.82
CUDA 11.1.1 Update 1 >=455.32 >=456.81
CUDA 11.1 GA >=455.23 >=456.38
CUDA 11.0.3 Update 1 >= 450.51.06 >= 451.82
CUDA 11.0.2 GA >= 450.51.05 >= 451.48
CUDA 11.0.1 RC >= 450.36.06 >= 451.22
CUDA 10.2.89 >= 440.33 >= 441.22
CUDA 10.1 (10.1.105 general release, and updates) >= 418.39 >= 418.96
CUDA 10.0.130 >= 410.48 >= 411.31
CUDA 9.2 (9.2.148 Update 1) >= 396.37 >= 398.26
CUDA 9.2 (9.2.88) >= 396.26 >= 397.44
CUDA 9.1 (9.1.85) >= 390.46 >= 391.29
CUDA 9.0 (9.0.76) >= 384.81 >= 385.54
CUDA 8.0 (8.0.61 GA2) >= 375.26 >= 376.51
CUDA 8.0 (8.0.44) >= 367.48 >= 369.30
CUDA 7.5 (7.5.16) >= 352.31 >= 353.66
CUDA 7.0 (7.0.28) >= 346.46 >= 347.62

一定要保证PyTorch与cuda toolkit的版本适配,参考:PyTorch版本要求

总结概括:Nvidia GPU驱动必须大于CUDA Toolkit要求的Nvida GPU驱动版本,或者PyTorch版本要求的CUDA版本对应驱动与Nvidia GPU驱动符合匹配要求

安装说明

访问PyTorch官网

可以选择本地开始(Start Locally),云开发(Cloud Partners),以前的Pytorch版本(Previous PyTorch Versions),移动端开发(Mobile),在此处选择本地安装

Pytorch的安装_第2张图片 Windows下使用PIP方式安装,计算平台使用CPU,安装方式如下:

python
复制代码
pip3 install torch torchvision torchaudio

Pytorch的安装_第3张图片 Windows下使用conda方式安装,计算平台使用cuda,安装方式如下:

python
复制代码
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

Pytorch的安装_第4张图片 更多安装方式参考:https://pytorch.org/get-started/locally/

注意:

复制代码
Stable代表的是稳定版本,Preview代表的是先行版本

结合电脑是否有显卡,选择CPU版本还是CUDA版本,CUDA版本需要拥有独显且是NVIDIA的GPU

一定要保持PyTorch和cudatoolkit的版本适配

开始安装

在上面使用nvidia-smi命令查看显卡信息,得出驱动程序版本是470.57.02,显卡驱动支持的CUDA版本是11.4,参考上面CUDA版本与GPU驱动程序版之间的关系列表,得出:

复制代码
 1.若使用当前机器上GPU驱动,不升级,则只能从PyTorch官网查询与当前GPU所使用的CUDA相匹配的PyTorch版本

 2.若想使用较新版本的PyTorch,其使用的CUDA版本以及要求的GPU驱动版本必定较高,此时需要升级机器是的GPU驱动

 3.一定保证PyTorch版本要求使用的CUDA版本对应的驱动与GPU驱动版本相匹配

这里没有PyTorch版本特殊要求,使用最便捷的方式,不对当前GPU驱动进行升级,访问PyTorch版本记录查询匹配的PyTorch版本进行安装。

因为该机器可以支持最高CUDA版本为11.4,且官方版本记录中没有找到CUDA11.4的支持,驱动可以向下兼容,所以小于等于11.4的CUDA版本理论来说都可以安装,这里选择CUDA 11.3

具体安装命令如下:

python
复制代码
# CUDA 11.3
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch

注意:

根据自身网络情况调整下载地址

python
复制代码
# 从官网下载
-c pytorch

# 单独指定一个镜像下载
–c 镜像地址

检验是否安装成功

python
复制代码
import torch

if __name__ == '__main__':
    if torch.cuda.is_available():
        print("GPU是否可用:", torch.cuda.is_available())  # 查看GPU是否可用
        print("GPU数量:", torch.cuda.device_count())  # 查看GPU数量
        print("torch方法查看CUDA版本:", torch.version.cuda)  # torch方法查看CUDA版本
        print("GPU索引号:", torch.cuda.current_device())  # 查看GPU索引号
        print("GPU名称:", torch.cuda.get_device_name(0))  # 根据索引号得到GPU名称
    else:
        print("GPU不可用")

常见异常

各种相关依赖、库文件安装完毕后,准备启动项目,出现异常:

python
复制代码
CUDA initialization: The NVIDIA driver on your system is too old (found version 11040). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver. (Triggered internally at ../c10/cuda/CUDAFunctions.cpp:108.)

原因:

系统上的NVIDIA驱动程序版本过旧,或者说NVIDIA驱动程序和CUDA驱动程序与所安装的PyTorch版本存在兼容性

解决办法:

1.下载并安装新版本的GPU驱动程序:http://www.nvidia.com/Download/index.aspx

2.安装一个与CUDA 驱动程序版本兼容的PyTorch版本:https://pytorch.org

在更新了驱动程序或安装了兼容的 PyTorch 版本后,这个问题应该会得到解决。

安装CUDA

NVIDIA GPU驱动程序已经包含了基本的CUDA支持,但安装额外的CUDA工具包可以提供更多功能和开发工具,能够更好地编写、调试和优化CUDA程序。这取决于具体需求和开发环境。

访问https://developer.nvidia.com/cuda-downloads下载对应版本的CUDA Pytorch的安装_第5张图片 选择需要的版本进行下载 Pytorch的安装_第6张图片 默认情况下是自动添加到环境变量中,变量名:CUDA_PATH 变量值:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8

验证查看CUDA的版本信息

python
复制代码
C:\Users\Admin>nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0

最后

为了帮助大家更好的学习人工智能,这里给大家准备了一份人工智能入门/进阶学习资料,里面的内容都是适合学习的笔记和资料,不懂编程也能听懂、看懂,所有资料朋友们如果有需要全套人工智能入门+进阶学习资源包,可以在评论区或扫.码领取哦)~

在线教程

  • 麻省理工学院人工智能视频教程 – 麻省理工人工智能课程
  • 人工智能入门 – 人工智能基础学习。Peter Norvig举办的课程
  • EdX 人工智能 – 此课程讲授人工智能计算机系统设计的基本概念和技术。
  • 人工智能中的计划 – 计划是人工智能系统的基础部分之一。在这个课程中,你将会学习到让机器人执行一系列动作所需要的基本算法。
  • 机器人人工智能 – 这个课程将会教授你实现人工智能的基本方法,包括:概率推算,计划和搜索,本地化,跟踪和控制,全部都是围绕有关机器人设计。
  • 机器学习 – 有指导和无指导情况下的基本机器学习算法
  • 机器学习中的神经网络 – 智能神经网络上的算法和实践经验
  • 斯坦福统计学习

有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取
Pytorch的安装_第7张图片
请添加图片描述

人工智能书籍

  • OpenCV(中文版).(布拉德斯基等)
  • OpenCV+3计算机视觉++Python语言实现+第二版
  • OpenCV3编程入门 毛星云编著
  • 数字图像处理_第三版
  • 人工智能:一种现代的方法
  • 深度学习面试宝典
  • 深度学习之PyTorch物体检测实战
  • 吴恩达DeepLearning.ai中文版笔记
  • 计算机视觉中的多视图几何
  • PyTorch-官方推荐教程-英文版
  • 《神经网络与深度学习》(邱锡鹏-20191121)

  • 在这里插入图片描述
    有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取
    Pytorch的安装_第8张图片

第一阶段:零基础入门(3-6个月)

新手应首先通过少而精的学习,看到全景图,建立大局观。 通过完成小实验,建立信心,才能避免“从入门到放弃”的尴尬。因此,第一阶段只推荐4本最必要的书(而且这些书到了第二、三阶段也能继续用),入门以后,在后续学习中再“哪里不会补哪里”即可。

第二阶段:基础进阶(3-6个月)

熟读《机器学习算法的数学解析与Python实现》并动手实践后,你已经对机器学习有了基本的了解,不再是小白了。这时可以开始触类旁通,学习热门技术,加强实践水平。在深入学习的同时,也可以探索自己感兴趣的方向,为求职面试打好基础。

第三阶段:工作应用

这一阶段你已经不再需要引导,只需要一些推荐书目。如果你从入门时就确认了未来的工作方向,可以在第二阶段就提前阅读相关入门书籍(对应“商业落地五大方向”中的前两本),然后再“哪里不会补哪里”。

在这里插入图片描述
有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取
Pytorch的安装_第9张图片

你可能感兴趣的:(pytorch,人工智能,python,笔记,深度学习,机器学习)