Deep Learning

※前提条件:本情報はUbentu15.01を基づいて説明してる

準備作業

CUDAダウンロードURL:

https://developer.nvidia.com/cuda-downloads

下記のようなファイルがダウンロードされる。 cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb

cuDNNダウンロード申請URL:

https://developer.nvidia.com/cudnn

OpenCVのLinuxライブラリをコンパイルを参照して、OpenCVをインストールすること。

ステップ1 必須コンポーネント

sudo apt-get install build-essential
sudo apt-get install vim cmake git
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler

ステップ2 CUDAインストール

ctrl+alt+F1で以下のコマンドを実行する

sudo service lightdm stop

CUDAをインストールする

sudo dpkg -i cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb
sudo apt-get update
sudo apt-get install cuda

インストール完了後、PCを再起動する

cuda環境設定

環境変数を設定する

gedit /etc/profile

末尾に以下のコードを追加する

PATH=/usr/local/cuda-7.5/bin:$PATH
export PATH

環境変数を適用する

source /etc/profile

以下の設定ファイルを作成する

sudo vim /etc/ld.so.conf.d/cuda.conf

中身を以下に入力する

/usr/local/cuda-7.5/lib64

設定を適用する

sudo ldconfig

cuda サンプル

/usr/local/cuda-7.5/samples以下のコマンドでbuild samples

sudo make all -j4

※10分程度かかる

samples/bin/x86_64/linux/release, deviceQueryを実行する

./deviceQuery

※グラフイックカードの情報が表示できれば、インストール成功ということ

ステップ3 cuDNNインストール

ダウンロードURL:

https://developer.nvidia.com/rdp/cudnn-download

CUDAのバージョンに合わせてダウンロードしてください。

解凍&インストール

#cuDNN ver6.5
tar -zxvf cudnn-6.5-linux-x64-v2.tgz
cd cudnn-6.5-linux-x64-v2
sudo cp lib* /usr/local/cuda-7.5/lib64/
sudo cp cudnn.h /usr/local/cuda-7.5/include/

#cuDNN ver7.5
tar -zxvf cudnn-7.5-linux-x64-v5.0-ga.tgz  
cd cuda  
sudo cp lib64/lib* /usr/local/cuda-7.5/lib64/  
sudo cp include/cudnn.h /usr/local/cuda-7.5/include/
#cuDNN ver6.5
cd /usr/local/cuda-7.5/lib64/  
sudo rm -rf libcudnn.so libcudnn.so.6.5  
sudo ln -s libcudnn.so.6.5.48 libcudnn.so.6.5  
sudo ln -s libcudnn.so.6.5 libcudnn.so 

#cuDNN ver7.5
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.5.0.5
sudo ln -sf libcudnn.so.5.0.5 libcudnn.so.5
sudo ln -sf libcudnn.so.5 libcudnn.so
sudo ldconfig

ステップ4 CaffeのPthyonコンポーネントのインストール

pipインストール

sudo apt-get install python-pip

Caffeのダウンロード

URL:

https://github.com/BVLC/caffe

Gitソースの取得

cd
git clone https://github.com/BVLC/caffe.git

scipyのインストール

cd caffe/python
sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

root権限でrequirement内のパッケージをインストール

sudo su
for req in $(cat requirements.txt); do pip install $req; done

エラーが提示された場合、インストールパッケージが足りない可能性が高い、その場合提示のメッセージに従って、以下のコマンドを実行すればよい。

pip install <package-name>

インストール完了後、一般ユーザへ切り替え

exit 

ステップ5 Intel MKL/Atlasのインストール

ここではAtlasのインストールを説明する

sudo apt-get install libatlas-base-dev

Caffeをコンパイルする

cd ~/caffe
cp Makefile.config.example Makefile.config
gedit Makefile.config

Makefile.config ファイルの編集

以下の項目を設定する

cuDNNを利用させる

# USE_CUDNN := 1 

