caffe2 ubuntu环境配置(不需要make编译)(CSN, Channel-Separated Convolutional Networks)(更新中)

Video Classification with Channel-Separated Convolutional Networks

1.先是根据下面网址安装caffe2的第一步安装依赖和项目所需要的其他library
https://github.com/facebookresearch/VMZ/blob/master/tutorials/Installation_guide.md
Get the dependencies

sudo apt-get install -y \
      libgoogle-glog-dev \
      libgtest-dev \
      libiomp-dev \
      libleveldb-dev \
      liblmdb-dev \
      libopencv-dev \
      libopenmpi-dev \
      libsnappy-dev \
      libprotobuf-dev \
      protobuf-compiler \
      libgflags-dev \
      python-dev

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple lmdb flask future graphviz hypothesis jupyter matplotlib protobuf pydot python-nvd3 pyyaml requests scikit-image scipy six tornado

2.然后我们需要使用的带GPU的caffe2
https://caffe2.ai/docs/getting-started.html?platform=ubuntu&configuration=prebuilt#install-with-gpu-support
选择ubuntu, pre-built binaries(不要选择build from source太麻烦了,pre-built binaries只需要一行命令就行了)
执行下列命令后,caffe2 gpu版就安装好了

conda install pytorch-nightly -c pytorch

可能的问题:公司网速过慢,需要在家里下载上述命令中不太好下载的比较大的安装包pytorch-nightly-1.0.0.dev20190328-py2.7_cuda10.0.130_cudnn7.4.2_0.tar.bz2,因为这个包需要到conda官方镜像中https://conda.anaconda.org/pytorch/linux-64/下载,所以需要在家中使用梯子下载;conda install pytorch-nightly -c pytorch中下载的其他的比较大的包比如说cudatoolkit-10.0.130-0.tar.bz2,mkl在清华镜像中都有,所以不需要梯子就下的很快。

下载命令为将下列网址输入到chrome中即可

https://conda.anaconda.org/pytorch/linux-64/pytorch-nightly-1.0.0.dev20190328-py2.7_cuda10.0.130_cudnn7.4.2_0.tar.bz2

下完后使用conda install --offline pytorch-nightly-1.0.0.dev20190328-py2.7_cuda10.0.130_cudnn7.4.2_0.tar.bz2离线安装pytorch-nightly,然后再使用conda install pytorch-nightly自动安装原始命令除了pytorch-nightly之外剩余的安装包;经实验conda install pytorch-nightly -c pytorch会重新下载pytorch-nightly-1.0.0.dev20190328-py2.7_cuda10.0.130_cudnn7.4.2_0.tar.bz2即使已经安装的这个包和即将下载的包完全一模一样;‘-c pytorch’后缀是为了是conda install从固定的镜像中下载,这个的固定镜像指的是官方pytorch镜像。

安装完后在终端中的python输入

from caffe2.python import core     #查看caffe2是否安装成功
from caffe2.python import workspace   #查看gpu版的caffe2是否安装成功

其他的缺少什么库安装一下就好了

PS:测试caffe2是否成功时from caffe2.python import core,出现下列numpy重合的问题

>>> from caffe2.python import core
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/shaorenjie/anaconda3/envs/csn/lib/python2.7/site-packages/caffe2/python/core.py", line 15, in <module>
    from caffe2.python import scope, utils, workspace
  File "/home/shaorenjie/anaconda3/envs/csn/lib/python2.7/site-packages/caffe2/python/utils.py", line 17, in <module>
    import numpy as np
  File "/home/shaorenjie/anaconda3/envs/csn/lib/python2.7/site-packages/numpy/__init__.py", line 142, in <module>
    from . import core
  File "/home/shaorenjie/anaconda3/envs/csn/lib/python2.7/site-packages/numpy/core/__init__.py", line 91, in <module>
    raise ImportError(msg.format(path))
ImportError: Something is wrong with the numpy installation. While importing we detected an older version of numpy in ['/home/shaorenjie/anaconda3/envs/csn/lib/python2.7/site-packages/numpy']. One method of fixing this is to repeatedly uninstall numpy until none is found, then reinstall this version.

解决:

pip uninstall numpy
pip uninstall numpy
conda uninstall numpy         #这个命令会把之前离线安装的pytorch-nightly一起给卸载了,不过没有关系,可以重新离线安装一下
conda install pytorch-nightly-1.0.0.dev20190328-py2.7_cuda10.0.130_cudnn7.4.2_0.tar.bz2
conda install pytorch-nightly       #自动重新安装pytorch-nightly所对应的numpy


更新:
使用prebuilt binary进行安装的pytorch会并没有包含ffmpeg和opencv
所以运行csn代码时会出现如下错误,即使上述测试没有问题

AttributeError: Method VideoInput is not a registered operator. Did you mean: []

在pytorch github 的issue中有人回答说是需要build from source,但目前github上的pytorch(https://github.com/pytorch/pytorch)在linux gpu上的安装测试为fail
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章