深度学习 | pytorch + torchvision + python 版本对应及环境安装

深度学习 | pytorch + torchvision + python 版本对应及环境安装
Hi,大家好,我是半亩花海。要让一个基于 torch 框架开发的深度学习模型正确运行起来,配置环境是个重要的问题,本文介绍了 pytorchtorchvision、torchaudio 及 python 的对应版本以及环境安装的相关流程。

目录

一、版本对应

二、安装命令(pip)

1. 版本

(1)v2.5.1 ~ v2.0.0

(2)v1.13.1 ~ v1.11.0

(3)v1.10.1 ~ v1.7.0

2. 安装全过程

(1)选择版本

(2)安装结果

参考文章


一、版本对应

下表来自 pytorch 的 github 官方文档:pytorch/vision: Datasets, Transforms and Models specific to Computer Vision

pytorch 安装官网Start Locally | PyTorchpytorch 之前版本的安装命令Previous PyTorch Versions | PyTorchtorch、torchvision 等相关库download.pytorch.org/whl/torch_stable.html

其中,命令中 "-c pytorch" 表示官方源,自己换源可以去掉。
torch 版本torchvision 版本torchaudio 版本支持的 Python 版本(示例)Cuda 版本
2.5.10.20.12.5.1>=3.9, <3.13(3.12)[9/10/11/12]12.4/12.1/11.8
2.5.00.20.02.5.0>=3.9, <3.13(3.12)12.4/12.1/11.8
2.4.10.19.12.4.1>=3.8, <3.13(3.12)[8/9/10/11/12]12.4/12.1/11.8
2.4.00.19.02.4.0>=3.8, <3.13(3.12)12.4/12.1/11.8
2.3.10.18.12.3.1>=3.8, <3.13(3.12)8/9/10/11/1212.1/11.8
2.3.00.18.02.3.0>=3.8, <3.13(3.12)12.1/11.8
2.2.20.17.22.2.2>=3.8, <3.12 [8/9/10/11]12.1/11.8
2.2.10.17.12.2.1>=3.8, <3.1212.1/11.8
2.2.00.17.02.2.0>=3.8, <3.1212.1/11.8
2.1.20.16.22.1.2>=3.8, <3.12(3.10)8/9/10/1112.1/11.8
2.1.10.16.12.1.1>=3.8, <3.12(3.10)12.1/11.8
2.1.00.16.02.1.0>=3.8, <3.12(3.10)12.1/11.8
2.0.00.15.02.0.0>=3.8, <3.12(3.8)[8/9/10/11]11.8/11.7
1.13.10.14.10.13.1>=3.7.2, <=3.10(3.8)[7/8/9/10]11.7/11.6
1.13.00.14.00.13.0>=3.7.2, <=3.10(3.8)11.7/11.6
1.12.10.13.11.12.1>=3.7, <=3.10(3.8)[7/8/9/10]11.6/11.3/10.2
1.12.00.13.01.12.0>=3.7, <=3.10(3.8)11.6/11.3/10.2
1.11.00.12.01.11.0>=3.7, <=3.10(3.8)11.3/10.2
1.10.10.11.20.10.1>=3.6, <=3.9(3.8)[6/7/8/9]11.3/10.2
1.10.00.11.00.10.0>=3.6, <=3.9(3.8)11.3/10.2
1.9.10.10.10.9.1>=3.6, <=3.9(3.8)[6/7/8/9]11.1/10.2
1.9.00.10.00.9.0>=3.6, <=3.9(3.8)11.1/10.2
1.8.10.9.10.8.1>=3.6, <=3.9(3.8)[6/7/8/9]11.1/10.2
1.8.00.9.00.8.0>=3.6, <=3.9(3.8)11.1/10.2
1.7.10.8.20.7.2>=3.6(3.6)11.0/10.2/10.1
1.7.00.8.00.7.0>=3.6(3.6)11.0/10.2/10.1

二、安装命令(pip)

1. 版本

(1)v2.5.1 ~ v2.0.0

# v2.5.1 # CUDA 12.4 pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cu124 -i https://pypi.tuna.tsinghua.edu.cn/simple/ # CPU only pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cpu -i https://pypi.tuna.tsinghua.edu.cn/simple/

(2)v1.13.1 ~ v1.11.0

# v1.13.1 # CUDA 11.7 pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117 -i https://pypi.tuna.tsinghua.edu.cn/simple/ # CPU only pip install torch==1.13.1+cpu torchvision==0.14.1+cpu torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cpu -i https://pypi.tuna.tsinghua.edu.cn/simple/

(3)v1.10.1 ~ v1.7.0

