关于PyTorch环境配置及安装教程(Windows10)
作者:酷酷的橙007 发布时间:2021-04-23 09:04:31
新手在配置pytorch过程中总会或多或少遇到些问题,同时网上关于pytorch的环境配置琳琅满目,不知道应该按照哪个配置,这里笔者记录一下自己在windows10下配置Pytorch的全过程。
笔者电脑环境以及安装版本为:Windows10 企业版 + python 3.7.9 + Anaconda3 + GTX 1050显卡 + pytorch 1.7.1
一、Anaconda安装
这里推荐大家安装Anaconda(但不是必须)。因为有些时候大家编程的python版本可能不同,所以一般大型项目建议一个项目使用一个python interpreter(编辑器),方便管理,而Anaconda就很方便的帮助我们做这件事情。
安装过程非常简单,在官网找到对应版本安装即可,官网安装页面如下:https://www.anaconda.com/products/individual#Downloads
开始菜单中打开Anaconda中的Anaconda Prompt,出现(base),即安装成功,如下:
Anaconda可以很方便的管理我们我们的所有运行环境以及环境中的各种依赖包,主页面如下:
二、安装pytorch环境
1. 停留在上面 Anaconda Prompt 页面上
输入
conda create -n environment_name python=3.7
因为我们之前说过,我们需要给每个项目配置一个python编辑器,所以environment_name(改成你自己指定的环境名,比如就叫environment_test)就是我们配置的这个项目对应的编译环境的名字,里面放入我们指定的python编辑器(这里我以python 3.7为例)。
2. 出现上述页面
输入y,表示确认安装上述所需要的包。
出现上图,环境中的python编辑器安装完成。
当然现在我们还处于(base)环境,也就是Anaconda自带的基础环境,我们需要跳到我们刚刚创建的environment_test环境。
3. 按照上图
执行conda activate environment_test,跳到environment_test编译环境中
此时环境已经发生改变,输入pip list,可以看到目前环境中所有已经安装的包,但是没有我们想要的pytorch,需要我们自己安装。
4. pytorch安装
pytorch安装非常的人性化,我们只需要去pytorch官网,点击install,就可以看见下面这个界面:
对于每一项的选择在这里做一下详细介绍:
① Pytorch Build:建议选Stable稳定版
② Your OS:根据你自己系统选择,这里我选Windows
③ Package:因为我们已经安装Anaconda,所以在Anaconda Prompt环境下我们可以直接使用Conda方式进行安装,所以选Conda(大家其实最常用发应该是pip的方式,当然官网也提供这种方式,这里就不做过多介绍了)
④ Language:Python
⑤ CUDA:关于GPU的CUDA版本问题如何选择,打开cmd,输入nvidia-smi,可以看到CUDA的版本信息,这里选11.0。(没有英伟达显卡,或者显卡不支持CUDA或者就想用CPU运行的话直接选None就行)
注意CUDA9.2以上版本支持的Driver Version不可以低于396.26,一般建议安装前先更新一下自己显卡的驱动,笔者昨天刚刚更新完,直接点更新,很方便。
⑥ Run this Command:conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch。
注意:python 3.9 还需要在结尾增加-c=conda-forge
可以看到里面包括pytorch,numpy等我们所需要的一些包,还是输入y,等待安装。
⑦ 出现done,安装完成 证明pytorch安装成功,关闭当前Anaconda Prompt,并重新从开始菜单打开,并激活environment_test环境,在环境下打开python编辑页面。
输入import torch,不报错证明pytorch包安装成功。
输入torch.cuda.is_available(),显示True,证明cuda安装成功,可以使用GPU对pytorch中的张量、网络进行加速处理。若为False,此时pytorch只能用CPU运行。
三、可能遇到的一些问题
笔者在这里记录第一次安装时出现的一些问题,在这里记录一下~
1. pytorch包安装不成功的话,建议按照提示更新一下conda版本(可能是你的Anaconda版本太老了,新安装的应该不会出现这个问题)
2.‘nvidia-smi’ 不是内部或外部命令:解决方法如下
windows下直接输入nvidia-smi显示不是内部或外部命令也不是可运行的程序
把C:\Program Files\NVIDIA Corporation\NVSMI
添加到path。再重新打开cmd窗口
ok,解决啦~
3. 环境中安装jupyter,报react404之类的错误:解决方法如下
[W xx:xx:xx.xxx NotebookApp] 404 GET/static/components/react/react-dom.production.min.js (::1)
jupyter notebook打不开
问题描述
在不知道conda了一些奇奇怪怪的安装包的时候,出现了jupyter 打不开的错误 错误代码为以下。
[W xx:xx:xx.xxx NotebookApp] 404 GET/static/components/react/react-dom.production.min.js (::1)
问题解决方法
在csdn某个博主上看的文章,忘记是谁了,cmd下输入一下这个就好了
pip install --user --ignore-installed jupyter
ok,解决啦~
4. 上述的第5步证明pytorch安装成功,一定要关闭当前Anaconda Prompt,再重新打开激活环境,因为新安装完之后环境是未激活状态,这时候一些依赖包是不能被调用的
5. torch.cuda.is_available()显示false的几个原因:
① 未正确安装GPU,查看 任务管理器–性能,下面是否有你的显卡
② CUDA9.2以上版本支持的Driver Version不可以低于396.26,一般建议安装前先更新一下自己显卡的驱动。不建议去英伟达官网更新,因为查询最新的驱动有很多,不知道会安装哪个。直接英伟达显卡设置管理软件中安装即可,见上文。
③ 安装的CUDA版本不能高于显卡支持的CUDA版本。
来源:https://blog.csdn.net/xiecheng1995/article/details/111353417


