はじめてのテンサーフローワークショップに参加しました


はじめてのテンサーフローワークショップに参加しました

Workshop: Getting Started・ワークショップ:はじめて­のテンサーフロー
http://www.meetup.com/TensorFlow-Tokyo/events/227846862/?eventId=227846862

こんにちは。2016年こそはディープラーニングを使いこなそう!という意気込みの谷岡です。最近巷で噂になってるTensorFlowの勉強会(ワークショップ)が六本木ヒルズで開かれると聞いて、意気込んで参加しました。

000. みんな英語で話してる

TensorFlow Tokyo
http://www.meetup.com/TensorFlow-Tokyo/

MeetupでDescriptionを読んでみると気がつきますが、このワークショップの主催者、参加者のほとんどが外国人の方でした。そのため、みんな英語で会話していて、ぼくみたいな英語べたでソーシャルじゃないエンジニアは、アウェー感を感じてしまいました。(でもビールも飲めたし、なんとなく楽しかったですよ。)

001. 公式ページに行く

そんなこんなで、20時ごろからワークショップは始まりました。まずはTensorFlowの公式ページにアクセスします。

TensorFlow
https://www.tensorflow.org/

そして[GET STARTED]ボタンを何も読まずプッシュ!

010. インストールする

Pip Installation
https://www.tensorflow.org/versions/master/get_started/os_setup.html#pip-installation

いろんなドキュメントが用意されているので、詳しく知りたい人は読みましょう。
今日のぼくの目的は、まずTensorFlowが動くとこまでなので、すっとばして Pip Installation へ進みます。

ぼくのマシンはMacBook Airなので、以下の流れでインストールします。

# Mac OS X
$ sudo easy_install pip

$ sudo easy_install --upgrade six
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.6.0-py2-none-any.whl

$ sudo pip install --upgrade virtualenv

$ virtualenv --system-site-packages ~/tensorflow

$ source ~/tensorflow/bin/activate  # If using bash
# Mac OS X, CPU only:
(tensorflow)$ pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.6.0-py2-none-any.whl

これでTensorFlowがコマンドラインモードで起動できました。停止したい場合は、deactivateします。

(tensorflow)$ deactivate

おお、なんかできてる気がする。

011. コマンドラインで動かしてみる

pythonのコマンドラインで動かしてみます。

$ python
...
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print(sess.run(hello))
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> print(sess.run(a + b))
42
>>>

てな感じで打ってみると、動く!

100. demo modelを動かしてみる

demo modelを動かしてみました。一度動かし始めると時間がかかります。会場では終わらなくて、結局家に帰って夜中になるまで動いてました。たぶん、2時間くらい?

ぼくの環境では、モデルのパスは以下でした。

/Library/python/2.7/site-packages/tensorflow

そして、こんな感じで実行します。

$ python -c 'import os; import inspect; import tensorflow; print(os.path.dirname(inspect.getfile(tensorflow)))'

または、こんな感じ。両方動くはず。

$ python /Library/python/2.7/site-packages/tensorflow/models/image/mnist/convolutional.py

101. reactivekk社のデモを動かす

reactivekk社が公開してくれているipython notebookのデモを動かしてみます。

tensorflow-getting-started
https://github.com/reactivekk/tensorflow-getting-started

まずは任意のフォルダで、git cloneしてスクリプトをダウンロードします。

git clone https://github.com/reactivekk/tensorflow-getting-started

次に、ipython notebookをインストールします。ipython notebookは、pythonをブラウザ上で実行して、visualな表示もできる優れものなので、是非インストールしましょう。まず必要なライブラリをインストールします。

sudo pip install numpy matplotlib
sudo pip install ipython

インストールできたら、ipython notebookのサーバを起動します。

ipython notebook

自動的にブラウザが開くので、そこから先ほどgit cloneしたスクリプト"TensorFlow Mnist.ipynb"をアップロード(add)します。アップロードできたら、"TensorFlow Mnist.ipynb"をクリックしてみましょう。用意されたスクリプトが表示できたはずです。

手始めに一行目の"import tensorflow as tf"を実行してみます。ipythonでのpythonの実行方法は、「Shift+Enter」です。

import tensorflow as tf [Shift+Enter]

これでうまくいった人はおめでとうございます。あなたは選ばれた人です。

110. 環境を更新してやりなおす

ここで私の環境ではいろいろエラーが出てしまいました。以下の情報を参考に、ごにょごにょしてから再度実行してみます。

はじめるiPython notebook
http://qiita.com/icoxfog417/items/175f69d06f4e590face9
Starting the ipython notebook
http://stackoverflow.com/questions/24795239/starting-the-ipython-notebook
ImportError: No module named notebook.notebookapp
http://stackoverflow.com/questions/31401890/importerror-no-module-named-notebook-notebookapp

よし、もう一度ipython notebookを起動。

ipython notebook

そんで、ブラウザ上でtensorflowをimport。

import tensorflow as tf [Shift+Enter]

お、エラーがなくなった!そして手書き文字認識のサンプルも動いた!やったー!

111. おわりに

そんなこんなでTensorFlowはじめました。今後は、モデルの作り方や応用方法を学習していきたいと思います。TensorFlow Tokyoのみなさん、会場を貸していただいたQuelonのみなさん、デモを公開していただいたreactivekkのみなさん、どうもありがとうございました。

次のワークショップも期待しています。