注釈を外す

USE_CUDNN := 1

CUDAのディレクトリを設定する

CUDA_DIR := /usr/local/cuda-7.5

pythonのインストールパスを修正(必要な場合のみ)

PYTHON_INCLUDE := /usr/include/python2.7 \
   /usr/lib/python2.7/dist-packages/numpy/core/include

makeする

make all -j4
make test
make runtest
make pycaffe

トラブルシューティング

cuDNN見つからない

以下のエラーメッセージが提示される場合

Found cuDNN: ver. ??? found (include: /usr/local/include, library: /usr/local/lib/libcudnn.so)

Cuda.cmakeを以下のように、CUDNNのパスを正しく指定すればよい。

#set(CUDNN_ROOT "" CACHE PATH "CUDNN root folder")
下記に変更
set(CUDNN_ROOT "/usr/local/cuda-7.5")

#find_path(CUDNN_INCLUDE cudnn.h
#          PATHS ${CUDNN_ROOT} $ENV{CUDNN_ROOT} ${CUDA_TOOLKIT_INCLUDE}
#          DOC "Path to cuDNN include directory." )
下記に変更
set(CUDNN_INCLUDE ${CUDNN_ROOT}/include)

#find_library(CUDNN_LIBRARY NAMES ${CUDNN_LIB_NAME}
# PATHS ${CUDNN_ROOT} $ENV{CUDNN_ROOT} ${CUDNN_INCLUDE} ${__libpath_hist} ${__libpath_hist}/../lib
# DOC "Path to cuDNN library.")
下記に変更
set(CUDNN_LIBRARY ${CUDNN_ROOT}/lib64)

cublas_v2.h見つからない

以下のエラー情報が提示された場合、コンパイラはGPUを利用しようとする際に、うまく動作できないため、エラーが発生した。

CXX .build_release/src/caffe/proto/caffe.pb.cc
CXX src/caffe/layer_factory.cpp
In file included from ./include/caffe/common.hpp:19:0,
                 from ./include/caffe/blob.hpp:8,
                 from ./include/caffe/layer.hpp:8,
                 from src/caffe/layer_factory.cpp:8:
./include/caffe/util/device_alternate.hpp:34:23: fatal error: cublas_v2.h: そのようなファイルやディレクトリはありません
 #include <cublas_v2.h>
                       ^
compilation terminated.
Makefile:572: recipe for target '.build_release/src/caffe/layer_factory.o' failed
make: *** [.build_release/src/caffe/layer_factory.o] Error 1

簡単な対策として、CPUだけ利用して訓練するつもりなら、Makefile.configファイル内CPU_ONLYを設定すればよい。ではなければ、Makefile.configのCUDA_DIRの設定が間違っていること、実際インストールパスを設定しなおせばよい。

hdf5.h見つからない

以下のエラー情報が提示された場合

In file included from src/caffe/util/hdf5.cpp:1:0:
./include/caffe/util/hdf5.hpp:6:18: fatal error: hdf5.h: そのようなファイルやディレクトリはありません
 #include "hdf5.h"
                  ^
compilation terminated.
Makefile:575: recipe for target '.build_release/src/caffe/util/hdf5.o' failed
make: *** [.build_release/src/caffe/util/hdf5.o] Error 1

下記のようにコンパイルファイルを修正すればよい

Makefile.configファイル

--- INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
+++ INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/

Makefileファイル

--- LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
+++ LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

実行する

python
import caffe

エラーが発生しなければ、インストール正常にしたことです。



本当にほしかったのはこういうブログだったんだ

コメント:



(画像の文字列を入力して下さい)

トップ   編集 凍結 差分 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019/12/02 (月) 12:33:29 (1628d)

PCpዾyǗlgĂ܂}WŔ܂z 萔O~ył񂫁z Yahoo yV NTT-X Store

z[y[W ̃NWbgJ[h COiq ӂ邳Ɣ[ COsیI COze