目录
创建虚拟环境
安装包的四种方法:
镜像源/网络问题:
版本对应关系:
cuda toolkit下载地址(新):
keras:
torch:
apex: 下载地址
pycocotools:
配置失败的可能原因:
linux:
其他:
安装编程软件pycharm和环境管理软件anaconda见另外的博客
安装好pycharm,去官网下载conda好,并且配置好conda后
进入下载下来的项目文件夹,输入cmd,回车
conda create -n 环境名称 python==3.7.3
如果后面要安装torch之类的,这里可以不输入python==...这一部分,因为很多包自己会指定需要什么python
(不知道安装python几就安装3.7的 兼容比较好)
出现这个说明创造成功,然后输入conda activate 环境名称(这步的作用会在开头体现当前环境 如果重新打开cmd 也可以输入conda activate 环境名称 来激活)
然后如果requirements.txt中有看到(这个txt一般在项目内),需要在安装其他包之前先安装的东西(哪些东西见下文),这时候可以安装了
之后可以无脑安装剩下的东西了,在cmd中输入:pip install -r requirement.txt
如果项目包含setup.py这个文件(安装依赖模块和作者自己编写的模块),还需要再输入:python setup.py develop
这个时候就安装好大部分的包了。如果还有的没安装上,或者出现版本冲突,可以根据下面的对应关系去重新下载
进入pycharm,点击右下角python intepreter, 选择add
选择conda environment,然后找到刚刚安装的环境(一般是在anaconda下的envs文件夹)
注意:
拿到一个工程的压缩包以后,通常里面会有一个文件requirement.txt,告诉你工程用的哪些包,你需要跟着把包下齐了才能运行。然而这些包的有版本对应关系,如果版本互相对应不上那么就不能用
注意安装顺序:
一般是python创建环境——安装cuda cudnn——pytorch 或 tensorflow 或keras——用pip无脑安装requirements.txt
注意:
python最常用的是3.7,老的项目用的话没指定可以选3.6
安装什么版本的python,cuda,cudnn在requirements里一般没有,可以先看项目需要什么版本的pytorch,tensorflow 和 keras然后根据对应关系下载python cuda cudnn
深度学习常用的包有pytorch,tensorflow 和 keras,如果项目需要,那么一定先看这几个的安装,特别注意显卡和cuda cudnn 以及上述三个东西的对应关系
安装下面几个包的时候,记得每步测试一下能不能用,不是说在conda list里就成功了
pip install 名字
conda install 名字
pip install -r 路径/requirements.txt
下载whl编译:通常我们下包,下的就是whl文件,pip和conda也不过就是下载的工具,那么直接去找whl来编译也是可以的,一般github上有
比如github这里提供了一个网址,我们点进去
点击想要的版本号就可以下载,下载之后
pip install 文件路径/***.whl
这个特别重要,有的包只能在特定的镜像源下才能下载成功,见另一篇博客 anaconda
比如清华源,联通的宽带一般用不了
如果装的是linux系统,通常有无线网络连接不上的问题,可以用usb连接手机,走手机的流量,具体操作见另一篇博客manjaro
其实不建议用镜像源,建议直接用export的命令在终端中链接梯子(linux),可以参考clash那篇博客。注意,建议就算已经挂梯子了,终端不输命令就是没有链接上
CUDA Toolkit 旧版下载地址
在我们的具体使用中,其实真正需要的并不是整个CUDA,而是cudatoolkit
查看显卡匹配的cuda版本:nvidia -smi显示的版本就是能安装的最高版本(因为高版本的cuda兼容低版本的cuda toolkit)
注意如果是安装旧版 最新的patch也要下载
安装后输入nvcc --version 有显示就说明安装成功
如果没有显示,那么注意是否添加路径
此电脑-属性-高级系统设置-环境变量
可以看到我的电脑红色的是cuda9的路径,如果我想切换到11.1,可以把9的删掉,目前只有这种笨方法,有更好的方法欢迎留言
cuddn下载地址,里面写了和cuda的对应关系
下载并解压文件夹,将解压后的文件夹下的文件拷贝到cuda安装目录下,与之相对应的文件夹下
tensorflow:
pip install tensorflow-gpu==1.5.0
cuda cuddn决定tensorflow版本,选windows拖到底下
检测有没有安装好:
python
import tensorflow as tf
tf.test.is_gpu_available()
numpy:
和python的对应关系
安装完之后,一般numpy也安装好了,但是避免出问题,可以看一眼numpy的版本,如果不匹配,conda install numpy
tensorflow决定keras安装什么版本
更早版本的
List of Available Environments - FloydHub Documentation
测试 import keras
注意protobuf和keras的关系
对应关系这个链接我还没找到 找到的小伙伴告诉我一下
在安装torch之前一定先把对应版本的cuda和cudnn安装好
这一块弄不好会报错:No CUDA runtime is found, using CUDA_HOME='C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1'
Start Locally | PyTorch
第一个建议选LTS(长期支持版本)
注意到note的命令
conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch-lts -c conda-forge
直接在pycharm的terminal中输入就可以了
如果是安装之前的版本
注意到这里写了版本对应关系
用anaconda安装torch。新建虚拟环境后,直接在pytorch官网官网链接找到“Install”按钮。这里一键搞定torch,torchvision,cudatoolkit等等,不需要另外安装cuda(笔者在没有单独安装CUDA情况下,成功运行了torch-gpu,很丝滑),并且版本都会自己对于对应好,原因是anaconda都集成在虚拟环境里面了,统一管理各个依赖包。有镜像源的情况下,去掉末尾的“-c pytorch”会更快,因为加上-c pytorch 后就不是从清华源镜像下载,否则经常容易下载超时。不过conda下载超时时间可以设置。
安装后如果要查看torch版本:
>>>python
>>>import torch
>>>torch.__version__ //注意version前后是两个下划线
结束前还要检查一下torch安装的是不是gpu版本 (自己有显卡要跑的话就得gpu版本的)
torch.cuda.is_available()
torch.cuda.get_device_name(0)
如果不是的话:改成选stable版本的
下载到项目内解压,然后cmd输入:python setup.py install
修改miniconda3\envs\yolox\Lib\site-packages\apex-0.1-py3.8.egg\apex\amp\_amp_state.py
if TORCH_MAJOR == 1 and TORCH_MINOR < 8:
from torch._six import container_abcs
else:
import collections.abc as container_abcs
pip install cython
pip install pycocotools
如果源不好使
ipconfig
set http_proxy=http://192.108.7.202:7890
set https_proxy=http://192.108.7.202:7890
set all_proxy=http://192.108.7.202:7890
conda或者pip没有添加正确的源(清华源也没有所有的资源)
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simple
被源拒绝访问,以清华源为例:
https://github.com/tuna/issues/issues/1455
稍微简单一点,一般项目里有envs.sh这个文件,直接:bash envs.sh就会自动执行
这个文件可以用记事本打开看内容
如果报错的话就看是第几行的内容执行有问题
注意这几个的安装,可能本身是依赖,或者要依赖其他的,报错的话根据这几个的名字去搜索解决方案:pip / cmake / dlib
cuda
如果在linux中
查看/usr/local/cuda/bin下是否有nvcc可执行程序,如果没有说明cuda没有正常安装,需要重新安装,如果有,进入下一步
再输入nvcc --version看是否显示
如果还错就检查是不是和cuda版本冲突
添加环境变量,打开~/.bashrc ,添加环境变量export PATH="$PATH:/usr/local/cuda/bin"
然后source ./.bashrc
退回上一级目录:cd ..
更新pip:python -m pip install -U pip
查看已经安装的包:pip list
生成requirement.txt
pip freeze > requirements.txt
项目gitclone:
git clone https://ghproxy.com/项目gitclone地址