- 背景:纯小白配环境,可能在配置逻辑方面无法自洽,但是缘分到了,终归是配出来了~
- 收获:最大的收获就是一定要强迫自己去看英文错误信息,也许会有惊喜,而不是遇到错误立刻复制粘贴,即勇敢地面对它!
- 预期:未来可能会转到Linux和docker上面去,听说很香~
- 系统配置:WIN10专业版 64位+RTX3070
- 安装环境:Anaconda+Pycharm+Pytorch(GPU版)+Cuda
Tips:由于本人不小心点了reboot now!
,命令行内的错误信息和结果没能及时截图保存,大家可自行脑补~另外,遇到错误信息不用烦恼,只要耐心寻找,一定有解决方案滴!祝各位踩坑开心 ~
python相关环境主要是这三大件python包+anaconda桶+pycharm编译器(根据个人喜好自由选择IDE)。这些在官网下载即可,安装都比较方便。唯一需要注意的是,这些安装过程中一定要添加到本机的路径,也就是add to my path。以anaconda安装举例,第一个选项就是添加路径,一定要勾选上,第二个默认绑定python3.8版本。我本机装的是python3.8版本,所以我也勾选上了。这里也要注意,python版本较多,不同版本之间的操作细节可能不太一样。
虽然anaconda神器已经预装了很多我们会用到的python包,诸如numpy,matplotlib,sklearn等,但我们还是可能会用到pip包管理工具下载包。由于pip的源非常慢,此时我们可以换个镜像源,瞬间提高下载速度。
在windows系统下,无需命令行指令,只需在C:\用户\Administrator
(Administrator
是我主机的用户名)内新建一个名为pip
文件夹,而后在该文件夹内新建一个名为pip.ini
的配置文件。用记事本打开,配置文件内容如下:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
保存即可,命令行内使用pip install 你想安装的包名
,体验飞一般的速度~
这里需要注意的是,如果你的的主机已经预装了显卡驱动和图形驱动程序(N卡控制面板),不出意外,你会安装失败~不用担心,此时你只需要卸载带NVIDIA的全部程序,你的电脑可能会闪屏,分辨率可能会降低,这些在你安装完cuda之后再回到官网重新下载显卡驱动即可,安装过后一切恢复正常。
如果你装回显卡驱动后,发现无法打开N卡控制面板,这个问题我也遇到过。。。后续我会再写一个解决方案,大家也可以自行检索,还是比较容易滴。
这一部分的方法五花八门,大家可以自行选择,条条大路通罗马。我整理了一下,大概分为几个方向,同时我也标记出了我走通的方向。再次提醒,因人而异~
对照pytorch官网的安装要求选择自己的版本即可。包括当前pytorch版本(1.7.1,离线安装需要找到对应包),OS,包管理工具(conda或pip),编程语言(python要注意版本,每个版本对应的pytorch包也是不同的)以及cuda版本。
在cuda安装
章节中,大家自会发现自己的cuda版本。如果没有找到也没关系,打开N卡控制面板->帮助->系统信息->组件
即可找到自己的版本。
我安装的cuda版本是11.1(无伤大雅~),在pytorch的cuda版本选择11.0即可。
run this command
是pytorch的在线安装指令。如果直接使用,可能会下载超时导致安装失败。因此,换源是你的必经之路。
打开anaconda中的powershell prompt
。
在命令行中输入如下指令将conda源换成清华的。
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 --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
在后续的conda create/install 包名
指令中,我遇到了CondaHTTPError
报错。通过百度找到了一个可行的办法,进入C:\用户\Administrator
找到.condarc
文件,将default
那一行删除,然后再讲镜像地址中的https
全部换成http
即可解决该报错。
我们要建立一个含有pytorch框架的虚拟环境(该虚拟环境会在pycharm配置中起关键作用),下次想要编写pytorch相关代码就进入到这个虚拟环境中即可。
仍然在anaconda中的powershell prompt
输入如下指令:
conda create -n pytorch python=3.8.0
这样就是创建了一个名为pytorch
(注:随意命名,能记住就行)的虚拟环境,该环境的python版本为3.8(注:自行选择合适自己的版本,主要用于pytorch版本确定环节中)。之后激活该环境:
conda activate pytorch
注:接下来可跳过辛酸踩坑史,直接看pip安装环节~
这里主要分为离线安装和在线安装,我都没走通,呜呜呜~
离线安装就是到清华源找到对应版本的pytorch和torchvision包,下载到本机即可。比如我的版本是pytorch-1.7.1-py3.8_cuda110_cudnn8_0.tar.bz2
和torchvision-0.8.2-py38_cu110.tar.bz2
,大家要根据自己的环境确定版本。此外,要注意下载到本机的包后缀是没有.bz2
的,在接下来的离线安装中一定要加上。
激活虚拟环境,找到下载的包所在位置,如图(我的本机位置):
之后输入如下指令离线安装即可:
conda install --offline pytorch-1.7.1-py3.8_cuda110_cudnn8_0.tar.bz2
conda install --offline torchvision-0.8.2-py38_cu110.tar.bz2
然而当时我并未成功,如下图(注:即使加了.bz2
还是报错PackageNotFoundError
):
当写这篇总结之时,我发现还有一个解决方法没尝试(当时已经麻木了~),就是这篇博客,貌似可行。装环境很随缘,过段时间再试一试。大家也可先行踩坑 ~
在线安装就是将pytorch官网中的run this command
指令输进powershell prompt
即可。注意:先激活环境!
conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch
使用该指令后,倒是没有报错。不过它下载超时,似乎还是连接到了官方源。在百度后,找到了这个解决方案,将末尾的-c pytorch
删除即可连接到我们已经配置好的清华源。
conda install pytorch torchvision torchaudio cudatoolkit=11.0
该指令可以下载成功,但是下载的版本是pytorch1.6
,没有注意到python和cuda的版本是否匹配(配置到麻木~)。没办法,只能将pytorch环境卸载重装。
在激活环境后,直接使用pytorch官网的run this command
指令:
pip install torch===1.7.1+cu110 torchvision===0.8.2+cu110 torchaudio===0.7.2 -f https://download.pytorch.org/whl/torch_stable.html
虽然已经换过pip的源,但仍可能出现下载超时的问题。这时候只需加上指定镜像源即可:
pip install torch===1.7.1+cu110 torchvision===0.8.2+cu110 torchaudio===0.7.2 -f https://download.pytorch.org/whl/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple
终于出现successfully
啦!可惜重启前没有截图留念~
验证方法有很多,这里说一个简单的方法。
在安装成功后,不要离开powershell prompt
。在当前虚拟环境中输入python
启动python编译环境,紧接着在>>>
后输入如下代码(每输一行回车即可,回车没有报错也就说明安装成功啦)
import torch
torch.cuda.is_available()
# 输出true,安装成功
如果你还不放心,也可参考b站大神稚晖君的验证脚本。我也试了一下,同样能看到正常的训练过程。
终于来到了最后一步,挑一件趁手的兵器干活!这里我选用pycharm进行编程!如果我们直接创建新项目,而后import torch
,那么很有可能会报错。因为此时我们所处的虚拟环境并不是我们创建的含有pytorch框架的conda环境。注:我们配置的conda虚拟环境默认安装在anaconda
的envs
文件夹内!
那么问题来了,我们如何将我们创建的conda环境添加到当前项目环境中?
如下图所示,首先找到File->Setting->Project:<当前项目名称>->Python Interpreter
中的箭头所指图标,而后点击图标并选择Add...
进入添加页面。
在添加页面中,有如下操作顺序:
Conda Environment
;Exisiting environment
;...
图标添加conda虚拟环境;pytorch
虚拟环境,它默认安装在..\Anaconda\envs\...
中。成功添加名为pytorch
的conda虚拟环境,下面是该部分的操作图解。
最后回到Python Interpreter
页面,选择我们刚添加的pytorch
环境。
- 通俗易懂的配置思路
- 大神的配置方案
- 涵盖三大系统的配置
- pip换源
- conda换源
- CondaHTTPError报错
- 清华源
- PackageNotFoundError报错