# v1.10.1 # CUDA 10.2 pip install torch==1.10.1+cu102 torchvision==0.11.2+cu102 torchaudio==0.10.1 -f https://download.pytorch.org/whl/cu102/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple/ # CPU only pip install torch==1.10.1+cpu torchvision==0.11.2+cpu torchaudio==0.10.1 -f https://download.pytorch.org/whl/cpu/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple/ 

2. 安装全过程

(1)选择版本

torch 版本torchvision 版本torchaudio 版本支持的 Python 版本(示例)Cuda 版本
2.1.00.16.02.1.0>=3.8, <3.12(3.10)12.1/11.8

这里选择的框架和环境如下:torch2.1.0 | torchvision0.16.0 | torchaudio2.1.0 | python3.10 | Cuda12.1,若需要将创建的虚拟环境添加到 Jupyter Lab / Jupyter Notebook 中使用,则需要第 3-6 步,否则不用。

打开 WIN + R,输入 “cmd”,进入命令行窗口,其他步骤如下:

# 1. Anaconda 创建虚拟环境 conda create -n torch python=3.10 # 2. 激活并进入虚拟环境 activate torch # 3. 安装 ipykernel pip install ipykernel -i https://pypi.tuna.tsinghua.edu.cn/simple/ # 4. 安装ipykernel,将虚拟环境加入 jupyter 内核中 python -m ipykernel install --name torch --display-name torch # 5. 检查新虚拟环境是否成功加入内核 jupyter kernelspec list # 6. 从指定文件夹里进入 jupyter jupyter lab # 7. 安装 torch 等软件包 pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --index-url https://download.pytorch.org/whl/cpu -i https://pypi.tuna.tsinghua.edu.cn/simple/
注意:此时,因为 Numpy 2.x 等其他的相关库与 Pytorch 2.1.0 的不兼容(以 Numpy 库为例),所以需要将 numpy 库的版本降级至1.x.x(如 1.24.x1.23.x 版本)才能与 Pytorch 2.1.0 是兼容,从而适配以上版本。具体示例步骤如下:pip uninstall numpypip install numpy==1.24.3
注意:若在安装途中不小心关闭了命令窗或者发现没有关闭梯子,可先将 Anaconda 的环境中删除未完全安装好的虚拟环境(如在  E:\Anaconda\envs\torch 此目录下),即可重新进行上述安装步骤。

(2)安装结果

3. 命令相关解释

(1)-i / --index-url

第一条命令:pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cpu -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • --index-url https://download.pytorch.org/whl/cpu:这个参数指定了主要的包索引源 URL,即使用 https://download.pytorch.org/whl/cpu 作为 PyTorch 相关库的包来源。这是 PyTorch 官方的 CPU 版本的二进制文件源。
  • -i https://pypi.tuna.tsinghua.edu.cn/simple/:这个参数指定了镜像源,指向清华大学的 PyPI 镜像源,以加速从 PyPI 安装包的速度。
  • 当同时使用 --index-url-i 时,--index-url 会设置 主索引源(比如官方 PyTorch 或其他自定义源),而 -i 用来指定 一个额外的索引源 / 备用源(如清华镜像)。此时,pip 会先从 --index-url 指定的源查找包,如果找不到,才会去 -i 指定的额外源查找。

(2)--extra-index-url

第二条命令:pip install torch==1.13.1+cpu torchvision==0.14.1+cpu torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cpu -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • --extra-index-url https://download.pytorch.org/whl/cpu:这个参数指定了额外的索引源 URL。与 --index-url 不同,--extra-index-url 只是添加额外的索引源,而不是替换原有源。此处指定的是 PyTorch 官方 CPU 版本的源。
  • -i https://pypi.tuna.tsinghua.edu.cn/simple/:同样指定了 PyPI 镜像源,指向清华大学的 PyPI 镜像源。
第三条命令:pip install torch==1.10.1+cpu torchvision==0.11.2+cpu torchaudio==0.10.1 -f https://download.pytorch.org/whl/cpu/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • -f https://download.pytorch.org/whl/cpu/torch_stable.html:这个参数用于指定一个包的 URL 文件列表(一个 .html.xml 文件),其中列出了稳定版本的 PyTorch 安装包。
  • -i https://pypi.tuna.tsinghua.edu.cn/simple/:同样指定了 PyPI 镜像源,指向清华大学的 PyPI 镜像源。

参考文章

[1] pytorch,torchvision与python版本对应关系及安装命令_pytorch python版本-ZEEKLOG博客

[2] Python安装torch(含torch和torchvision对应版本)-ZEEKLOG博客

