めもめも

このブログに記載の内容は個人の見解であり、必ずしも所属組織の立場、戦略、意見を代表するものではありません。

JupyterでTensorFlowが使えるDockerイメージ

Jupyterとは?

まず、Jupyterの紹介をすると、これは、Python(IPython)による対話的なデータ分析処理をWebブラウザ上の「ノートブック」で実施するツールです。下記のように、Markdownで記述した文章とコード、そして、その実行結果が記録されていきます。

作成したノートブックは、JSON形式でエクスポートしてGitHubで共有することができます。GitHubのWebサイトでは、自動的にノートブック形式にレンダリングして表示されるようになっています。現在は、Tex形式の数式がうまく表示されない問題があるようですが、下記のような感じになります。

ロジスティック回帰による二項分類器の作成

また、受け取ったノートブックは、自由にコードを修正して再実行することができますので、データ分析のコードとその説明をノートブックにまとめておけば、「実行できる教科書」が実現することになります。

TensorFlowとは?

Googleが公開している、DeepLearningのライブラリです。環境を整えれば、JupyterのノートブックからTensorFlowを利用することも可能です。

ここでは、そのような環境をDockerイメージで用意しておいたので、その使い方を説明します。

TensorFlowについては、下記を参照ください。

enakai00.hatenablog.com

ちなみに、Google Cloud Platformでは、現在、「Google Cloud Datalab(Beta)」として、Jupyterが利用できるようになっています。

・参考:What is Google Cloud Datalab?

GCEの仮想マシンでJupyterが起動するようになっており、TensorFlowの他に、BigQueryなども呼び出せるようになっています。

作り方

Dockerfileを公開しているので、こちらをご利用ください。

Dockerfile for Jupyter with TensorFlow

作成済みのイメージは、Docker Hub上で、「enakai00/jupyter_tensorflow」として公開してあります。

使い方

Docker Hubで公開しているイメージを用いて起動する場合は、次のコマンドになります。環境変数PASSWORDには、ログインパスワードを指定します。

# docker run -itd --name jupyter -p 8888:8888 -e PASSWORD=hogehoge enakai00/jupyter_tensorflow:latest

この後、Webブラウザから「http://(Dockerホスト):8888」にアクセスして、先ほど設定したパスワードを入力すると、Jupyterが利用できます。

GitHubから入手したノートブックは、Filesタブの「Upload」で環境にアップロードして使用することができます。

ノートブック画面の操作方法については、おググりいただければと思います。たとえば、下記などが参考になります。

qiita.com