Deep3Dに対応させたMXNet 0.7.0をインストールしてみた

mxnet
MXNet 0.5.0をアンインストールして、Deep3Dに対応させたMXNet 0.7.0をUbuntu 14.04にインストールしてみました。

以下の記事のように、MXNet 0.5.0では、OpenCV関係でいろいろ試行錯誤して、インストールの記録が残せなかったため、MXNetインストールの記事は、今回が初となります。

MXNetのNeural Artで画風を変換してみた
DMLCが開発しているDeep Learningフレームワーク「MXNet」をUbuntu 14.04にインストールして、画風を変換するNeural Artを試してみました。
スポンサーリンク

MXNetのビルド

最初に、依存関係のあるパッケージをインストールします。

$ sudo apt-get update
$ sudo apt-get install -y build-essential git libatlas-base-dev libopencv-dev

あらかじめ作成しておいたgithubディレクトリに移動し、--recursiveを付けて、GitHubのMXNet(https://github.com/dmlc/mxnet)をcloneします。

$ cd ~/github
$ git clone --recursive https://github.com/dmlc/mxnet

また、Deep3D(https://github.com/piiswrong/deep3d)に対応させるため、以下の追加作業を行います。

$ git clone https://github.com/piiswrong/deep3d

このあと、Installation Guide(http://mxnet.readthedocs.io/en/latest/how_to/build.html#building-on-ubuntu-debian)通りに、

$ cd mxnet; make -j$(nproc)

とすると、CUDAとcuDNNを使用しないCPU版がビルドされます。

GPU版をビルドするために、mxnetディレクトリに移動し、mxnet/makeディレクトリのconfig.mkをmxnetディレクトリにコピーして、編集を行います。

$ cd mxnet
$ cp make/config.mk .
$ gedit config.mk

ここでは、config.mkの

USE_CUDA = 0
# USE_CUDA_PATH = /usr/local/cuda
USE_CUDA_PATH = NONE
USE_CUDNN = 0

USE_CUDA = 1
USE_CUDA_PATH = /usr/local/cuda #環境に合わせて変更
# USE_CUDA_PATH = NONE
USE_CUDNN = 1

に変更します。

また、Deep3Dに対応させるため、

EXTRA_OPERATORS =

EXTRA_OPERATORS = /home/sora/github/deep3d/operators #環境に合わせて変更

に変更して、config.mkを保存します。

OpenCV 3.1をインストールしている環境だと、

$ make -j$(nproc)

でビルドが成功しました。

libopencv-devでOpenCV 2.4環境を構築している場合、

$ pkg-config --libs opencv

で、ライブラリが表示されるか確認し、表示されない場合、

$ export PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig:$PKG_CONFIG_PATH
$ pkg-config --libs opencv

で、状況が変化するか確認して下さい。

Python用MXNetのセットアップ

旧バージョンをセットアップしている場合、

$ python -c "import mxnet; print(mxnet.__file__)"

で表示されるdist-packagesディレクトリよりも後のディレクトリを削除しておきます。

次に、以下のコマンドで、新バージョンのセットアップを行います。

$ cd python
$ python setup.py install

最後に、以下のコマンドで、

$ python -c "import mxnet; print(mxnet.__veriosn__)"
0.7.0

となれば、セットアップ完了です。

まとめ

MXNet 0.5.0をアンインストールして、Deep3Dに対応させたMXNet 0.7.0をUbuntu 14.04にインストールしてみました。

OpenCV関係の失敗の経験が活かされ、今回のインストールは、比較的うまく行きました。