低火力ディープラーニングマシンの構築(自作PC)
さて、本格的に機械学習を勉強し始めて2ヶ月ぐらいとなり、そろそろDeepLearningやるか!と思い今まで使っていたvmware上のubuntuでcuda関連をいじったがよくわからなくなったので、思い切ってwindowsを消してubuntuをインストールして、ディープラーニングマシンを構築しようと思いました(^^)
スペック
ubuntu 14.04 isoのダウンロード
Ubuntu 14.04 LTS 日本語 Remix リリース | Ubuntu Japanese Team
DVDに焼いてインストールします。
インストールし終わったら、まずはシステムの更新。
$ sudo apt-get update $ sudo apt-get dist-upgrade
上:パッケージ構成を変えない範囲でアップグレードする
下:パッケージ構成の変更に追随してアップグレード
NVIDIAのドライバと CUDAのインストール
デフォルトでnouveauというドライバが入っていますが、CUDAをインストールする際にトラブルを色々起こすそうなので、まずは無効化します。
/etc/modprobe.d/blacklist-nouveau.conf
というファイルを制作し、以下を記述します。
blacklist nouveau options nouveau modeset=0
その後、以下の謎の呪文を唱えます。
$ sudo update-initramfs -u
CUDAのインストール
CUDA 7.5 Downloads | NVIDIA Developer
このように選択していき、
downloadをクリックします。
ダウンロードしたファイルのディレクトリに移動して、
$ sudo dpkg -i cuda-repo-ubuntu1404_7.5-18_amd64.deb $ udo apt-get update $ sudo apt-get install cuda
インストールには時間がかかります。
終わったら、.bashrcに以下を記述します。
export CUDA_HOME=/usr/local/cuda-7.5 export PATH=${CUDA_HOME}/bin:$PATH export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:$LD_LIBRARY_PATH
$ source .bashrc
その後再起動。
python関連のインストール
まずはpythonコンパイル時に必要なパッケージをインストールする。
$ sudo apt-get install git gcc make openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev
pyenvのインストール
githubからダウンロードします。
$ cd /usr/local/ $ sudo git clone git://github.com/yyuu/pyenv.git ./pyenv $ sudo mkdir -p ./pyenv/versions ./pyenv/shims
PATH設定
/etc/profile.d/pyenv.shを作成します。
$ echo 'export PYENV_ROOT="/usr/local/pyenv"' | sudo tee -a /etc/profile.d/pyenv.sh $ echo 'export PATH="${PYENV_ROOT}/shims:${PYENV_ROOT}/bin:${PATH}"' | sudo tee -a /etc/profile.d/pyenv.sh $ source /etc/profile.d/pyenv.sh
sudo時にも設定を反映させたい
$ sudo visudo
以下のように設定。
#Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin Defaults env_keep += "PATH" Defaults env_keep += "PYENV_ROOT"
pythonをインストールします
まずは、インストールできるもののリストを表示します。
$ pyenv install --list
現時点(2016/3/1)時点では3.5.1が最新だったので、それをダウンロードします。
numpyなどのパッケージを個別にインストールするのはめんどくさいので、Anacondaもダウンロードします。
$ sudo pyenv install 3.5.1 $ sudo pyenv install anaconda3-2.5.0 $ sudo pyenv global anaconda3-2.5.0 $ sudo pyenv local anaconda3-2.5.0 $ pyenv versions
cuDNNのインストール
NVIDIA cuDNN | NVIDIA Developer
このサイトで登録を行う。(数日かかる)
上から3番目の”cuDNN v4 Library for Linux”をクリック。
ダウロードして解凍。
すべてコピーしていきます。
sudo cp cudnn.h /usr/local/cuda/include/ sudo cp libcudnn.so /usr/local/cuda/lib64/ sudo cp libcudnn.so.4 /usr/local/cuda/lib64/ sudo cp libcudnn.so.4.0.7 /usr/local/cuda/lib64/ sudo cp libcudnn_static.a /usr/local/cuda/lib64/
あとは必要なものをダウロードしていきます
$ pip install --upgrade pip $ sudo apt-get install libhdf5-dev $ sudo pip install protobuf $ sudo pip install -U setuptool $ sudo pip install -U cython $ sudo pip install chainer
これで一通りの設定が終わりました!
やっとディープラーニングマシンが完成したので、chainerを使ってDeepLearningの勉強をしていこうと思います。