アラカン"BOKU"のITな日常

文系システムエンジニアの”BOKU”が勉強したこと、経験したこと、日々思うこと。

Windows環境に、バックエンドtensorflowでkerasをインストールする。/番外編

今回は、Windows環境に、kerasをインストールします。

 

tensorflow入門の入門カテゴリで、なんでkerasなんだ?・・ですが、kerasはtensorflowのラッパーとして利用できるニューラルネットワークライブラリだからです。

f:id:arakan_no_boku:20170910195848j:plain

 

tensorflowは高速で高機能なんですけど、独特の用語や考え方を理解して、かつ、ニューラルネットワークを組むにも行列計算でエラーにならないようにデータの次元とかを意識しないといけなかったりします。

 

つまり、若干、めんどくさい部分があります。

 

なのですが、kerasでラップすることで、そういうめんどくさい部分を隠蔽して、シンプルかつ直感的にニューラルネットワークを組めるようにできるみたいなのですね。

 

keras自体は以前から知ってましたた。

 

ですが、前回までは個人的事情で、pythonで学習したモデルを、Javaアプリで再利用する必要があったので、Java版が存在する"tensorflow"にこだわってました。


ただ、最近、(個人的な・・)状況が変わって、JAVAで再利用するという要件があまり重要でもなくなってきました。

 

それなら、直感的にニューラルネットワークを組める「keras」も全然ありだな・・と思い、とりあえず、インストールして使えるようにして、今後は、tensorflowとkerasで同じ処理を書いて比較検討する形でやってみようかな・・と構想してるわけです。

 

とりあえずインストール

ここからの記述は、windows環境で、anacondaを使った環境が前提になります。

 

まず、anacondaとtensorflowをインストールしておく必要がありますが、それはこちらを参照ください。

 

以下は、anaconda prompt を立ち上げて、”activate tensorflow” でtensorflow環境をアクティブにしてある前提で説明します。

 

なお、pythonはVer3.5です。

 

自分は試していないのですが、Ver3.6だとインストールがうまくいかない(Tensorflowも?)という情報もあるので、ご注意ください。

 

最初にscipyをインストールします。

conda install scipy

 

これをしとかないとエラーになります。

 

pipではないので注意してください。

 

condaもpipも両方ともパッケージマネージャなんですが、condaは仮想環境を管理することもできます。

 

上記のtensorflow環境は、condaで仮想環境を作っているので、パッケージのインストールもcondaを使った方がエラーがでません。

 

なので、conda search XXXXX(XXXXインストールしたい機能)で、condaのリポジトリにあるかどうかをチェックして、ない場合だけはpipを使うのが確実です。

 

scipyがインストールできたら、kerasをインストールします。

pip install keras

 

kerasは記事執筆時点では、condaにはないので、pipでインストールします。

 

たぶん、特に問題なくインストールできると思います。

 

インストールできたかの動作確認は、以下のようにします。

  • コマンドプロンプトから"python"と入力してEnterします。
  • >>のプロンプトがでるので、"import keras;" と入力します。
  • "Using Tensorflow Backend"などと表示されればOKです。

f:id:arakan_no_boku:20170612155728j:plain

 

kerasはラッパーなんですが、Tensorflow以外に、Theanoもバックエンドとして利用できます。

 

昔は「Theano」がデフォルトだったみたいですね。

 

なので、昔の記事とかを見ると、keras.jsonを編集して、tensorflowをバックエンドにする手順が書いてありますが、今は必要ありません。

 

デフォルトが「Tensorflow」に変わったみたいですから。

 

tensorflow関連記事の一覧はこちらです。

arakan-pgm-ai.hatenablog.com