2016年2月7日日曜日

Docker コンテナ上で Tensorflow を触ってみた

Google の TensorFlow とかいうディープラーニングモジュールを触ってみる。
ホストPC(Mac) に依存関係を意識して個々のモジュールをインストールするのが激しく面倒なので、開発環境はDocker使います。

* Docker を使うと、ホストPCと隔離された環境でアプリケーションが実行できます。必要な開発ツールがインストール済みのイメージがクラウドに上がってるのでそれ使います。(依存関係の解決とか、いろいろクソ面倒なステップをスキップできて幸せです)

# boot2docker を始めは使っていましたが、deprecated な warning がコンソールに履かれてたので、docker-machine に移行しました。

資料
* 簡単に大雑把に把握する目的で dotinstall の Docker 入門
  http://dotinstall.com/lessons/basic_docker

* 一冊くらいは薄い本読んでおく


セットアップ

ホストPC側

* ポートフォワーディング設定(8888はipython向け、6006はtensorboard向け)しつつ tensorflow インストール済みのイメージを実行
  $ docker run -it -p 8888:8888 -p 6006:6006 b.gcr.io/tensorflow/tensorflow /bin/bash



* Virtualbox のポートフォワーディング設定をします( 8888, 6006 )

* コンテナの全削除
 $ docker ps -aq | xargs docker rm

Docker コンテナ側
  $ ipython notebook
  $ tensorboard --logdir=<PATH_TO_LOG_DIR>

プログラミング
http://localhost:8888/notebooks/Untitled.ipynb にアクセス。
matplotlib の動作確認。インライン描画の確認。

%pylab inline
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(-3, 3, 0.1)
y = np.sin(x)
plt.plot(x, y)

0 件のコメント:

コメントを投稿