GTX760のWin10にKerasを導入したのでメモ

ディープラーニングってやつでなんとかして!!!!

ってことで今の環境にニューラルネットワークライブラリであるKerasを導入したのでメモ

ちょっとしたバージョンの違いだけでも動かないので注意してください。

 

CUDA 9.0 の導入

NVIDIAから出してる並列処理プラットフォームのCUDAを落とします。

現在Ver10まで出ていますが、TensorflowがVer10に対応していないためVer9を導入。

Installer typeはnetoworkだとうまくいかなかったとの情報がありましたが、自分は大丈夫でした。

ちょっと時間がかかりますが、ぱぱっとインストール


developer.nvidia.com

 

cuDNN 7.3.1 の導入

CUDA専用のDNNライブラリのcuDNNを落とします。

これはNVIDIA Developerにあらかじめ登録してないと落とすことができません。また登録申請からアカウントが使えるまで1日待ったので気長にお待ちを

https://developer.nvidia.com/rdp/cudnn-download

 

バージョンはCUDAに必ず合わせます。CUDA 9.0を入れたので、「..., for CUDA 9.0」のを選択

 

f:id:Collonville:20181014205133j:plain

これはインストーラーではなくフォルダがzipで送られます

 

cuDNNをCUDAに適用

cuDNNの中に入っているファイルをCUDAにディレクトリにコピーします。

CUDAは標準だと「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0」に入っているはずです。

 

f:id:Collonville:20181014205747j:plain

 

cuDNNにはbin, include, libの3つのフォルダがありますが、その中身を上記のCUDAの同じフォルダ名の中にコピー

 

qiita.com

 

システム環境変数の確認

ここで一旦、Pathがちゃんと通っているか確認します。

過去にCUDAを入れたことがあったりすると「CUDA_PATH」が違うバージョンを示している場合があるので要注意

 

f:id:Collonville:20181014210307j:plain

Pathにも以下が通っているか確認

f:id:Collonville:20181014210431j:plain

 

Tensorflow 1.11.0 の導入

Pythonの実行するAnacodaとVisual Codeは予めインストールしておいてください。

ちなみにpythonのバージョンは3.5で(3.6でも問題ないはず)

Visual Codeのターミナル画面で仮想環境を立ち上げ「pip install tensorflow-gpu」と打てばインストールしてくれます

TensorFlow

 

f:id:Collonville:20181014211002j:plain

 

Keras 2.2.4 の導入

こちらもターミナル画面で「pip install keras」と打って実行すれば完了

Keras Documentation

 

Scipyのバージョン下げ

普通ならばここで簡単なテストを走らせれば動きますが、自分の場合AnacondaかTensorflowを入れる段階でバージョンが違うScipyが入れられたらしくエラーを吐きました。

いろいろ試したところバージョンを1つ下げたもので動いてくれました

  1. conda list」でScipyのバージョンを確認
  2. pipとcondaで重複していないか確認。重複していれば両方とも消す
  3. pip install scipy==1.0.1」でバージョン指定したのをインストール

 

パッケージバージョン一覧

とまぁなんだかんだ、以下のようなパッケージになりました。

恐らくもっとすっきりにできると思いますが...

f:id:Collonville:20181014212507j:plain

 

MNISTの分類サンプルの実行

パスとバージョンを確認したうえで、DNN基本であるMINISTの分類を行います。

コードはkerasのサンプルから丸コピーしてください。

github.com

 

.pyコードを実行すると、うまくいけば以下のように現在のエポック、ロス等が表示されます。きちんと GTX 760で回していることも確認できたのでこれでOK!!

 

f:id:Collonville:20181014213112j:plain

 

 ちなみに1エポックで130秒ぐらいかかりました。そこまでdeepではないのでやっぱGTX 760ではこの先も結構時間がかかりそう

 

Tensorflowのビルド

Tensorflowを自前でビルドする際は別途手順が必要です。

バージョンの対応表は下記リンクの一番下のページにあります

Build from source on Windows  |  TensorFlow

 

コンパイルにBazelとMSYSが必要になります。こちらもちゃんとPATHが通っていることを確認してください。

Installing Bazel on Windows - Bazel

https://www.msys2.org/

またこちらもtensorflowでバージョンが指定されています。なんでもかんでも最新のを選ぶと後々めんどくさいので要注意。

 

 

では!いいDNNライフを!