Azure + Tensorflow + Kerasで画像認識やってみた part2

#Azure#Keras#Tensorflow

はじめに

前回は環境構築で終わってしまいました。 http://roy29fuku.com/machine-learninng/deep-learning/convolutional-neural-network/azure-tensorflow-keras%E3%81%A7%E7%94%BB%E5%83%8F%E8%AA%8D%E8%AD%98%E3%82%84%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F/   今回は実際に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を使ってみよう

次回

http://roy29fuku.com/machine-learninng/deep-learning/convolutional-neural-network/azure-tensorflow-keras%E3%81%A7%E7%94%BB%E5%83%8F%E8%AA%8D%E8%AD%98%E3%82%84%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F-part3/

参考

初級: 人工知能は人間を超えるか

人工知能、機械学習、ディープラーニング、そこらへんのバズワードをさっくり知りたい人向け。 人工知能が普及したらどうなるのか、読み物として面白いです。 ゴリゴリ開発したい人には向いてないです。

人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書)

中級: Pythonによるスクレイピング&機械学習

スクレイピングでデータを集めて、自分で学習させるところまで学べます。 全編が機械学習というわけではありませんが、実践的に機械学習を使って何かをしようとした時に付随して必要になる知識を勉強するのに役立ちます。 「機械学習のアルゴリズム自体を構築したい」という人より、「機械学習を使って何かしたい」という人におすすめ。

Pythonによるスクレイピング&機械学習 開発テクニック BeautifulSoup,scikit-learn,TensorFlowを使ってみよう

上級: ゼロから作るDeep Learning

学びの深い一冊です。ディープラーニングの中身を細かく解剖し、一つずつ自分で構築します。 Tensorflowなどのライブラリを使わないので、これらのライブラリの中身がどうなっているかということも学べます。 機械学習をブラックボックスではなくしっかり理解したい人向けです。

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装