Azure + Tensorflow + Kerasで画像認識やってみた part2
目次
はじめに
前回は環境構築で終わってしまいました。
今回は実際にMNISTを試して見てGPUの性能を確認します。
Macで実行
まず比較対象としてMacで実行します。
こちらを参考に進めます。
Python: Keras/TensorFlow の学習を GPU で高速化する (Mac OS X)
1時間弱かかりました。
Azure GPUインスタンスで実行
の前に諸々セットする必要があるのでpyenvとかanacondaとか準備。
以下は自分用のセットアップなので適宜好きなように変更しちゃってください。
これまでCent OSばっかり触っていたのでUbuntu慣れないな。。。
PyenvによるPython3.x環境構築(CentOS, Ubuntu)などを参考に。
必要なパッケージをインストール。
sudo apt-get install git gcc make openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev
pyenvをインストール。
cd /usr/local/bin
git clone git://github.com/yyuu/pyenv.git ./pyenv
sudo mkdir -p ./pyenv/versions ./pyenv/shims
echo 'export PYENV_ROOT="/usr/local/bin/pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc
確認
pyenv --version
pyenv 1.0.10-22-g3292200
良いですね。
anacondaをインストール
pyenv install anaconda3-4.3.0
pyenv rehash
pyenv global anaconda3-4.3.0
GPU用のTensorflow、Kerasをインストール。
pip install tensorflow-gpu
pip install keras
Macと同様に実行してみます。
time python mnist_cnn.py
2分弱!
これがGPU…
今回はチュートリアルでしたが、次回からは実際に自分でCNNを理解して画像認識を行なっていきます。
ひとまず、以下の書籍を参考に食材を判別して見たいと思います。
Pythonによるスクレイピング&機械学習 開発テクニック BeautifulSoup,scikit-learn,TensorFlowを使ってみよう
次回
参考
初級: 人工知能は人間を超えるか
人工知能、機械学習、ディープラーニング、そこらへんのバズワードをさっくり知りたい人向け。
人工知能が普及したらどうなるのか、読み物として面白いです。
ゴリゴリ開発したい人には向いてないです。
中級: Pythonによるスクレイピング&機械学習
スクレイピングでデータを集めて、自分で学習させるところまで学べます。
全編が機械学習というわけではありませんが、実践的に機械学習を使って何かをしようとした時に付随して必要になる知識を勉強するのに役立ちます。
「機械学習のアルゴリズム自体を構築したい」という人より、「機械学習を使って何かしたい」という人におすすめ。
上級: ゼロから作るDeep Learning
学びの深い一冊です。ディープラーニングの中身を細かく解剖し、一つずつ自分で構築します。
Tensorflowなどのライブラリを使わないので、これらのライブラリの中身がどうなっているかということも学べます。
機械学習をブラックボックスではなくしっかり理解したい人向けです。