2023最新pytorch安装教程,简单易懂,面向初学者(Anaconda+GPU)

一、前言

目前是2023.1.27,鉴于本人安装过程中踩得坑,安装之前我先给即将安装pytorch的各位提个醒,有以下几点需要注意

1.判断自己电脑是否有GPU

注意这点很重要,本教程面向有NVIDA显卡的电脑,如果你的电脑没有GPU或者使用AMD显卡,请安装CPU版本的pytorch。AMD显卡本人并不清楚具体如何操作,不在此赘述。

2.选择合适的pytorch版本,具体方法后面会说

3.更新显卡驱动,最好是比较新的版本,这样不容易产生版本不匹配的问题,造成不必要的麻烦

二、下载安装 Anaconda

1.官网下载

下载速度较慢,官网地址: Anaconda
选择 Products -> Anaconda Distribution
点击 Download,可以下载最新版本

在这里插入图片描述

2.镜像下载

采用开源镜像网站进行下载,速度能快一点,网速不行的同学建议使用这个方法。
链接: 开源镜像
根据需求选择合适的版本下载

3.安装Anaconda

双击运行安装包,选择all users
建议装C盘,地方不够也可以装别的盘,目前我用着还没有啥问题。
安装路径保持英文即可。
环境变量那一块,可以勾选自动添加,也可以手动添加。
添加方法比较繁琐,不再赘述。
安装完毕,调用命令行,输入

python

查看python环境,正常如下:
在这里插入图片描述
输入

conda --version

查看安装是否成功
显示如下:
在这里插入图片描述
代表环境变量配置成功。

三、使用conda下载pytorch

1.创建虚拟环境

(1)利用 conda create 指令创建新的虚拟环境
在应用列表里找到Anaconda文件夹,点击anconda prompt,进入命令行,输入以下代码,创建一个虚拟环境。

conda create –n 虚拟环境名字 python=版本

我的是python3.8,所以具体代码为

conda create -n pytorch python=3.8

在这里插入图片描述
(2)输入y进行下载
(3)安装完成后,输入

conda info --envs

验证是否成功安装,如果出现
在这里插入图片描述
代表成功。

(3)如若有同学下载速度慢,可以使用镜像下载
代码格式为

conda create –n 虚拟环境名字 python=版本 –c 镜像地址

这是镜像下载的一种方法,推荐大家使用后面接-c 镜像地址的方法进行镜像下载,尽量不要修改配置文件,我一开始看的某些教程修改文件后一直无法下载,建议不要使用,会导致一些奇奇怪怪的错误。如果要修改,建议先备份原始的配置代码。
下面是几个镜像源。
链接: 清华镜像
链接: 阿里镜像

我记得-c的c意思是channel,是下载通道的意思,也就是下载网址,-c python ,-c 地址等等指的是从后面的通道进行下载,如果后面的源是国外的网址,就有可能很慢,这个因人而异,我个人并没有受太多影响。

注意,如果要修改配置文件,文件在c盘,用户,你的用户名那个文件夹,具体叫.condarc
在这里插入图片描述
用记事本打开修改即可,本文不推荐使用这种方法。

2.进入虚拟环境

输入

conda activate pytorch

进入我们刚刚创建的虚拟环境,在其中进行pytorch的安装。

3. 利用conda安装PyTorch

本文主要介绍conda安装PyTorch安装,pip方法不再赘述。
我们需要在上一步创建的虚拟环境中安装PyTorch。
主要需要安装pytorch, torchvision,torchaudio三个包。

3.1官网下载:

链接: pytorch
在这里插入图片描述
根据自己的电脑配置选择合适的CUDA版本。
(1)首先确定自己的显卡型号,确定算力
(2)确定自己的CUDA Driver 版本,查看方式:命令行输入

nvidia-smi

在这里插入图片描述

(3)确定自己能使用的CUDA版本, 即CUDA Runtime Version,也就是上面图上的版本。要保证CUDA Driver 版本 >= CUDA Runtime 版本,像我的CUDA是11.6版本,我安装的时候选择了11.3的版本。我的显卡是RTX3060, 30系的显卡选择11.x的版本就行。10系的可以选10.x之类的,具体情况具体分析。
具体方法:
点击
在这里插入图片描述
进入以下页面:
在这里插入图片描述
以上是我安装11.3版本的代码。操作方法如下:
1)在anaconda prompt中输入

conda activate pytorch

进入我们刚刚创建的虚拟环境,在其中进行pytorch的安装。
在这里插入图片描述
2)输入

conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch

