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ページ](https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md) ）
TensorFlow公式HPの「[Installing TensorFlow on Windows  \|  TensorFlow](https://www.tensorflow.org/install/install_windows#installing_with_anaconda)」では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」](https://www.tensorflow.org/install/install_windows)ページに従って作業していきます。



# Anacondaインストール
[Anacondaダウンロードページ](https://www.continuum.io/downloads)から、Python 3.6 version 64-Bit (437 MB) を選んでインストール。
基本はインストーラーに従っていけばOKですが、Install Locationはパスの短いところ（例えばC:\Anaconda3）がオススメです。
![WS000013.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/401fae1d-65a6-ab99-d923-a7eb08288f9e.jpeg)

インストールが完了したらAnaconda Navigatorを起動します。
![WS000015.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/44444b1c-71d8-086b-5f10-321008e45786.jpeg)




# AnacondaでTensorFlow用の環境を作成
Anaconda Navigatorで左ペインの「Environments」をクリックすると、Anacondaが管理している仮想環境の一覧が表示されます。デフォルトではrootという環境だけがある状態です。
ここにTensorFlow用の環境を作成します。一覧の下にある「Create」ボタンを押すとダイアログが表示されるので、任意の環境名（例：tensorflow）を入力、Pythonのバージョンを3.5にしてCreateします。
余談ですが、Locationのところに作成される環境の実体がどこにあるかが表示されます。
※この作業は、TensorFlow公式HPの[Installing TensorFlow on Windows＞Installing with Anaconda](https://www.tensorflow.org/install/install_windows#installing_with_anaconda)セクションに書かれている C:> conda create -n tensorflow python=3.5 をGUI上で実施したものです。
![WS000017.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/9964c415-956e-0c26-471b-29ecb1497cdd.jpeg)


Environmentsの一覧に作成されたtensorflowが表示されます。作成されたtensorflowのところをクリックすると、三角ボタン「▶」が表示されるのでをクリックし、表示されたメニューから「Open Terminal」をクリックします。
![WS000018.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/3440dec7-cb9e-44e3-b308-c5bd2cc1bad2.jpeg)

すると、コマンドプロンプトのウィンドウが起動します。プロンプトの先頭が（～tensorflow）となっていることを確認してください。
![WS000021.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/690c10a5-ce25-61ed-2a7f-dd328ae51d53.jpeg)


# TensorFlowインストール
このコマンドプロンプトのウィンドウ（Terminalのウィンドウ）で、TensorFlow公式の[「Installing TensorFlow on Windows」](https://www.tensorflow.org/install/install_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](https://qiita-image-store.s3.amazonaws.com/0/38461/6914cd27-4187-1ee2-a5c2-798728020313.jpeg)


# Jupyter Notebookインストール
[Project Jupyterの公式HP](http://jupyter.org/install.html)を見ると「For new users, we highly recommend installing Anaconda.」とあります。Anacondaのデフォルト環境（root）には最初からJupyter Notebookがインストールされています。
今回新しく作ったtensorflow環境にはJupyter Notebookがインストールされていないので、[Jupyter :: Anaconda Cloud](https://anaconda.org/anaconda/jupyter)ページに基いて上記のTerminalのウィンドウで以下のコマンドを実行してインストールします。
```
(tensorflow)> conda install -c anaconda jupyter
```
Anacondaが提供しているパッケージ管理用のcondaコマンドを使うと、関連するパッケージも一括で入れてくれます。上記コマンドを実行すると、関連パッケージの一覧が表示されて確認してくるのでyを入力してインストールします。
![WS000161.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/34c5ab0e-334b-16b3-2c75-e1231b1bbc3a.jpeg)


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

Terminalのウィンドウで> jupyter notebook と打つとJupyterNotebookのプロセスが起動して、ブラウザが起動してきます。ブラウザで以下のような画面になっていればOKです！
![WS000023.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/08560c9e-3c69-1ec1-484b-e9d138d2d940.jpeg)



JupyterNotebookのURLは http://localhost:8888 なので、プロキシ環境下の場合は「Windowsのコントロールパネル＞インターネットオプション＞接続＞LANの設定」で「ローカルアドレスにはプロキシサーバーを使用しない」にチェックを入れておいてください。
![WS000024.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/d1ca5529-52bb-08a3-3b1a-ba91b448ccd0.jpeg)


# Matplotlibのインストール
Jupyter Notebookで欠かせないのが可視化ツールの[Matplotlib](https://matplotlib.org/index.html)です。
[Matplotlib公式HPのインストールページ](https://matplotlib.org/users/installing.html)を見ると、Installing pre-built packagesとしてAnacondaが紹介されています。
[Matplotlib :: Anaconda Cloud](https://anaconda.org/anaconda/matplotlib)に基いて、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](https://qiita-image-store.s3.amazonaws.com/0/38461/9e327de6-0323-8f30-8206-69894938b826.jpeg)




インストールできたら、Jupyter Notebookで動作確認してみましょう。Jupyter Notebookを起動して、右上の「New」＞「Python3」を選択します。
![WS000028.JPG](https://qiita-image-store.s3.amazonaws.com/0/38461/89741725-7b00-654d-f087-5cc5ae25de0c.jpeg)

すると、新しいウィンドウ（タブ）が開くで、エディタ部分（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](https://qiita-image-store.s3.amazonaws.com/0/38461/fb74f5ec-3b7e-aed8-fdea-d1ffd7cba024.jpeg)





# 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](https://qiita-image-store.s3.amazonaws.com/0/38461/0f2e302e-c656-05eb-f529-7413f59bebc8.jpeg)


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



以上です。