猜你喜欢
- 一. create优化在serializer序列化中,我们通过创建序列化器对象的方式地简化了视图函数的代码,前端传入的数据通过反序列化操作进
- lambda函数的定义   lambda函数是Python中常用的内置函数,又称为匿名
- 各位大哥: 在javascript中如何取整?比如: var
- 安装好Navicat之后可能会出现如下的错误:Client does not support authentication protocol
- 发现问题当我用pip安装好opencv-pyton后,我激动得在python项目中导入cv2就像这样:import cv2 as cvbut
- 之前一直在写有关scrapy爬虫的事情,今天我们看看使用scrapy如何把爬到的数据放在MySQL数据库中保存。有关python操作MySQ
- 每一个变量都有数据类型,Go中的数据类型有:简单数据类型:int、float、complex、bool和string数据结构或组合(comp
- 年关将近,抽奖想必是大家在公司年会上最期待的活动了。如果老板让你做一个年会抽奖的程序,你会怎么实现呢?今天给大家介绍一下如何通过 SQL 语
- 无意间碰到的一个大神整理的Python学习思维导图,感觉对初学者理清学习思路大有裨益,非常感谢他的分享。14 张思维导图基础知识数据类型序列
- 本文实例讲述了Python多进程multiprocessing、进程池用法。分享给大家供大家参考,具体如下:内容相关:multiproces
- 本文实例讲述了Python运算符重载用法。分享给大家供大家参考。具体分析如下:python中,我们在定义类的时候,可以通过实现一些函数来实现
- 例:公司员工采取三个轮班制度:凌晨0:00到早上8:00为第一班,早上8:00到下午4:00为第二班,下午4:00到晚上12:00为第三班。
- 前言很多时候需要对自己模型进行性能评估,对于一些理论上面的知识我想基本不用说明太多,关于校验模型准确度的指标主要有混淆矩阵、准确率、精确率、
- MySQL中可以使用rename table这个SQL语句来修改表名。rename table这个SQL语句来修改表名的基本语法是:RENA
- 分布式 id 生成器在分布式场景中,唯一 id 的生成算比较重要。而通常在高并发场景中,需要类似 MySQL 自增 id 一样不断增长且又不
- 在解决日常的支持需求中,经常会遇到一些用户反馈一些无法简单复现的bug,有很大一部分的bug是由于用户自身的网络环境波动,或者是本身网络环境
- django自定义管理器和model的继承在我写代码时建立的很多数据库需要一些共同的字段,比如is_active, create_time这
- 在待测试的私有函数所在的包内,新建一个xx_test.go文件书写方式如下:import ( "github.com/stretc
- floor()方法返回不大于x的最大整数(向下取整)。语法以下是floor()方法的语法:import mathmath.flo
- 目录前言一、首先二、接下来1.对照人脸获取2. 通过算法建立对照模型3.识别前言今天,我们用Python实现简单的人脸识别技术!Python