中学生から大学生のAI初学者を対象にしています。
今回の結論は、PPOです。
OpenAIのAtariを用いての強化学習(深層強化学習)では、PPOが一番です。
強化学習を行うときの入力データであるobservationで、画像出力を用いるのが流行りのようです。細かい設定無しで、ディスプレイに映し出される画面のデータです。
これを用いると、手書き文字などの認識と同じような畳み込みニューラルネットワークの出番になります。すると、GPGPUを使うことになります。
どこが面倒かというと、GPGPUの部分です。その中で、最強なのがPPOです。とにかく速い。ステップの処理も速いし、学習も速い。
Breakout2時間位(5519秒)で、こんな感じです。
steps episodes elapsed mean median stdev max min
2000000 16394 5519 36.8 33.5 18.41 61.0 2.0
同じstep数2000000を実行するならば、
PPO 5519秒(92分)
DQN 19200秒(320分)
DQN-batch 6900秒(115分)
DRQN 8900秒(148分)
categorical 12855秒(214分)
となります。
90分ルールがある以上は、PPOがいいのは一目瞭然です。
PPOはOpenAIのデフォルト手法になっているそうです。
こちらに詳しく書いてあります。
https://shiropen.com/2017/07/21/26889/
chokozainerrlに、aleシリーズは、それぞれ入れておきました。