Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
39
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

posted at

updated at

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

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

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/

image

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

010. インストールする

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

image

いろんなドキュメントが用意されているので、詳しく知りたい人は読みましょう。
今日のぼくの目的は、まず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]

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

image

111. おわりに

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

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

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
39
Help us understand the problem. What are the problem?