【Mac】OpenAI Baselinesで強化学習やってみた

  • 2
    Like
  • 0
    Comment

OpenAIが2017/5/24に発表した強化学習のオープンソースが簡単に使えそうなので使ってみた:smiley:
「DQN」とその3種のバリエーションの強化学習アルゴリズムを人工知能の研究団体「OpenAI」が公開
Baselinesのgithub

実行するのはチュートリアルとして紹介されている以下の2つ
baselines.deepq.experiments.train_cartpole
baselines.deepq.experiments.train_pong

環境

Mac OS Sierra 10.12.4
python 3.6.1
ちなみに python2.7系ではできないので注意

cartpole

このチュートリアルは台車の棒が倒れないようにするゲームらしい
とりあえず何も考えずに実行する

色々とモジュールが足りないと言われるのでガンガンインストールする

# 学習用のコマンド
python -m baselines.deepq.experiments.train_cartpole

# 学習結果のモデルで遊ぶコマンド
python -m baselines.deepq.experiments.enjoy_cartpole

強化学習してそう・・・
ちなみにepisodesが690で停止した。
image.png

遊んでみた

これはどうやって遊ぶのだろうか・・・:thinking:
黒い物体が倒れたと判定されたらリロードされてる感じはあるけど、意味不明
image.png

pong

これはアイスホッケーみたいな対戦ゲームらしい

ここでも足りなモジュールはガンガンインストール
ちなみにcv2がないと言われたらと言われたらOpenCVのことなので以下を参考にすると良い
pyenvでインストールしたpython3からOpenCV3を利用できるようにする

下記の記事を見てもらうとわかりますが、linuxだとopencv設定がかなり面倒です。
pythonでOpenCVを使う一番簡単な方法
なので、私はanacondaに切り替えて実行しました。(すぐ出来るのでオススメ)

# 学習用のコマンド
python -m baselines.deepq.experiments.train_pong

# 学習結果のモデルと遊ぶ用のコマンド
python -m baselines.deepq.experiments.enjoy_pong

学習してる・・・
image.png

1episodesが90秒で、690回繰り返されるとしたら、約62,100秒、17時間15分・・・・

途中でやめました

やってみました:innocent:

約1160回のepisodeがあったので、さすがに時間かかりました・・・
途中でスリープモードで止まっていたので何とも言えませんが、8時間ぐらいかかった気がします。
Screenshot from 2017-05-28 21-43-00.png

遊んでみた結果は以下で動画になっているので確認してください。
OpenAI Baselinesをwindows(winpython)で試す。

(ちなみにこれ、人間vs機械学習でバトルできるのかなって思ってたけど、そうじゃないんだね・・・、強化学習と戦ってみたかったです・・・)