Read more

Mac 扩展坞(Dock)总是跑到副屏?一个非常有效的解决方法记录

Mac 扩展坞(Dock)总是跑到副屏?一个非常有效的解决方法记录

在使用 Mac + 外接显示器(扩展坞 / 副屏) 的过程中,很多人都会遇到一个让人非常抓狂的问题:Dock(程序坞)莫名其妙跑到副屏上了,而且怎么挪都不太对。 尤其是当你把 主屏 用来工作、而副屏只是辅助显示时,这种行为会极大影响效率。 最近我也遇到了这个问题,为了找到原因和解决方法,特地去检索了一下资料,发现有用户提出了一种看似很简单、但实际非常有效的方法。 亲测之后,确实可行,因此记录下来,供以后快速参考。 一、问题现象 * 典型表现包括: * Dock 出现在 副屏底部,而不是主屏 * 系统设置里已经选好了“主显示器”,但 Dock 依旧不听话 * 拖动鼠标、调整排列,效果不可控 * 本质原因在于:👉 macOS 会根据“鼠标最近触发 Dock 的屏幕”来动态决定 Dock 显示在哪一块屏幕上。也就是说,

By Ne0inhk
【Linux】 麒麟服务器V10 SP3安装配置Redis操作总结(包管理方式)

【Linux】 麒麟服务器V10 SP3安装配置Redis操作总结(包管理方式)

文章目录 * 前言 * 一、Redis安装与准备工作 * 1.1 通过包管理查找Redis * 1.2 如果官方源里没有Redis,添加第三方软件源 * 1.3 安装Redis * 二、Redis配置 * 2.1 绑定地址 * 2.2 端口 * 2.3 密码设置 * 2.4 运行内存限制 * 2.5 持久化——RDB与AOF * 2.6 后台运行 * 三、操作指令 * 3.1 启动Redis * 3.2 停止Redis * 3.3 重启Redis * 3.4 设置开机自启 * 3.

By Ne0inhk
【Linux网络系列】:打破 HTTP 明文诅咒,在Linux 下用 C++ 手搓 HTTPS 服务器全过程!(附实现源码)

【Linux网络系列】:打破 HTTP 明文诅咒,在Linux 下用 C++ 手搓 HTTPS 服务器全过程!(附实现源码)

🔥 本文专栏:Linux网络 🌸作者主页:努力努力再努力wz 💪 今日博客励志语录:成人的世界里,情绪是最廉价的成本。你可以崩溃,但请记得设置闹钟。哭完之后,账单还在,生活还得继续,最能治愈焦虑的永远不是鸡汤,而是账户里的余额和手里的专业技能。 ★★★ 本文前置知识: Http 引入 在之前的讲解中,我们探讨了HTTP 协议并实现了一个基于HTTP 的 Web 服务器。然而,HTTP存在一个根本性的安全缺陷,即明文传输。我们知道,在客户端(通常为浏览器)与服务端通信的大多数场景中,客户端会向服务端发送GET 或POST 请求。这两种请求均可用于提交数据。对于GET 请求,其提交的表单数据以查询参数的形式附加在请求行中的 URL 之后,表现为键值对。由于 URL 本身存在长度限制,GET 请求只能传递较简单的表单数据,无法传输体积较大的内容(例如文件)。此外,提交后,浏览器地址栏会完整显示

By Ne0inhk
Flutter 三方库 easy_money_formatter 的鸿蒙化适配指南 - 实现具备多种货币符号与千分位自动处理的金额格式化、支持端侧金融应用的动态金额渲染实战

Flutter 三方库 easy_money_formatter 的鸿蒙化适配指南 - 实现具备多种货币符号与千分位自动处理的金额格式化、支持端侧金融应用的动态金额渲染实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 easy_money_formatter 的鸿蒙化适配指南 - 实现具备多种货币符号与千分位自动处理的金额格式化、支持端侧金融应用的动态金额渲染实战 前言 在进行 Flutter for OpenHarmony 的电子钱包、电商支付或个人理财应用开发时,如何优雅、规范地展示金额数值?简单的 toStringAsFixed 无法处理千分位分割以及不同国家/地区的货币符号排列逻辑。easy_money_formatter 是一款轻量级、功能专注的金额处理库。本文将介绍如何在鸿蒙端快速构建符合金融规范的金额展示层。 一、原直观解析 / 概念介绍 1.1 基础原理 该库建立在“格式化掩码(Formatting Mask)”逻辑之上。它接收一段原始的数值(Double 或 String),根据预设的配置(如符号位置、

By Ne0inhk