根据提示输入y进行pytorch的安装(可能需要等待,但官网可能一直卡在搜包阶段)。注意,搜包结束之后一定仔细看看下的是不是GPU版本,还有看看那几个重要的包都在不在,官网一般没有问题,主要是后面的镜像下载可能会有问题。
看到有些教程说去掉-c pytorch下载快,其实是不需要的,这个是官网下载,只有镜像下载并且已经配置好文件后去掉才有实际效果。因为-c相当于指定了下载地址,-c后面跟一个国外的网址当然下的慢啦,而且不推荐改文件,直接能官网下载是最好的。

3)验证
下载完毕后,进入pytorch虚拟环境,输入

conda list

查看有没有pytorch或者torch,有代表成功安装
在这里插入图片描述

输入python,再输入

import torch

输入

torch.cuda.is_available()

如果返回值是True,代表成功啦。恭喜你,安装完成。
在这里插入图片描述

3.2镜像下载:

前面操作和上个方法相同,只是在安装的时候代码不同,我介绍的这种方法不需要修改配置文件。

conda install pytorch torchvision torchaudio –c 镜像地址
Conda install cudatoolkit=版本 –c 镜像地址

清华:https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/
阿里:http://mirrors.aliyun.com/anaconda/cloud/pytorch/win-64/
验证方法同上。

ps:本文方法并非我原创,我也是一个正在学习中的研究僧,本文方法借鉴b站up我是土堆,只是觉得方法很好,特地记载下来以备以后安装之用,顺带分享给大家,希望更多的人能不再烦恼安装pytorch,最后,再次向土堆大佬表示感谢,附上视频教程地址:
链接: 最详细的 Windows 下 PyTorch 入门深度学习环境安装与配置 CPU GPU 版 | 土堆教程
若有错漏,欢迎大家批评指正。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/730799.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.Net Core/.net 6/.Net 8 实现Mqtt服务器

.Net Core/.net 6/.Net 8 实现Mqtt服务端 Mqtt服务端代码IMqttServer 接口业务类&#xff0c;实现 IMqttServer 接口Program.cs 直接上代码 nuget 引用 MQTTnet Mqtt服务端代码 using MQTTnet; using MQTTnet.Protocol; using MQTTnet.Server;namespace Code.Mqtt {/// <sum…

STM32day3

1.思维导图 1.总结任务的调度算法&#xff0c;把实现代码再写一下 /* Definitions for myTask02 */ osThreadId_t myTask02Handle; uint32_t myTask02Buffer[ 64 ]; osStaticThreadDef_t myTask02ControlBlock; const osThreadAttr_t myTask02_attributes {.name "myTa…

代码随想录算法训练营第三十九天|62.不同路径、63. 不同路径 II

62.不同路径 刷题https://leetcode.cn/problems/unique-paths/description/文章讲解https://programmercarl.com/0062.%E4%B8%8D%E5%90%8C%E8%B7%AF%E5%BE%84.html视频讲解https://www.bilibili.com/video/BV1ve4y1x7Eu/?vd_sourceaf4853e80f89e28094a5fe1e220d9062 题解&…

react的diff源码

react 的 render 阶段&#xff0c;其中 begin 时会调用 reconcileChildren 函数&#xff0c; reconcileChildren 中做的事情就是 react 知名的 diff 过程 diff 算法介绍 react 的每次更新&#xff0c;都会将新的 ReactElement 内容与旧的 fiber 树作对比&#xff0c;比较出它们…

零基础学习JS--基础篇--索引集合类

数组是由名称和索引引用的值构成的有序列表。 JavaScript 中没有明确的数组数据类型。但是&#xff0c;你可以使用预定义的 Array 对象及其方法来处理应用程序中的数组。Array 对象具有以各种方式操作数组的方法&#xff0c;例如连接、反转和排序。它有一个用于确定数组长度的…

md5绕过

文章目录 \\和\\\md5数组绕过科学计数法绕过双md加密md5碰撞Hash长度攻击 下面会以同一道题给大家演示&#xff1a; (题目来源与nssctf) 和 在php代码中我们会看到和&#xff0c;虽然两个都是表示相等&#xff0c;但是在细节上会有所部区别 &#xff1a;是弱比较&#xff0c;只…

0201安装报错-hbase-大数据学习

1 基础环境简介 linux系统&#xff1a;centos&#xff0c;前置安装&#xff1a;jdk、hadoop、zookeeper&#xff0c;版本如下 软件版本描述centos7linux系统发行版jdk1.8java开发工具集hadoop2.10.0大数据生态基础组件zookeeper3.5.7分布式应用程序协调服务hbase2.4.11分布式…

