Page 1
【強化学習】Montezuma’s Revenge @ NIPS2016
1. Kulkarni et al., “Hierarchical Deep Reinforcement Learning: Integrating Temporal Abstraction and Intrinsic Motivation,” NIPS2016.
2. Bellemare et al., “Unifying Count-Based Exploration and Intrinsic Motivation,” NIPS 2016.
機械学習情報交換会@産総研Sotetsu KOYAMADA(@sotetsuk)2016/11/11
Page 2
Table of contents
● Mnih et al., Nature2015(いわゆるDQN)
● Montezuma’s Revenge (Atari 2600)● Kulkarni et al., NIPS2016(2016/3, MITのグループ)
○ Hierarchical Deep Reinforcement Learning: Integrating Temporal Abstraction and Intrinsic Motivation.
● Bellemare et al., NIPS2016(2016/6, DeepMindのグループ)○ Unifying Count-Based Exploration and Intrinsic Motivation.
Page 3
Mnih et al., Nature2015
画像の画素情報に対しCNNを使って最適行動価値観数を近似し、Atari2600の様々なゲームに同じ手法を使って学習に成功
図、式はMnih et al., Nature2015 から
Page 4
Montezuma’s Revenge
Atari 2600のゲームにおいて、DQNはこ
のゲームを全く学習出来ていなかった
図はMnih et al., Nature2015 から
Page 5
Montezuma’s Revenge (Atari 2600)
DeepMindのグループのデモ: https://www.youtube.com/watch?v=0yI2wJ6F8r0
Page 6
Montezuma’s Revenge の難しさ
1. スパースな報酬a. 報酬は鍵の取得時、次ステージへの進出時に与えられる
2. 遅延報酬a. 大きい報酬を得るためには遠回り(鍵を取得してからドアへ)したりする必要がある
これらの解決のためには十分(かつ効率的な)探索が必要となり、通常のDQNのよう
なε- グリーディによる探索だけでは解けない
Montezuma’s Revenge に限らない、強化学習にける本質的な問題が難しさの根底
にある
Page 7
NIPS2016でMontezuma’s Revengeを扱う二つの論文
共に十分な探索を促す手法を提案
Kulkarni et al., NIPS2016
設定された中間目標を解くコントローラと、適切な中間目標を決めるメタコント
ローラを階層的にそれぞれDQNで学習をする(h-DQN)
Bellemare et al., NIPS2016
状態数が極めて多い場合にも、各状態の訪問回数を疑似カウントを使って表現
し、訪問回数が少ない状態への探索を促す
Page 8
Kulkarni et al., NIPS2016
以降のスライドでは特に注意がない限り図や式はこの論文から引用
Page 9
階層的なDQN: h-DQN
1. Meta-Controller: Q2(s, g)によってどの中間目
標を目指すかを決まる
2. Controller: Q1(s, a; g) によってその中間目標に
対してどういった行動をすべきか決まる
学習
1. Meta-ControllerはControllerが先にある程度学
習していないと学習できないので、 Q1だけ先に
pre-trainingしている
2. 学習はQ1, Q2の順で更新を繰り返すだけ
(注)鍵の候補の集合は人手で与える
Page 10
階層的なDQN: h-DQN
Meta-Conrollerによって与えられた中間目標に対して
発生する(内環境が与える)内発的な報酬を使って
Controllerを学習するという意味で、内発的な動機づ
け(Intrinsic Motivation)による学習だという主張
内発的動機付けについては和書にも詳しい :
Page 11
Montezma’s Revengeにおける結果
● 最初の1ステージだけ
● 最終的には満点の400点を獲
得できるようになる(鍵をとって
ドアへ)
gif: https://goo.gl/3Z64Ji
Page 12
感想
良い点
1. 実装がシンプル
2. 人の知識が入れやすい
悪い点
1. 人手での中間目標のアノテーションが必要(そもそも人手でアノテーションつけ
た目標を目指すのを内発的動機付けと呼ぶのか...?)
2. 他の環境でうまくいくのか実験がない(Atariの他のゲームでどうなのか?
Montezuma’s Revenge専用の手法になってないか?)
Page 13
Bellemare et al., NIPS2016
以降のスライドでは特に注意がない限り図や式はこの論文から引用
Page 14
目次
● Count-based Exploration(状態数が多くない場合)
● 疑似カウント○ 定義
○ 性質
○ 検証実験
● 疑似カウントの理論的な話○ 経験カウントとの関係、内発的動機付けとの関係など
● 疑似カウントを探索の促進に利用する○ Montezuma’s Revenge○ DQN, A3Cへの応用
Page 15
【準備】 Count-based Exploration
探索を促す手法ではよく “不確かなときは楽観的に (Optimism in the face of uncertainty; OFU)” 原理を実装した手法が使われる:
例: MBIE-EB (Model-based interval estimation with exploratory bonus)
通常の最適ベルマン方程式に exploratory bonus が加わる(Nn(x, a)は状態xにおいて行動aをとった回数)
Page 16
【準備】 Count-based Exploration
ただし、状態数(と行動数)が極めて多い場合、Count-based Explorationは上手くい
かない(ほとんどの (x, a) で N(x, a) = 0 となってしまうため )
この論文のアプローチ:
Psuedo-count(疑似カウント)を導入し、これを解決する
Page 17
記号の定義
状態全体の集合
の要素をn個連結した系列 全体の集合
系列 x1:n の中で、xが起こった回数(empirical count; 経験カウント)
使用者が定める系列密度モデル(sequential density model) を近似し未体験のxにも値を付与できるようにする。これで疑似カウントを表す。
それぞれ疑似カウントと合計疑似カウント(ここからは疑似カウントを推定する話)
のように直積の形でかけるとき、 i番目の集合の要素を と書く
Page 18
疑似カウントの例
次のような観測が10個得られた :
状態空間は3つの要素から成る :
まだ観測されていない状態に対する擬似カウントを求める
Page 19
疑似カウントの定義
目標としては疑似カウント を の適切な関数で表すことである。
( のモデルは一旦ここでは所与とするが、具体例としては例えば をその
まま使う、ディリクレ分布を使う、あとは後述するCTSモデルを使うなどといった状況
が考えられる)
Page 20
ナイーブな疑似カウント
ナイーブな疑似カウントを考えてみる:
例えば を とモデルを立てると、疑似カウントと経験カウント
が一致し、悪くないモデルのように思える(もちろん殆どの点で擬似カウント=経験カウント
=0となってしまう問題は解決していないが)
ただ、このモデルはnと密度モデルの間に単純な関係が成り立つとは限らないので良くない
(?)(理論的 or 実験的にダメだと論文中でキチンと言えてはないと思う...)
Page 21
【定義】疑似カウント
を と定義する。疑似カウントと、合計疑似カウントを
明示的に使って、次の二つの成り立って欲しい条件が導かれる:
を消去して次の疑似カウントの定義を得る:
Page 22
疑似カウントの性質
適当な場合(ρとρ’が共に1以外の場合)において次が言える
が任意のxとそれまでの系列において成り立つ時、 learning-positive
Page 23
疑似カウントの例(再び)
次のような観測が10個得られた :
状態空間は3つの要素から成る :
まだ観測されていない状態に対する擬似カウントを求める
Page 24
疑似カウントの例(再び)
各要素が独立なモデルを立てる :
すると
から
Page 25
CTSモデル
この論文の著者ら過去の論文で提案されているものの簡易版
(i, j)番目のピクセルを(i, j)番目の要素だと思って、ピクセル数分の要素からなる状態
空間を考えている
(i, j)
(この式はsotetsukがこうだと思っているもの ...)
Page 26
疑似カウントの性質の確認
ゲーム中のイベントをカウントして性質を確認:
Freeway:
1. イベントが発生しないときはほぼゼロ
2. イベントが発生しているときはほぼ線形
Pitfall!:
3. イベントは規則性なく発生しているが、大局的にはき
ちんと上がり続けている
Page 27
疑似カウントに関する理論的な話
1. 疑似カウントと経験カウントの関係(結果だけ)
2. 系列密度モデルとしての有向グラフィカルモデル(結果だけ)
3. 双価値関数(省略)
4. 内発的動機付けとの関係(結果だけ)
Page 28
【理論1】疑似カウントと経験カウントの関係
Page 29
【理論2】系列密度モデルとしての有向グラフィカルモデル
有向グラフィカルモデルは先のAssumption1を満たす
(CTSモデルは有向グラフィカルモデルであり、Assumption1を満たす)
Page 30
【理論4】内発的動機付けとの関係
内発的動機付けの研究の文脈では、新しくxを観測したときのInformation gain IG(x) が定義されることがある。適当な条件下で、このIG(x)は疑似カウントの逆数の
下界になっている:
IG(x)を大きくするようにxを選ぶことで、疑似カウントの逆数も大きくなるようにxを選
択している、と言える
Page 31
疑似カウントを探索に利用する
(基本的には)次のように定義されるExploration bonusを通常の即時報酬に加える
だけ!(様々な手法に使いやすい)
● βは定数
● 0.01は計算の安定のためだけに加えている
● -1/2乗は他にも比べてみた結果がある(Fig. 6; 今回は省略)
Page 32
疑似カウントを探索に利用する(DQN)
Montezuma’s Revenge、Ventureにおいて有意に結果を改善。Freewayでは楽観的
初期化でも充分探索が促されている。Private eyeはまだうまく学習出来ていない。
Page 33
疑似カウントを探索に利用する(A3C)
Atari 2600の60個のゲームのうち
- A3Cは15個に失敗
- A3C+は10個に失敗
失敗の定義は「ランダムな方策より
50%以上改善しない」
(全60個の詳細はAppendix)
Page 34
まとめ感想
● 状態空間が広大な場合でもCount-basedな探索手法の資産が活用できるよう
になる意義は大きい。
● 密度モデルの立て方についてもう少し議論(説明)が欲しかった
● CTSモデルによる密度推定がうまく効いているのか、ここでの疑似カウントの定
義がうまく効いているのか実験からよく分からない。。。
● このDeepMindグループの論文は理論的な解析もちゃんとあるが、とにかく実験
が膨大。とても真似(追試)できる気がしない。。。
最後にもう一度DeepMindのグループのデモ: https://www.youtube.com/watch?v=0yI2wJ6F8r0