Imagination-Augmented Agents for Deep Reinforcement Learningを読んだメモ

出典

 記事中の図は論文から引用

概要

 モデルを利用して直接方策を構築するのではなく、ロールアウト結果を方策を構築する際の追加情報として利用するI2Aという手法を提案

アーキテクチャ

f:id:tokumini:20191030102146p:plain

  • Imagination Core
    • 環境モデルは現在の状態と行動から次の状態、報酬を予測
    • 内部方策は小さいモデルフリーネットワークで全体の方策を蒸留するように学習
  • Single imagination rollout
    • ある状態で可能な行動全てについて1つのロールアウトを実行(初手を固定)
    • 状態と報酬をCNNでエンコードし、LSTMで逆順にまとめ上げてRollout Encodingを獲得
  • Full I2A Atchitecture
    • Aggregator:単純な連結
    • Model-free pathは普通のCNN + 全結合層
    • 上2つから最終的な方策と価値を出力

環境モデル

  • 環境モデル:下図のようなものを確率的なモデルとして事前学習(同時学習よりよりこっちのほうが学習時間が短かったらしい)

f:id:tokumini:20191030104509p:plain

倉庫番ゲームでの実験

 箱を適切な順番で押していかないといけないのでプランニングが有効になりやすいタスク。入力は画像そのままで他の情報は利用しない

f:id:tokumini:20191030111018p:plain

  • 比較手法

    • standard(large) : モデルフリーパス部分だけのエージェントでネットワークが大きいもの
    • standard : モデルフリーパス部分だけのエージェント
    • no reward I2A : 環境モデルが報酬予測を行わないもの
    • cpoy-model I2A : 環境モデルに常に入力観測値をそのまま返すダミーを使用したもの
  • 提案手法の性能が良く、(環境モデルの事前学習分を考慮しても)サンプル効率も良い

  • ロールアウトを増やすと性能が上がる
  • copyモデルでは性能が低く、やはり環境モデルで先の状態を予測することが重要
  • 報酬を予測しないモデルではサンプル効率が悪いが3e9ステップまで学習すれば同じ性能に

不完全なモデルでの学習

 パラメータの数が少なく、性能が悪い環境モデルを用いた場合の実験

f:id:tokumini:20191030111931p:plain

  • Rollout Encoderを用いずシミュレーション結果から価値をそのまま推定するモンテカルロ(MC)より性能が良い
  • I2Aはpoor modelでもgood modelと同程度の性能を維持

完全なモデルを用いるプランニング手法との比較

 ほぼ完全なモデルが得られると想定して、@以下の正解率になるまでに必要な環境モデルの呼び出し回数を比較

f:id:tokumini:20191030113702p:plain

  • MCTS(ほぼAlphaZero式のPUCT)よりも環境モデルの呼び出し回数が少ない
  • 実験条件をどうすれば公平なのかよくわからなくて意味のある実験なのか判断つかなかった

汎化実験

 4箱の環境で学習したものを箱数が異なる環境で性能測定

f:id:tokumini:20191030114341p:plain

ミニパックマンでの実験

 パックマンのグラフィックを簡易化した一つドメインで異なるタスクを解く実験

f:id:tokumini:20191030115200p:plain

 ほぼI2Aが性能良く、特に計画が重要なタスクでcopyモデルやstandardと大きな差が出る。

所感

 実験結果が強いので気後れするところはあるが、やはりプランニング中にどの状態を重点的に考えるかという制御ができないことは気になる。あとはなんだかんだ実験ドメインが簡単な環境ではあると思うのでもっと複雑なドメインでどうかというところだが、環境モデルが不正確になるならむしろ提案手法の優位性が出てくるはずか。

 実際にLSTMがRollout Encodingを構築していくときにいったい何を見ているのかというのは気になるところではある。MCTSNetとかも(ちゃんと読んだわけではないが雑に眺めた限り)謎のベクトルをバックアップしていくわけで、単に価値を伝播させていくより効率の良いなにかがあるというのはそうなのかもしれない。根源的に強化学習とゲーム木探索は同じような振る舞いをしているはずなので、なんというか局所的な表現学習をしていると見なせるのだろうか。