130
125

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Python未経験エンジニアがMacでTensorFlowの実行環境+快適なコーディング環境を構築するまで

Last updated at Posted at 2016-07-21

Python未経験者がGoogleが公開した機械学習ライブラリであるTensorFlowの実行環境と快適なコーディング環境を整えるためしっくはっくした記録です
Python自体も快適にコーディングしたかったので、Mac上で本記事作成時点の最新版であるPython 3.5.2 + PyCharmでTensorFlowのMNISTデモをワンクリックで実行できるまでの環境を構築してみます

Homebrewのインストール

パッケージ管理ツールであるHomebrewを初めにインストールします

console
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

既にインストールされている場合も念のためアップデートしておくことをおすすめします

console
$ brew update

※インストール時にエラーが起こる場合はXcodeのコマンドラインツールをインストールすると解決する場合があります。Xcodeは事前にインストールしてください!

console
$ xcode-select --install

pyenv-virtualenvのインストール

Macには初めからPythonがインストールされていますがバージョンが2.x系だったり、El Capitanから導入されたSIPのせいで融通が効かなかったりするので
pyenvから最新版のPythonを入れ、さらにpyenv-virtualenvを使って環境を切り分けるのが良いと思います

以下のコマンドからツールのインストールを行ってください

console
$ brew install pyenv-virtualenv

Python最新版のインストール

まずはPython最新版をインストールします(ここでは3.5.2をインストールしています)
インストールできる一覧を表示するにはpyenv install -lと打ち込んで下さい

console
$ pyenv install 3.5.2
$ pyenv rehash

pyenv installでエラーが起こる場合はXcodeのコマンドラインツールをインストールすると解決する場合があります(2度目)

console
$ xcode-select --install

Python 3.5.2のTensorFlow用の環境を作成

TensorFlowの実行環境を独立させるため、インストールしたPython 3.5.2を元に名前をつけて環境を作ります。こうしておくことでプラグイン同士の競合によるエラーを減らしたり気軽に別のバージョンを試したりと仮想環境に近いことが出来ます

以下の"TensorFlow"の部分は環境の名前なので適宜変更して下さい

console
$ pyenv virtualenv 3.5.2 TensorFlow
$ pyenv rehash

作成したTensorFlow用の環境へ切り替え

pyenv globalを使って、作成したTensorFlow環境へ変更します

console
$ pyenv global TensorFlow

その後でpythonコマンドをたたくと3.5.2に変わっているはずです

console
$ python -V
Python 3.5.2

もし以下のようにpyenv内ではちゃんと切り替わっているのに、pythonコマンドでは参照が変更されていない場合は、、、

console
$ pyenv version
TensorFlow (set by /Users/hogehoge/.pyenv/version)
$ python -V
Python 2.7.10

この辺の設定を追加してみて下さい(3行目だけでもいいかも)

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

またTensorFlowインストール後は必要に応じて以下で環境を元に戻せます

console
$ pyenv global system

環境の指定は後述するPyCharmで行うので、必ずしもpythonコマンドがTensorFlow環境になっている必要はありません
もちろんpythonコマンドから実行する場合は必要ですが。

pipのインストール

次にPython向けのプラグイン管理ツールであるpipをインストールします
最新のPythonをインストールしていれば最初から入ってるらしいですが念のため。

console
$ sudo easy_install pip
$ sudo pip install --upgrade pip

TensorFlowのインストール

ここでようやくTensorFlowのインストールに移ります。

console
$ pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.9.0-py3-none-any.whl

TensorFlowのインストールURLはバージョン指定のようなので最新版は公式から確認して下さい。ここではv0.9を指定しています。

PyCharmのインストール

そして快適なPythonコーディング環境を構築するため、JetBrainネ申が開発したIDEであるPyCharmを以下からダウンロードします
https://www.jetbrains.com/pycharm/download/

補完やブレークポイントもバッチリ動作するしCommunity Editionなら無料で使うことが出来ます。スバラシイ!

PyCharmでプロジェクト作成&TensorFlow環境にプロジェクト設定を適用

PyCharmを起動したら適当にプロジェクトを作成して下さい。
その際にCreate Projectダイアログ上のInterpreterプルダウンから「3.5.2 virtualenv at ~/.pyenv/versions/TensorFlow」を指定して下さい。

また、あとから実行環境を変更する場合にはPreferences -> Project: PROJECT_NAME -> Project Interpreterのプルダウンからも変更できます

TensorFlowのMNISTデモを稼働させる

TensorFlowのMNISTデモの実装自体は公式のチュートリアルや他の解説記事を参考にソースとデータを配置して下さい(丸投げ)
とりあえず動かすだけならお手軽だったので私は↓のサイトの手順に従いました。
http://www.trifields.jp/try-tutorial-mnist-for-ml-beginners-of-tensorflow-1713

一通りソースとデータが用意出来たらおもむろにRunをクリックすれば画面下のコンソールに結果が出るはず
※コンソール上で実行する場合はpyenvで環境がTensorFlow用のものになっているか注意してください

おわり

すでにPythonをガリガリ使っている方はなんてことないと思いますが、TensorFlowを動かしてみたいがためにPythonを初めて触る私みたいな人だと、色々と勝手が違ってつまずくことがあったので備忘録として流れをまとめました。

インストールの手順はこの記事を参考にしました
http://qiita.com/hatapu/items/054dbab03607c47cb84f

130
125
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
130
125

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?