Sora 作者被曝读博期间仅发表两篇论文,我们是否需要重塑科研价值观?

众所周知&#xff0c;在当今学术界&#xff0c;论文数量和产出速度常常被视为研究者生产力和学术成就的重要标尺。笔者也面试过很多博士生候选人&#xff0c;大家普遍会以自己读博期间发表过10几篇甚至几十篇论文而骄傲&#xff0c;很少有候选人会强调自己读博期间虽然发表论文…

UE5.1_TimeLine

UE5.1_TimeLine 问题引入&#xff1a;UE的Timeline可以在一个场景下无限制的使用多少次&#xff1f;一个动画流程的Timeline的时间持续怎么算?TimeLine中嵌套Timeline的做法是否是合理的&#xff1f;

【数据结构】泛型

文章目录 一、什么是泛型二、引出泛型1、语法 三、泛型类的使用1、语法2、示例3、类型推导(Type Inference) 四、裸类型(Raw Type)五、泛型如何编译的六、泛型的上界1、语法2、示例 七、泛型方法八、通配符九、包装类 一、什么是泛型 一般的类和方法&#xff0c;只能使用具体的…

Matlab|基于目标级联法的微网群多主体分布式优化调度

目录 主要内容 1.1 上层微网群模型 1.2 下层微网模型 部分程序 实现效果 下载链接 主要内容 本文复现《基于目标级联法的微网群多主体分布式优化调度》文献的目标级联部分&#xff0c; 建立微网群系统的两级递阶优化调度模型: 上层是微网群能量调度中心优化调度…

java中的字符串比较(题目作示例)

错误的代码 import java.util.Scanner; public class one {public static void main(String[] args) {Scanner scnew Scanner(System.in);String b"47568";int i0;for ( i 0; i <3; i){String asc.next();if(ab){System.out.println("密码正确&#xff0c;登…

C++ 类的前向声明的用法

我们知道C的类应当是先定义&#xff0c;然后使用。但在处理相对复杂的问题、考虑类的组合时&#xff0c;很可能遇到俩个类相互引用的情况&#xff0c;这种情况称为循环依赖。 例如&#xff1a; class A { public:void f(B b);//以B类对象b为形参的成员函数//这里编译错位&…

在外包公司干了4年,技术退步2年...

先说情况&#xff0c;大专毕业&#xff0c;18年通过校招进入湖南某软件公司&#xff0c;干了接近6年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试&#xf…

【Linux】常见的基本指令(中)

在本篇博客中&#xff0c;将会继续介绍Linux的常见的基本指令 一.rmdir指令 rmdir [空文件夹名] 删除空文件夹&#xff08;空目录&#xff09; 二.rm指令 rm [文件名] 删除文件 rm -r 递归删除文件夹&#xff08;目录&#xff09; rm -f 强制…

白话模电:1.绪论与半导体(考研面试常问问题)

一、什么是信号&#xff1f;什么是电信号&#xff1f; 信号反映消息的物理量&#xff0c;电信号是反应电压或电流变化的物理量。 二、什么是模拟信号&#xff1f;什么是数字信号&#xff1f; 模拟信号是时间和数值上均连续的信号&#xff0c;数字信号是时间和数值上均离散的信号…

[HackMyVM]靶场 Zeug

kali:192.168.56.104 主机发现 arp-scan -l # arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.56.1 0a:00:27:00:00:05 (Un…

2024年起该地推行「软考电子证书」!关于软考证书常见问题解答!

近日&#xff0c;安徽省人力资源和社会保障厅发布“关于2024年度安徽省专业技术人员职业资格考试工作计划及有关事项”的通知&#xff1a;从2024年起&#xff0c;推行电子证书&#xff0c;原则上不再发放纸质证书&#xff0c;电子证书与纸质证书具有同等效力。 安徽也推行电子…

Seata 2.x 系列【5】直接部署

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Seata 版本 2.0.0 本系列Spring Boot 版本 3.2.0 本系列Spring Cloud 版本 2023.0.0 源码地址&#xff1a;https://gitee.com/pearl-organization/study-seata-demo 文章目录 1. 概述2. 环境要…

学习嵌入式C语言要掌握到什么程度?

学习嵌入式C语言要掌握到什么程度&#xff1f; 在开始前我分享下我的经历&#xff0c;我刚入行时遇到一个好公司和师父&#xff0c;给了我机会&#xff0c;一年时间从3k薪资涨到18k的&#xff0c; 我师父给了一些 电气工程师学习方法和资料&#xff0c;让我不断提升自己&#…