Requirements:
- Linux 16.04, Python2, NVIDIA GPU (Detectron 目前只有 GPU 版本)
- CUDA 9.0, cuDNN7.0.5
- Caffe2, COCO API
为保持 Python 环境的独立性与完整性,安装前新建一个新的虚拟环境,以下安装过程在虚拟环境中进行
1 | # 在主环境下 |
[TOC]
CUDA & cuDNN
安装 CUDA9.0 和 cuDNN7.0.5,具体安装步骤参考英伟达官网
Caffe2
1. 从源码编译
以下为源码编译的过程,尝试过安装 Pre-Built Binaries,结果失败了,也可以直接安装预编译文件(推荐),[2. 安装预编译文件](#2. 安装预编译文件)
安装依赖包
1 | sudo apt-get update |
pip install
使用默认镜像下载速度较慢,可以选择使用清华大学 pypi 镜像
1 | # for temporary use |
下载代码仓库并编译
1 | git clone https://github.com/pytorch/pytorch.git && cd pytorch |
如果编译顺利通过,恭喜,接下来测试 caffe2 安装是否正确,[3. 安装后测试](#3. 安装后测试)
错误信息1:服务器安装的 git
在执行 clone
命令时报错找不到 https
协议,应该是安装不完整导致的,可以在当前环境下重新安装 git
后重试(使用命令 conda install git
,推荐)或者使用以下命令代替:
1 | git clone git://github.com/pytorch/pytorch.git && cd pytorch |
错误信息2(未解决):在执行安装命令时 (python setup.py install
),出现以下错误:
1 | ······/libmklml_intel.so: file not recognized: File truncated. |
该错误指向 pytorch/third_party/ideep/mkl-dnn/external/mklml_lnx_2019.0.1.20180928/lib/libmklml_intel.so
文件,可能是文件不完整导致的错误,但是未找到原因及解决方法。如果出现此错误请尝试通过预编译文件安装 caffe2.
其他错误:查看 Caffe2 troubleshooting
2. 安装预编译文件
Caffe2 只提供 Anaconda 的预编译安装包,需要安装 Anaconda 或 Miniconda
首先添加清华大学维护的 PyTorch 源,下载速度更快:
1 | conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ |
然后执行安装操作:
1 | conda install pytorch-nightly |
3. 安装后测试
安装完成后,测试安装是否成功
1 | # To check if Caffe2 build was successful |
根据执行结果判断安装是否成功
从源码编译需注意:
If the
caffe2
Python package is not found, you likely need to adjust yourPYTHONPATH
environment variable to include its location (/path/to/caffe2/build
, wherebuild
is the Caffe2 CMake build directory).
COCO API
依赖:
- setuptools>=18.0
- cython>=0.27.3
- matplotlib>=2.1.0
1 | conda install setuptools cython matplotlib |
Detectron
下载代码仓库:
1 | DETECTRON=/path/to/clone/detectron # 指定安装路径 |
安装 Python 依赖:
1 | pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r $DETECTRON/requirements.txt |
然后 make:
1 | cd $DETECTRON && make |
安装完成后运行测试:
1 | python $DETECTRON/detectron/tests/test_spatial_narrow_as_op.py |
结果输出 OK
,安装完毕
输出以下提示信息不必理会:
1 | No handlers could be found for logger "caffe2.python.net_drawer" |
Troubleshooting
Reference
- https://github.com/facebookresearch/Detectron/blob/master/INSTALL.md
- https://caffe2.ai/docs/getting-started.html?platform=ubuntu&configuration=prebuilt
- https://blog.csdn.net/weixin_43624538/article/details/84712617
P.S.
CUDA8.0 cuDNN5.1.10 安装失败,原因:PyTorch 需要 cuDNN>=7.0
查看 CUDA 和 cuDNN 版本:
1 | # CUDA |