「PythonとKerasによるDeep Learning」を理解する
Pythonベースのディープラーニングフレームワーク Kerasの開発者である筆者が実践解説
オリジナルサイト
Part1 ディープラーニングの紹介
第1章:人工知能(AI)、機械学習、ディープラーニングの基本的なコンテキストと予備知識を提供第2章:ディープラーニングに取り組むために必要な基本概念(テンソル、テンソル演算、勾配降下法、バックプロパゲーション)を紹介
第3章:ディープラーニングフレームワークであるKerasの紹介。分類タスクと回帰タスクを処理する単純なニューラルネットワーク
第4章:機械学習の一般的なワークフローとよくある落とし穴・解決法を詳解
Part2 ディープラーニングの応用例としてコンピュータビジョンと自然言語処理を解説
第5章:画像分類に焦点を合わせ、コンピュータビジョンの実践的な例を幅広く取り上げる
第6章:テキストや時系列といったシーケンスデータを処理するための手法
第7章:最先端のディープラーニングモデルを構築するための高度な手法を紹介
第8章:画像やテキストを作成する能力を持つディープラーニングモデルであり、芸術的な結果をもたらすことがあるジェネレーティブモデルの紹介
第9章:本書の総括。ディープラーニングの限界とその未来を予測

開発環境
Ubuntsu 16.04
NVIDIA
cv@cv:~$ nvidia-smi
Sat Aug 18 08:00:26 2018
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.77 Driver Version: 390.77 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 106... Off | 00000000:01:00.0 On | N/A |
| 40% 30C P8 8W / 120W | 272MiB / 6070MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 934 G /usr/lib/xorg/Xorg 172MiB |
| 0 1858 G compiz 43MiB |
| 0 2102 G ...-token=B7E095F17A405E37F9FCB3EC4CF1C7A9 54MiB |
+-----------------------------------------------------------------------------+
cv@cv:~$ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
cv@cv:~$ sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
cuDNN 7.2のインストール
サンプルコードをホームディレクトリにコピーするシェルスクリプト(cuda-install-samples-9.0.sh)は
(python-notebooks) cv@cv:~$ python3 -c 'import keras; print(keras.__version__)'
Using TensorFlow backend.
2.2.2
NVIDIA
cv@cv:~$ nvidia-smi
Sat Aug 18 08:00:26 2018
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.77 Driver Version: 390.77 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 106... Off | 00000000:01:00.0 On | N/A |
| 40% 30C P8 8W / 120W | 272MiB / 6070MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 934 G /usr/lib/xorg/Xorg 172MiB |
| 0 1858 G compiz 43MiB |
| 0 2102 G ...-token=B7E095F17A405E37F9FCB3EC4CF1C7A9 54MiB |
+-----------------------------------------------------------------------------+
cv@cv:~$ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
cv@cv:~$ sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
cv@cv:~$ sudo apt-get update
cv@cv:~$ sudo apt-get install cuda-9-0
sudo apt autoremove
cv@cv:~$ sudo apt-get install cuda-9-0
sudo apt autoremove
cv@cv:~$ sudo reboot
cv@cv:~$ nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 396.51 Driver Version: 396.51 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 106... Off | 00000000:01:00.0 On | N/A |
| 40% 30C P8 8W / 120W | 260MiB / 6070MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 941 G /usr/lib/xorg/Xorg 172MiB |
| 0 1830 G compiz 43MiB |
| 0 2094 G ...-token=70D6AEBF1F42882256133F025747D078 42MiB |
+-----------------------------------------------------------------------------+
cv@cv:~$
cv@cv:~$ nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 396.51 Driver Version: 396.51 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 106... Off | 00000000:01:00.0 On | N/A |
| 40% 30C P8 8W / 120W | 260MiB / 6070MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 941 G /usr/lib/xorg/Xorg 172MiB |
| 0 1830 G compiz 43MiB |
| 0 2094 G ...-token=70D6AEBF1F42882256133F025747D078 42MiB |
+-----------------------------------------------------------------------------+
cv@cv:~$
具体的には以下の3個のdebパッケージをダウンロードする。
- cuDNN v7.2.* Runtime Library for Ubuntu16.04 (Deb)
- cuDNN v7.2.* Developer Library for Ubuntu16.04 (Deb)
- cuDNN v7.2.* Code Samples and User Guide for Ubuntu16.04 (Deb)
- 以下のコマンドを実行して、cuDNNをインストール。
サンプルコードをホームディレクトリにコピーするシェルスクリプト(cuda-install-samples-9.0.sh)は
/usr/local/cuda-9.0/bin/
cuda-install-samples-9.0.sh ~ # ホームディレクトリにサンプルコードをコピー。cd ~/NVIDIA_CUDA-9.0_Samples/
make
cd 2_Graphics/volumeRender # サンプルの実行ファイルがあるディレクトリに移動。
./volumeRender
参考
https://qiita.com/JeJeNeNo/items/b30597918db3781e20c
https://qiita.com/JeJeNeNo/items/b30597918db3781e20c
Install TensorFlow with GPU support
cv@cv:~$ sudo pip install tensorflow-gpu
cv@cv:~$ sudo pip install keras
cv@cv:~$ git clone https://github.com/fchollet/keras
cv@cv:~$ cd keras
cv@cv:~/keras$ python examples/mnist_cnn.py
Anaconda (Python 3.6 version)
cv@cv:~$ bash ~/ダウンロード/Anaconda3-5.2.0-Linux-x86_64.sh
Welcome to Anaconda3 5.2.0
PREFIX=/home/cv/anaco
installing: intel-openmp-2018.0.0-8 ...
installing: mkl-2018.0.2-1 ...
cv@cv:~$ conda -V
conda 4.5.4
cv@cv:~$ jupyter notebook
Conda
cv@cv:~$ conda info --envs
# conda environments:
base * /home/cv/anaconda3
cv@cv:~$ conda update conda
conda: 4.5.4-py36_0 --> 4.5.10-py36_0
# To activate this environment, use:
# > source activate python-notebooks
#
# To deactivate an active environment, use:
# > source deactivate
cv@cv:~$ conda env list
# conda environments:
base * /home/cv/anaconda3
python-notebooks /home/cv/anaconda3/envs/python-notebooks
#Tensorflow install
https://www.tensorflow.org/install/install_linux
sudo pip3 install -U tensorflow # Python 3.n
#virtual environment
cv@cv:~$ source activate python-notebooks
(python-notebooks) cv@cv:~$
(python-notebooks) cv@cv:~/keras$ sudo pip uninstall tensorflow
(python-notebooks) cv@cv:~$ sudo pip uninstall keras
(python-notebooks) cv@cv:~$ sudo pip3 install -U tensorflow
(python-notebooks) cv@cv:~$ sudo pip3 install keras
(python-notebooks) cv@cv:~$ conda list
python3 -c 'import tensorflow as tf; print(tf.__version__)'
(python-notebooks) cv@cv:~$ python3 -c 'import tensorflow as tf; print(tf.__version__)'
1.10.0
(python-notebooks) cv@cv:~$ python3 -c 'import keras; print(keras.__version__)'
Using TensorFlow backend.
2.2.2