Ubuntu
TensorFlow

UbuntuでTensorFlowを使うための準備

TensorFlowをBash on Windowで使用するために行った手順をまとめておく

Ubuntuなら同じ方法で準備できるはず

Pythonのバージョンは2.7

参考

1. TensorFlowをCloneする

git clone https://github.com/tensorflow/tensorflow.git

でTensorFlowをCloneする

2. Bazelをインストールする

JDK8をインストール

sudo apt-get update

sudo apt-get install openjdk-8-jdk

を実行してJDK8をインストール

BazelディストリビューションのURIをパッケージソースとして追加(1度だけのセットアップ)

echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list

curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -

を実行

Bazelのインストールとアップデート

sudo apt-get update && sudo apt-get install bazel

でインストールとアップデート

一度インストールした後は

sudo apt-get install bazel

でアップデートできる

3. TensorFlowのPython依存関係をインストールする

TensorFlowのインストールに必要なPythonのパッケージは以下の通り

  • numpy (TensorFlowに必要な数値処理パッケージ)
  • dev (Pythonに拡張機能を追加することができる)
  • pip (特定のPythonパッケージをインストールして管理することができる)
  • wheel (Python圧縮パッケージをwheel(.whl)形式で管理することができる)
sudo apt-get install python-numpy python-dev python-pip python-wheel #Python2.7

sudo apt-get install python3-numpy python3-dev python3-pip python3-wheel #Python3

4. インストールを設定する

ソースツリーのルートにconfigueという名前のbashスクリプトが含まれている

configureでは、TensorFlow依存関係のパス名を指定し、コンパイルフラグなどのその他のビルド構成オプションを指定するように求められる

まず、

cd tensorflow #作成されたトップレベルのディレクトリに移動する

./configure

のようにconfigureを実行する

すると、

Please specify the location of python. [Default is /usr/bin/python]: 

Please input the desired Python library path to use.  Default is [/usr/local/lib/python2.7/dist-packages]

Do you wish to build TensorFlow with jemalloc as malloc support? [Y/n]:
jemalloc as malloc support will be enabled for TensorFlow

Do you wish to build TensorFlow with Google Cloud Platform support? [y/N]:

Do you wish to build TensorFlow with Hadoop File System support? [y/N]: 
Do you wish to build TensorFlow with XLA JIT support? [y/N]: 

Do you wish to build TensorFlow with GDR support? [y/N]: 

Do you wish to build TensorFlow with VERBS support? [y/N]:

Do you wish to build TensorFlow with OpenCL support? [y/N]: 

Do you wish to build TensorFlow with CUDA support? [y/N]: 

Do you wish to build TensorFlow with MPI support? [y/N]: 

...

のようにいくつか設定に関する質問をされるので、自分の環境に合うように質問に答えていく

5. pipパッケージを構築する

bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package

を実行してTensorFlowのpipパッケージを構築する

構築にはしばらく時間がかかるので気長に待つこと

実行が完了するとカレントディレクトリ下の/tensorflow/tools/pip_packageの中にbuild_pip_package.shというスクリプトが作成されているので、

./tensorflow/tools/pip_package/build_pip_package.sh /tmp/tensorflow_pkg

/tmp/tensorflow_pkg.whlファイルを生成する

6. pipパッケージをインストールする

sudo pip install /tmp/tensorflow_pkg/tensorflow-*** #バージョンなどによって名前が異なる

を実行することでpipパッケージをインストールすることができる

7. インストールが正しくできているか検証

まず、cdコマンドでconfigureコマンドを呼び出したtensorflowサブディレクトリ以外のディレクトリに移動する

移動したら

python

でPythonを起動し

>>> import tensorflow as tf 

>>> hello = tf.constant('Hello, TensorFlow!') 

>>> sess = tf.Session() 

>>> print(sess.run(hello)) 

の順に入力する

Hello, TensorFlow!と表示されれば正常にインストールが行われている