Python
機械学習
MachineLearning
TensorFlow

Windows版Anaconda上でTensorFlow +JupyterNotebook +Matplotlib の環境構築(2017年8月版)

2017/8/24 update

tensorflow 1.3.0が8/22、1.4.0が8/23にリリースされています。( GithubのRELEASE.mdページ
TensorFlow公式HPの「Installing TensorFlow on Windows  |  TensorFlow」では8/24現在、1.3のwhlファイルになっています。

(tensorflow)C:> pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.3.0-cp35-cp35m-win_amd64.whl 

1.3.0リリース後すぐに1.4.0がリリースされているのでwhlファイルもすぐに更新されそうです。公式HPで最新情報をチェックしてください☆彡

こんな人向け &ポリシー

  • JupyterNotebookでデータ分析とかしたい
  • TensorFlowをWindows上で直接使いたい
  • 一次ソースを明示する

実施した環境&バージョン

  • Windows7 pro
  • Anaconda (Anaconda3) 4.4.0
    • python 3.5
    • TensorFlow 1.2.1
    • Jupyter 1.0.0
    • Matplotlib 2.0.2

作業方針

TensorFlow公式HPの「Installing TensorFlow on Windows」ページに従って作業していきます。

Anacondaインストール

Anacondaダウンロードページから、Python 3.6 version 64-Bit (437 MB) を選んでインストール。
基本はインストーラーに従っていけばOKですが、Install Locationはパスの短いところ(例えばC:\Anaconda3)がオススメです。
WS000013.JPG

インストールが完了したらAnaconda Navigatorを起動します。
WS000015.JPG

AnacondaでTensorFlow用の環境を作成

Anaconda Navigatorで左ペインの「Environments」をクリックすると、Anacondaが管理している仮想環境の一覧が表示されます。デフォルトではrootという環境だけがある状態です。
ここにTensorFlow用の環境を作成します。一覧の下にある「Create」ボタンを押すとダイアログが表示されるので、任意の環境名(例:tensorflow)を入力、Pythonのバージョンを3.5にしてCreateします。
余談ですが、Locationのところに作成される環境の実体がどこにあるかが表示されます。
※この作業は、TensorFlow公式HPのInstalling TensorFlow on Windows>Installing with Anacondaセクションに書かれている C:> conda create -n tensorflow python=3.5 をGUI上で実施したものです。
WS000017.JPG

Environmentsの一覧に作成されたtensorflowが表示されます。作成されたtensorflowのところをクリックすると、三角ボタン「▶」が表示されるのでをクリックし、表示されたメニューから「Open Terminal」をクリックします。
WS000018.JPG

すると、コマンドプロンプトのウィンドウが起動します。プロンプトの先頭が(~tensorflow)となっていることを確認してください。
WS000021.JPG

TensorFlowインストール

このコマンドプロンプトのウィンドウ(Terminalのウィンドウ)で、TensorFlow公式の「Installing TensorFlow on Windows」ページの「Installing with Anaconda」に掲載されているコマンドを実行してTensorFlowをインストールします。
(注)TensorFlowのバージョンアップでwhlファイルが変わります!必ず上記ページを確認してそっちからコピペしてください。

CPUのみの場合.
(tensorflow)C:> pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.2.1-cp35-cp35m-win_amd64.whl 

エラーなく実行されたら動作確認します。
このTerminalのウィンドウでpythonと打って、インタプリタモードでimport tensorflowと打ってエラーが起きなければOKです。quit()でインタプリタモードを終了します。(ウィンドウはそのまま)
WS000020.JPG

Jupyter Notebookインストール

Project Jupyterの公式HPを見ると「For new users, we highly recommend installing Anaconda.」とあります。Anacondaのデフォルト環境(root)には最初からJupyter Notebookがインストールされています。
今回新しく作ったtensorflow環境にはJupyter Notebookがインストールされていないので、Jupyter :: Anaconda Cloudページに基いて上記のTerminalのウィンドウで以下のコマンドを実行してインストールします。

(tensorflow)> conda install -c anaconda jupyter

Anacondaが提供しているパッケージ管理用のcondaコマンドを使うと、関連するパッケージも一括で入れてくれます。上記コマンドを実行すると、関連パッケージの一覧が表示されて確認してくるのでyを入力してインストールします。
WS000161.JPG

ちなみに、conda list コマンドを実行すると、現環境にインストールされているパッケージが一覧表示されます。pip listだと、pip installしたもののみが表示されます。

Terminalのウィンドウで> jupyter notebook と打つとJupyterNotebookのプロセスが起動して、ブラウザが起動してきます。ブラウザで以下のような画面になっていればOKです!
WS000023.JPG

JupyterNotebookのURLは http://localhost:8888 なので、プロキシ環境下の場合は「Windowsのコントロールパネル>インターネットオプション>接続>LANの設定」で「ローカルアドレスにはプロキシサーバーを使用しない」にチェックを入れておいてください。
WS000024.JPG

Matplotlibのインストール

Jupyter Notebookで欠かせないのが可視化ツールのMatplotlibです。
Matplotlib公式HPのインストールページを見ると、Installing pre-built packagesとしてAnacondaが紹介されています。
Matplotlib :: Anaconda Cloudに基いて、Jupyter Notebookのインストールと同様にTerminalのウィンドウでconda installコマンドでインストールします。
TerminalのウィンドウでJupyter Notebookが起動中の場合は、Anaconda Navigatorからtensorflow環境のTerminalを新しく開くか、Jupyter Notebookを起動しているTerminalのウィンドウでCtrl+Cを押してJupyter Notebookのプロセスを停止して実行してください。

(tensorflow)> conda install -c anaconda matplotlib

Jupyter Notebookのときと同様に関連パッケージをインストールしてくれます。
WS000162.JPG

インストールできたら、Jupyter Notebookで動作確認してみましょう。Jupyter Notebookを起動して、右上の「New」>「Python3」を選択します。
WS000028.JPG

すると、新しいウィンドウ(タブ)が開くで、エディタ部分(In[]という部分)に以下のコードを入力して、上部の実行(run)ボタンを押します。以下のように散布図が表示されればOKです。

%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt

# ランダムな座標 (x,y) を10個生成する
x = np.random.randn(10)
y = np.random.randn(10)
print(x)
print(y)
#散布図を描画する
plt.plot(x,y,'o')
plt.xlabel("x")
plt.ylabel("y")

WS000160.JPG

Jupyter Notebookの起動と停止

ちなみに、ブラウザのJupter Notebook画面に表示されているのは(「Contacts」「Desktop」など)、Terminalウィンドウでjupyter notebookコマンドを実行したフォルダのファイル・フォルダ一覧です。
したがって、Jupter Notebookを起動する際には、Jupyter Notebook用の作業用フォルダを作成しておき、Terminalウィンドウで作業用ディレクトリにcdしてから起動するとよいでしょう。
Jupyter Notebookを起動する際に毎回Anaconda Navigatorを起動するのは面倒です。そこで以下手順で起動させることができます。

  • Windosボタン+cmdなどでWindowsのコマンドプロンプトを起動します。
  • Anacondaのインストールディレクトリ\Scripts\activateコマンドを実行して仮想環境を有効化します。引数には作成した仮想環境名(例:tensorflow)を指定します。
  • するとプロンプトが (tensorflow) のように変わります。
  • 作業用フォルダにcdして、jupyter notebookコマンドを実行します。 WS000025.JPG

Jupyter Notebookを停止する場合は、jupyter notebookコマンドを実行したTerminalのウィンドウでCtrl+Cを押してプロセスを停止させます。

以上です。