WindowsでTensorflow(GPU)+Keras RL+OpenAI Gymを動かす

Ubuntu上でGPUを使ってTensorflowを動かしたいんだけれど普段使いしているマシンがWindowsなんですよね。なわけでVirtualBox使って…と思ったんだけれどGPUパススルーできないんですよね。なわけでWindows上で環境を作ることに。そのときに行ったことを備忘録的にまとめてみました。

今回はkeras-rlのddpg-pendulum.pyを動かすところを目標にします。

Windowsで実行環境作るのにAnaconda使いました。というわけでAnacondaインストールしてください。インストールしたらAnaconda Promptを起動。

手順は以下の通り。

  1. 仮想環境作成
  2. 仮想環境に切り替え
  3. Pythonをインストール
  4. 必要なPythonモジュールをインストール
  5. Keras RLのサンプルを実行

環境作成

仮想環境作成からPythonインストールまで(1~3)

仮想環境を作成。今回は名前を aigym にしましたが好きな名前で。
(base) e:\>conda create -n aigym

activateでaigymに切り替え。
(base) e:\>conda activate aigym

pythonをインストール。今回はPythonのVersionを3.4.2に指定。
(aigym) e:\>conda install python=3.6.4

pythonをインストールするとpipやwheelやらもインストールされる。

必要なPythonモジュールをインストール(4)

必要なのは以下の通り。

  • tensorflow_gpu – GPU必要なければtensorflowでOK。
  • keras
  • keras_rl
  • h5py
  • gym
(aigym) e:\>pip install tensorflow_gpu keras keras_rl h5py gym

Keras RLのサンプルを実行(5)

keras-rlのddpg-pendulum.pyをダウンロードして実行。

(aigym) e:\>python ddpg_pendulum.py

KerasとKeras RLのバージョン

pip installしたときに入るkerasとkeras-rlのバージョン次第で動かない場合があります。keras-rlがkerasの最新Versionに追いついてなく且つI/Fが変わっている場合ですね。2018/03/12時点だとKeras 2.1.4、Keras-rl 0.4.0ですがこれだとI/Fに合わない部分があって実行時にエラーを吐きます。(Progress.update()あたりで。)なわけでI/Fが合うようにバージョン選びましょう。Keras-rl 0.4.0の場合はKeras 2.1.0で動くかと。

pip install keras==2.1.0