TensorFlowは、分散学習をサポートしているGoogle製の実績あるディープラーニングライブラリだ。

PythonやUNIXの扱いには慣れているが、それほど機械学習や数学にはあまり触れたことが無い方や、逆にアカデミックな世界にいるもののプログラミングをそれほど得意としていない方までディープラーニングを使ってみようと感じている人は増えてきているのではないだろうか。

そこで、本記事ではそういった方でも、すぐにTensorFlowを使い始められるようにインストール方法を解説している。おそらく、長くとも5分程度で終わるはずだ。

pyenvの環境構築

pyenvは、複数のPythonのバージョンを管理できるコマンドラインツールでPython2.x系の環境や3.x系の環境を複数持っておくことで使いたいツールをすぐに試すことが出来るようになる。

pyenvが無くてもTensorFlowは使えるが、ライブラリの環境が最新版ではなかったりと様々な問題が発生するので、一緒に環境構築しておくことをオススメしておく。

Macをお使いの方

Mac OSをお使いの方であれば、Homebrewでインストールすることができる。以下のコマンドでインストールしよう。

  
$ brew install pyenv
  

その他のOSをお使いの方

その他のOSをお使いの方は、GitHubのレポジトリからインストールしよう。

Ubuntuを使っている方は、まず必要なパッケージをインストールする必要がある。

  
$ sudo apt-get update
$ sudo apt-get install -y git build-essential libssl-dev language-pack-id
  

pyenvでPythonをインストールするときにロケールが設定されていないと、エラーが出ることがあるので先に設定しておこう。

  
$ export LC_ALL=C
$ sudo dpkg-reconfigure locales
  

pyenvのレポジトリから、ホームディレクトリ下の.pyenvディレクトリにクローンする。

  
$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
  

すると、$HOME/.pyenvにレポジトリがクローンされたはずだ。

では、次にpyenvに必要な環境変数を設定していく。今後もシェルの起動時に環境変数が設定されるように~/.bash_profile~/.bashrc * などのシェルの設定ファイルに以下のコマンドで変数定義のコードを追加する。

  
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
  

* シェルの環境がbashではなく、zshであれば~/.zshrcなど環境に合わせて設定ファイルが違うので注意しよう。

設定ファイルを再読込するために、シェルを再起動する。

  
$ exec $SHELL
  

これで、自由にPythonのバージョンをインストールできるようになったはずだ。試しにPython3.5.2をインストールしてみよう。

  
$ pyenv install 3.5.2
  

最後に、3.5.2のバージョンを有効にする。グローバルの環境を3.5.2にする場合は以下のコマンドを使う。

  
$ pyenv global 3.5.2
  

カレントディレクトリ下の環境のみを3.5.2にする場合は以下のコマンドを使おう。

  
$ pyenv local 3.5.2
  

pipでTensorFlowをインストール

TensorFlowをpipを使ってインストールする場合は、pipのバージョンが8.1以上である必要があるので、まずは念のためpipを最新バージョンにアップグレードしておこう。

  
$ pip install --upgrade pip
  

CPU版

CPU版は以下のコマンドでインストールすることが出来る。

  
$ pip install tensorflow
  

GPU版

GPUをサポートするバージョンは、以下のコマンドでインストールしよう。

  
$ pip install tensorflow-gpu
  

動作確認

きちんとインストールされているか確かめるために、Pythonのインタラクティブシェルから動作確認をしてみよう。

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

何も問題が無ければ、無事にコンソールにb'Hello, TensorFlow!'と表示されたはずだ。

まとめ

TensorFlowの初期は、環境に合わせてバイナリを指定してインストールしなければならなかったが、今ではコマンド1つでインストール出来るようになった。

インストールを終えたら、まずはチュートリアルなどをこなして何も問題がないか確かめながら使い方を覚えていこう。