Help us understand the problem. What is going on with this article?

Pythonの環境構築からTensorFlowインストール

More than 1 year has passed since last update.

概要

pythonにあまり触れたことのない人が、Pythonでの開発環境を構築して、TensorFlowをインストールするところまで解説します。

前提

mac OSX Yosemite以上を想定しています。Linuxの場合は、ツール等のインストール方法が異なるため、注意してください。

pythonの仮想環境の整備 (オプション)

ここは必須ではありません。必要でない方は次の章まで飛ばしてください。

Macには初めからPythonが入っています。しかし、Python界隈では、Python2系とPython3系があり、ライブラリの充実度の関係から、なかなか3系に移行していけていません。そこで共存が必要になることもあります。

また、プロジェクトごとにライブラリのバージョンを管理したいことがあると思います。機械学習系のライブラリは数多く出ていますが、まだまだ黎明期で、高速でアップデートが行われています。前のバージョンで書いたものがすぐに動かなくなるので、迂闊にアップデートできません。そこで、同じライブラリでもプロジェクトごとに管理できると便利です。

これらを簡単にできる以下の2つのツールを導入します。

  • pyenv    →Pythonのバージョン切り替え
  • virtualenv  →プロジェクトごとの仮想環境ツール

参考:
Python3なTensorFlow環境構築 (Macとpyenv virtualenv)
pyenvを使ってMacにPythonの環境を構築する

pyenv

pyenvは、pythonのバージョンを切り替えるツールです。python2.7やpython3.5などを切り替えられます。
インストールは、

$ brew install pyenv

~/.profileに下記を記述します。

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"

これでpyenvのインストールは終わりです。
しかし最初は、systemという名前の、インストール時のシステムのpythonのバージョンしか入っていません。
pyenv versionsというコマンドで、現在入っているバージョンが確認できます。

$ pyenv versions
* system (set by /Users/someone/.pyenv/version)

Pythonが最初からシステム用に入っているので、これでも使えますが、とりあえず現状のpython2系最新の2.7.11と3系最新の3.51をインストールします。

$ pyenv install 2.7.11
Downloading Python-2.7.11.tgz...
-> https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
Installing Python-2.7.11...
Installed Python-2.7.11 to /Users/someone/.pyenv/versions/2.7.11

$ pyenv install 3.5.1
Downloading Python-3.5.1.tgz...
-> https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
Installing Python-3.5.1...
Installed Python-3.5.1 to /Users/someone/.pyenv/versions/3.5.1

再度pyenv versionsで確認すると

$ pyenv versions
* system (set by /Users/someone/.pyenv/version)
  2.7.11
  3.5.1

と、2.7.11と3.5.1がインストールされています。

現在の環境はsystemが選択されているため、pyenv globalコマンドで環境を切り替えます。

$ pyenv global 2.7.11
$ pyenv versions
  system
* 2.7.11 (set by /Users/someone/.pyenv/version)
  3.5.1

これでPython2.7.11上で作業することができます。

pyenv-virtualenv

さらに細かく仮想環境を作るときには、pyenv-virtualenvを使います。とても紛らわしいのですが、単体でvirtualenvというツールも存在し、pyenv-virtualenvと、単体のvirtualenvの2種類があるので、ドキュメントの調査等ではご注意ください。詳しくはこちら。今回は、pyenvの拡張であるpyenv-virtualenvを使います。

pyenv-virtualenvのインストールは

$ brew install pyenv-virtualenv

で終わります。
仮想環境の作成は、

$ pyenv virtualenv {pyenvのバージョン} {仮想環境名}

で作成することができます。それでは、TensorFlowの0.9.0をインストールする環境として、tensorflow0.9.0という名前で作ってみます。

$ pyenv virtualenv 2.7.11 tensorflow0.9.0
........
........
$ pyenv versions
  system
* 2.7.11 (set by /Users/ishiday/.pyenv/version)
  2.7.11/envs/tensorflow0.9.0
  3.5.1
  tensorflow0.9.0
$ pyenv global tensorflow0.9.0
$ pyenv versions
  system
  2.7.11
  2.7.11/envs/tensorflow0.9.0
  3.5.1
* tensorflow0.9.0 (set by /Users/ishiday/.pyenv/version)

仮想環境が作成できました。
しかしこの状態は、まだ仮想環境に入っていません。pyenv activateで仮想環境をアクティベートします。

$ pyenv activate
(tensorflow0.9.0) $ 

このように、アクティベートすると、仮想環境内であることを示すように、(仮想環境名) が前に付きます。次に紹介するpipでライブラリをインストールするときには、この状態で行います。
仮想環境から出る際は、pyenv deactivateでできます。

これでPython2.7.11でTensorFlowをインストールする仮想環境が整いました。

TensowFlow周りの開発環境の整備

TensowFlowを使う際に必要なライブラリをインストールします。

PyPI

PyPIはPythonのパッケージ管理ツールです。パイパイと呼びます。通常使うときのコマンドはpipです。ほとんど必須ツールなのでいれましょう。以下の場合は、デフォルトでPyPIはインストールされています。

  • Python2.7.9以降
  • Python3.4以降
  • pyenvを使用してインストールした場合

PyPIが入ってるか確かめるときは、

$ pip -V
pip 8.1.1 from /Library/Python/2.7/site-packages/pip-8.1.1-py2.7.egg (python 2.7)

でわかります。
入ってない場合は、以下のコマンドでインストールします。

curl -kL https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python

参考:
Pythonインストール(Mac編)
声に出して読みたい7つのPython用語

TensorFlowのインストール

PyPIでインストールできます。しかしパッケージ登録されているのではなく、ダウンロード先を指定してのインストールになります。環境に応じてソースが異なるため、適切に選択する必要があります。分かれるポイントは以下の通りです。

  • GPUの有無 CPUのみ/GPUあり
  • OSの種類 Linux / Mac
  • Pythonのバージョン 2系 / 3.4 / 3.5

選択するソースについては、公式サイトから確認されることを強くお勧めします。
https://www.tensorflow.org/versions/r0.9/get_started/os_setup.html#pip-installation

GPUがあると、学習速度が格段に向上します。NVidiaのグラフィックボード搭載したPCの場合、GPUをお勧めします。GPUありのバージョンをインストールする場合、Cuda Toolkit 7.5と cuDNN v4という、グラフィックボードを数値計算に用いるためのツールキットのインストールが必要です。この2つがないとインストールに失敗します。CUDAのインストールは鬼門で、かなりハマる場合があるのでご注意ください。

ここでは、

  • CPUのみ
  • Mac
  • Python2系

の条件で、現状で最新版の0.9.0をインストールします。この場合のソースは、
https://storage.googleapis.com/tensorflow/mac/tensorflow-0.9.0-py2-none-any.whl
となります。インストール方法は以下です。

$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/tensorflow-0.9.0-py2-none-any.whl
$ pip install --upgrade $TF_BINARY_URL

TensorFlowの動作確認

エラーなくインストールされたら、TensorFlowがちゃんと動作するか確認します。
公式のインストールテストをそのまま実行しましょう。

(tensorflow0.9.0) $ 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
>>> 

pythonとコマンドを打つと、コマンドラインでpythonが実行できるモードになります。
exit()で終了することができます。

ここまでくれば、無事、インストールが終わりました。
引き続いて、チュートリアルを行いましょう。
続きを執筆中です。

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
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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
ユーザーは見つかりませんでした