Slide 1

Slide 1 text

深層強化学習の動向 2017年のDQNはどこまで賢くなったか 発表者: 慶應義塾大学理工学部B4 妹尾卓磨 メンター: 慶應義塾大学環境情報学部B3 野口裕貴 東京大学情報理工学系研究科M1 八木拓真 1 全脳アーキテクチャ若手の会 第28回勉強会

Slide 2

Slide 2 text

自己紹介 妹尾卓磨 慶應義塾大学理工学部情報工学科4年 今井研究室所属 強化学習に関する研究 Wantedlyに長期インターン中 https://github.com/takuseno 2

Slide 3

Slide 3 text

好きなもの 3 https://upload.wikimedia.org/wikipedia/commons/thumb/6/6c/Star_Wars_Logo.svg/1200px-Star_Wars_Logo.svg.png

Slide 4

Slide 4 text

最近はStar Warsブームが来てる 2005年のStar Wars: Episode 3以来のシリーズ再開 ワクワクが止まらない 4 http://www.northwestcrossing.com/wp-content/uploads/2016/06/Star-wars-VII.jpg

Slide 5

Slide 5 text

多くのロボットが登場する 5 R2-D2 C-3PO http://screenrant.com/wp-content/uploads/2016/12/r2-d2-c-3po-best-friends-wallpaper-5478.jpg

Slide 6

Slide 6 text

夢 R2-D2を作りたい!! 6 https://pbs.twimg.com/profile_images/479266377937608704/Yaw8wh-9.jpeg

Slide 7

Slide 7 text

R2-D2のいいところ ピンチの時に助けてくれる https://www.youtube.com/watch?v=gfMoXBOjWBM 7

Slide 8

Slide 8 text

ロボットを行動学習させる方法 強化学習 人間がHowを教えなくても様々な問題の 解決策を見いだすことができる方法 * 強化学習をR2-D2に入れてピンチの時に助けてもらう! 8 * https://deepmind.com/about/

Slide 9

Slide 9 text

今日のテーマ 深層強化学習の動向 2017年のDQNはどこまで賢くなったか 9

Slide 10

Slide 10 text

今日話すこと ● 強化学習の基礎 ● Deep Q-Network (DQN) ● 近年研究が進んでいるゲームタスクでの手法 10

Slide 11

Slide 11 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 11

Slide 12

Slide 12 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 12

Slide 13

Slide 13 text

強化学習の例(1) DeepMind の AlphaGo https://gogameguru.com/i/2016/03/AlphaGo-Lee-Sedol-game-3-game-over.jpg 13

Slide 14

Slide 14 text

強化学習の例(2) 14 https://www.goo gle.com/url?q=h ttps://storage.go ogleapis.com/d eepmind-live-c ms-alt/documen ts/ezgif.com-res ize.gif&sa=D&u st=1500344775 009000&usg=A FQjCNE8y_VA Rd-Bf5XLi_MG aXESDEtLjg https://www.youtube.com/watch?v=ZhsEKTo7V04

Slide 15

Slide 15 text

強化学習 環境からの報酬の和を最大化するような 行動を学習する手法 エージェント 環境 状態 s 報酬 r 行動 a 15

Slide 16

Slide 16 text

R2-D2が帝国軍に囚われてしまいました 16 http://furunet.jp/cp-bin/wordpress/wp-content/uploads/2015/03/IMGP7144.jpg http://vignette2.wikia.nocookie.net/starwars/images/e/eb/ArtooTFA2-Fathead.png/revision/latest?cb=20161 108113441&path-prefix=ja

Slide 17

Slide 17 text

R2-D2の状況を強化学習で表すと エージェント: R2-D2 環境: 帝国軍の基地 状態(s): R2-D2のセンサー値 報酬(r): + 手がかりを発見する、脱出する ー 敵に見つかる、攻撃を受ける 行動(a): R2-D2の行動 17

Slide 18

Slide 18 text

R2-D2の目標 目標: 脱出すること 報酬の総和を最大化すること 試行錯誤で探索と知識の利用を行って 目標を達成する方法を求める 18

Slide 19

Slide 19 text

探索と知識の利用 探索 ● 今まで行ったことのない場所へ行ってみる ● ストームトルーパーに攻撃して倒してみる ● 基地のデータベースを調べてみる 知識の利用 ● 手がかりを使って脱出を試みる ● 倒せることがわかっている敵を倒す ● 敵が見回っているときは探索しない 19 データベースに アクセスしているR2-D2 デススターのマップ

Slide 20

Slide 20 text

R2-D2が脱出するには 探索して手がかりを増やしつつ 知識を利用して脱出を試みる 探索と知識の利用のバランスをとる 20

Slide 21

Slide 21 text

用語を覚えよう ● 状態(state) ● 行動(action) ● 報酬(reward) ● 方策(policy) ● 収益(return) 21

Slide 22

Slide 22 text

用語を覚えよう(1) 状態(state) エージェントのいる環境の様子 s t : 時刻tでの環境の様子 22 マリオの位置やクリボーの位置など エージェント 環境 状態 s 報酬 r 行動 a

Slide 23

Slide 23 text

用語を覚えよう(2) 行動(action) エージェントが環境に働きかける行動 a t : tでの行動 23 ファイヤー! エージェント 環境 状態 s 報酬 r 行動 a

Slide 24

Slide 24 text

用語を覚えよう(3) 報酬(reward) 環境からエージェントへ与えられる評価 r t : tでの環境からの評価 24 エージェント 環境 状態 s 報酬 r 行動 a

Slide 25

Slide 25 text

用語を覚えよう(4) 方策(policy) エージェントの行動パターン π(s, a): 状態sで行動aを取る確率として表すことが多い 25 ジャンプ 0.3 進む 0.1 ファイア 0.5 下がる 0.1 左の図での行動選択確率

Slide 26

Slide 26 text

用語を覚えよう(5) 収益(return) 報酬の和 割引率γを導入して未来で得る報酬をどの程度割引くか調整する R t = r t + γr t+1 + γ2r t+2 + γ3r t+3 + …. 感覚的には、テスト前に ● 楽しいから、遊んで今すぐ報酬をもらう ● 楽しくないけど、勉強頑張ってたくさんの報酬をもらう 26

Slide 27

Slide 27 text

用語を覚えよう(5) 収益(return) R t = r t + γr t+1 + γ2r t+2 + γ3r t+3 + …. ● γ=1 (今の報酬と未来の報酬が同じ大事さ) R t = r t + r t+1 + r t+2 + r t+3 + …. ● γ=0.9 (遠い未来は考えない) R t = r t + 0.9r t+1 + 0.81r t+2 + 0.729r t+3 + …. ● γ=0 (今を生きる) R t = r t 27

Slide 28

Slide 28 text

用語まとめ ● 状態(state) ○ エージェントが環境を観測した情報 ● 行動(action) ○ エージェントが行う行動 ● 報酬(reward) ○ エージェントが環境から受け取る評価 ● 方策(policy) ○ エージェントの行動パターン ● 収益(return) ○ 割引率を考慮した報酬の和 28

Slide 29

Slide 29 text

Q学習 状態sで行動aを行った時の収益を推定する関数Qを求める 各ステップで以下の式を更新して最適なQ関数に近づける 一番簡単なQ関数の表し方はテーブル 目標の値 今の値 状態/行動 機体を修理する 操縦補助する 機体が攻撃された 8 1 敵機を狙っている 2 9 29 TD誤差

Slide 30

Slide 30 text

Q関数の使い方 一番大きな価値の行動を選択する Q(攻撃された、修理) = 8 30 機体が攻撃された 修理する 操縦補助する Q(攻撃された、操縦補助) = 1 https://www.youtube.com/watch?v=2WBG2rJZGW8&t=125s

Slide 31

Slide 31 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 31

Slide 32

Slide 32 text

テーブルを使ったQ学習の例(GridWorld) 状態: 自分の位置(11通り) 行動: 上下左右(4通り) テーブルの大きさ: 11x4=44 32 https://www.youtube.com/watch?v=RTu7G0y4Os4 更新を繰り返すことで 価値を前の状態に伝搬 させることができている

Slide 33

Slide 33 text

Arcade Learning Environment (ALE) ● The Arcade Learning Environment: An Evaluation Platform for General Agents [Bellemare+ 2013] Atari 2600 という米アタリ社のゲーム機のエミュレータ AI研究のためのフレームワーク 33

Slide 34

Slide 34 text

Atariのゲームの例 34 Pong Breakout Space Invaders

Slide 35

Slide 35 text

ALEにおける強化学習の設定 環境: ゲーム エージェント: 自機 状態: ゲーム画像 行動: コントローラの操作 報酬: ゲームのスコア 35

Slide 36

Slide 36 text

ALEにおける強化学習の設定 エージェントはエミュレータからゲーム画像とスコアを 受け取り、エミュレータにゲームの操作を返す エージェント 環境 状態: 画像 報酬: スコア 行動: 操作 36

Slide 37

Slide 37 text

ALEが掲げていた課題 提供している様々なゲームに適応できるような手法の発明 敵の位置や自分の位置の情報など ゲームに特有の特徴量を使わない 37

Slide 38

Slide 38 text

理想的な方法 直接ゲーム画像から価値(Q値)を推定する 38 価値 推定器

Slide 39

Slide 39 text

テーブルでQ関数を表せないとき 入力状態は84x84の白黒画像 テーブルでQ関数を表すには25684x84の状態の行が必要 Q関数をテーブルではなく関数で近似してみる 39 ベクトルを前処理する関数

Slide 40

Slide 40 text

線形関数で近似した結果 人間のスコアを以下のモデルと比較 ● Linear: (前処理なし)画像から直接線形近似したモデル ● HNeat: (前処理あり)物体の位置が与えられているモデル 40 Breakout B. Rider Enduro Sequest S. Invaders Human 31 7456 368 28010 3690 Linear* 3 2347 62 657 301 HNeat 52 3616 106 920 1720 *後述の工夫を行なって全結合層 1つで近似したモデル 人間に勝てない...

Slide 41

Slide 41 text

どうすれば勝てるのか ゲームに勝つために画像から直接 有用な特徴量を見つけることができれば勝てるはず Deep Neural Network 41

Slide 42

Slide 42 text

層を重ねて、入力から推測までをend-to-endで学習すると タスクに有用な特徴抽出ができる 人間が特徴量を設計する必要がなくなった (画像ではCNNを使うのが一般的) DNNによる特徴抽出 42 https://www.slideshare.net/nlab_ut okyo/deep-learning-49182466 学習によって得られた特徴表現

Slide 43

Slide 43 text

DQN (Deep Q-Network)とは ● Playing Atari with Deep Reinforcement Learning [Mnih+ 2013] ● Human-level control through deep reinforcement learning [Mnih+ 2015] Q関数をDNNで近似した 43 価値 (Q値)

Slide 44

Slide 44 text

Q関数をDNNで表すとは Conv FC FC Q値 84x84の白黒ゲーム画像 Conv Conv 行動a? 行動全てに対してこの計算をするのはコストがかかる 44

Slide 45

Slide 45 text

DQNのネットワーク構成 Conv FC FC 各 行 動 の Q 値 84x84の白黒ゲーム画像 Conv Conv 各行動に対してQ値を計算するよりも 一回の計算で全てのQ値を計算するように構成する 45

Slide 46

Slide 46 text

しかしQ関数をDNNにしただけだと... さっきの線形モデルの手法に負けている.... 46 Breakout R. Raid Enduro Sequest S. Invaders Naive DQN 3.2 1453.0 29.1 275.8 302.0 Linear 3.0 2346.9 62.0 656.9 301.3

Slide 47

Slide 47 text

DQNの工夫 DQNはQ関数をディープにしただけではない ● Experience Replay ○ 保存した経験からランダムに学習に使用する ● Freezing the Target Network ○ TD誤差の目標値に古いネットワークを使用する ● Clipping Rewards ○ スコアのスケールを統一する ● Skipping Frames ○ 数フレームごとに行動を選択する 47

Slide 48

Slide 48 text

DQNの工夫: Experience Replay Reinforcement Learning for Robots Using Neural Network [Lin+ 1993] で最初にExperience Replayが提案されている ● 経験の相関性が高いとNNが過学習してしまう 過去の経験をメモリーに溜めて ランダムに経験を選んで学習に使用する ● 価値を前の状態に伝搬させるには多く学習する必要がある 経験をミニバッチで学習させることで加速! ● いい経験を一回しか使わないのは勿体無い 過去の経験を使いまわそう! 48

Slide 49

Slide 49 text

DQNの工夫: Experience Replay 昔経験したことe t =(s t , a t , r t , s t+1 )をメモリーに貯めて ランダムに複数(n=32)選んで学習に使うことで 学習を高速且つ安定させた e t-4 Replay Memory ランダムに選んで学習 49 e t-3 e t-2 e t-1 e t t

Slide 50

Slide 50 text

DQNの工夫: Freezing the Target Network 目標値の変動に伴うDNNで表現されたQ関数の 学習不安定性を解消するために ● 誤差計算を行うときの目標のDNNを古いもので固定 ● 一定周期(10000step毎)で現在のDNNと同期 50 TD誤差の目標計算に予測値を使っている ここを古いDNNにする

Slide 51

Slide 51 text

DQNの工夫: Clipping Rewards ゲームによってスコアの大きさが異なると ハイパーパラメータを変える必要がある 例 ● Pongでは一回点を取ると1点もらえる ● Space Invadersでは倒したインベーダの場所に応じて10~30点 様々なゲームに同じハイパーパラメータで対応するために、 ● 負のスコアは-1 ● 正のスコアは+1 で統一する 51 学習率 割引率 などなど

Slide 52

Slide 52 text

DQNの工夫: Skipping Frames ALEは60fpsで描画されるが 必ずしも毎フレームで行動選択を行う必要がない 4フレーム毎に前の4フレームを使って行動選択を行う 4フレーム後まで同じ行動を繰り返し選択する (Space Invaders では3フレーム) 行動選択のコストが減り、多くの経験を積むことができる 52

Slide 53

Slide 53 text

DQNと線形モデルの比較 ついに勝った... 53 Breakout R. Raid Enduro Sequest S. Invaders DQN 316.8 7446.6 1006.3 2894.4 1088.9 Naive DQN 3.2 1453.0 29.1 275.8 302.0 Linear 3.0 2346.9 62.0 656.9 301.3

Slide 54

Slide 54 text

Experience ReplayとTarget networkの影響 Experience Replay がスコアの向上にもっとも寄与していた 54 Replay ◯ ◯ × × Target ◯ × ◯ × Breakout 316.8 240.7 10.2 3.2 River Raid 7446.6 4102.8 2867.7 1453.0 Seaquest 2894.4 822.6 1003.0 275.8 Space Invaders 1088.9 826.3 373.2 302.0

Slide 55

Slide 55 text

Atari 2600 のゲームで学習した結果を人間のスコアと比較 特徴量を設計しなくても 人間より高いスコアが取れるようになった 人間より何%高いスコアが取れているかを示している 人間のプレイヤーは熟練者で ● 効果音なし ● それぞれのゲームで2時間の練習後、20エピソードの平均値 55 青: DQN 灰: 当時最高の線形モデル

Slide 56

Slide 56 text

56 ただし全てのゲームで勝ってはない

Slide 57

Slide 57 text

視覚の誕生 DQNによって、CNNが価値に結びつく特徴抽出を 画像から直接行えるようになった R2-D2がピンチの時に助けるために 何に注目すれば良いかを学習できるようになった 57

Slide 58

Slide 58 text

ピクセルから価値推定まで: まとめ CNNを使った強化学習が行えるようになったことで、画像の何に 注目すれば価値に繋がるかを獲得できるようになった ● DQN以前 ○ 特徴量の設計を人間が行わないと学習が難しかった ● DQN ○ CNNを用いて画像から直接価値推定を行う ○ 4つの工夫が欠かせない ■ Experience Replay: 過去の経験を保存して学習 ■ Target Network: 過去のDNNを固定して使用する ■ Clipping Rewards: スコアのスケールを統一する ■ Skipping Frames: 4フレームごとに行動選択 58

Slide 59

Slide 59 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 59

Slide 60

Slide 60 text

Double DQN (1) ● Issues in Using Function Approximation for Reinforcement Learning [Thrun+ 1993] TD誤差計算時に、目標値に大きすぎる値が設定されると 前の状態が過大評価されてしまう問題を提示 ● Double Q-Learning [Hasselt+ 2010] 上の問題を解決するために2つのQ関数A,Bを混ぜて学習 QA(s’, a)に大きな値が設定されても、QA(s, a)が過大評価されない 60 推定値

Slide 61

Slide 61 text

Double DQN (2) ● Deep Reinforcement Learning with Double Q-Learning [Hasselt+ 2015] Double Q-Learning をDQNに応用してTD誤差の目標値計算を改善 現在のネットワークで選んだ行動に対するターゲットのQ値を使用 61 現在のネットワーク ターゲットネットワーク Y

Slide 62

Slide 62 text

Dueling DQN [Wang+ 2016] Q学習だと一回の更新で1つの行動に対する価値しか更新できない →Q関数を状態価値関数とAdvantage関数に分解 →DNNもそれに合わせて分岐させる これでV自体を毎回更新できるので TD誤差計算の伝搬が早くなる 62 V A Q

Slide 63

Slide 63 text

Prioritized Experience Replay [Schaul+ 2016] DQNではランダムに経験を選んで学習している →学習に有用な経験を優先して学習するように改善した TD誤差が大きい経験ほど優先して学習に使用する ● 提案1: 誤差の大きさで重み付け ● 提案2: 誤差の大きさの順位 TD誤差 学習に選ばれる確率 63 0除算を避ける定数

Slide 64

Slide 64 text

並列分散アーキテクチャの導入 ● MapReduce for Parallel Reinforcement Learning [Li+ 2011] 深層強化学習ではないが、MapReduceというGoogleの 並列分散処理アーキテクチャで強化学習の行列計算を高速化 ● Massively Parallel Methods for Deep Reinforcement Learning [Nair+ 2015] (Gorila) 経験を集めるActorと 誤差計算を行うLearner を並列分散処理し、 38のゲームでDQNより 10倍高速化した 64

Slide 65

Slide 65 text

Asynchronous Methods for Deep Reinforcement Learning [Mnih+ 2016] CPUのマルチスレッドで同時に複数エージェントで学習 →GPUを使ったDQNよりも短い計算時間で学習できた 以下の4つの手法を提案 ● Asynchronous one-step Q-Learning ● Asynchronous one-step Sarsa ● Asynchronous N-step Q-Learning ● Asynchronous advantage actor-critic (A3C) 65

Slide 66

Slide 66 text

強化学習の非同期化 ● 4つの手法で非同期化を実現す るために 1. 各スレッド非共有なパラメータを 使って勾配を蓄積する 2. 一定間隔で蓄積した勾配で グローバルパラメータを更新 3. グローバルパラメータで 非共有なパラメータを更新 ということをやっている 66 1 2 3

Slide 67

Slide 67 text

複数エージェントによる利点 複数エージェントが同時に異なる経験を集めてくる スレッド数を多くすることで 同時に相関性の低い経験で学習を行える →Experience Replay をする必要がなくなる ● メモリーの使用量が少なくて済む ● 時系列に従ってDNNを使用することができる ○ LSTMなどの再帰的なネットワークが使えるようになる 67

Slide 68

Slide 68 text

Asynchronous Advantage Actor-Critic 有名なA3Cのこと Actor-Criticは ● 方策πを使って経験を集めるactor ● 状態価値関数Vを推定するcritic で構成されており actor: criticの推定する収益よりも高くなるような方策を学習 critic: actorの集めてくる経験から価値関数を学習 というように学習を行う 68

Slide 69

Slide 69 text

実験結果 DQN(GPU使用)よりもA3C(CPU使用)が 短い実行時間で学習できた 69

Slide 70

Slide 70 text

さらにA3Cを高速にする ● Reinforcement Learning through Asynchronous Advantage Actor-Critic on a GPU [Babaeizadeh+ 2017] 1つのGPUで並列計算はできないので マルチスレッドだとGPUが他のスレッドの処理をブロックする →GPUを使ったDNNの更新処理を キューで管理することで 他スレッドの処理をブロック しないようにした 70

Slide 71

Slide 71 text

DQNの改良: まとめ DQNの問題点や、工夫のさらなる改善を施した手法 ● Double DQN ○ 更新式をさらに安定させた ● Dueling DQN ○ ネットワーク構造を改善した ● Prioritized Experience Replay ○ Experience Replay での経験の選び方を改善した ● 非同期学習 ○ 複数エージェントで経験の収集を行って学習を速くした 71

Slide 72

Slide 72 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 72

Slide 73

Slide 73 text

一遍に覚える: 転移/マルチタスク学習 R2-D2は多機能で様々な局面に対応できる 視覚(特徴抽出器)は手に入ったので、次は ● どのように他のタスクの知識(表現)を活用するか ● どのように複数のタスクを覚えるか http://vignette2.wikia.nocookie.net/p__/images/9/93/R2_repair.p ng/revision/latest?cb=20151112152925&path-prefix=protagonist http://vignette3.wikia.nocookie.net/starwars/images/f/fe/Skyrocke tsinflight.jpg/revision/latest?cb=20100125171306 73

Slide 74

Slide 74 text

一遍に覚える: 転移/マルチタスク学習 問題: 難しいタスクを1から学習するのは難しい 方法: 他のタスクで得た知識を利用する ● Improving Generalisation for Temporal Difference Learning: The Successor Representation, 1993 ● Successor Features for Transfer in Reinforcement Learning, 2016 ● Actor-Mimic Deep Multitiask and Transfer Reinforcement Learning, 2016 ● PathNet: Evolution Channels Gradient Descent in Super Neural Networks, 2017 ● Playing FPS Games with Deep Reinforcement Learning, 2016 ● Reinforcement Learning with Unsupervised Auxiliary Tasks, 2016 ● Learning To Navigate in Complex Environments, 2017 ● Learning to Act by Predicting the Future, 2017 74

Slide 75

Slide 75 text

未来の状態を推定する特徴量を使う ● Improving Generalisation for Temporal Difference Learning: The Successor Representation [Dayan+ 1993] 強化学習において、汎用的に使える特徴量を使いたい →未来の状態を推定する表現 x 報酬の重みベクトルの内積で 価値を推定するように学習すると探索タスクで有効 ● Successor Features for Transfer in Reinforcement Learning [Barret+ 2016] 深層強化学習においても未来の状態を推定する表現を用いた →環境は同じだが報酬の発生の仕方が変わるという条件では 報酬の重みベクトルだけ学習し直すことで効率よく学習できる 75

Slide 76

Slide 76 text

学習済みモデルから転移させる ● Actor-Mimic Deep Multitiask and Transfer Reinforcement Learning [Parisotto+ 2016] 新しいモデルに過去の知識を覚えさせたい →学習済みモデルを真似するように学習させて転移学習 学習済みのQ値の出力をsoftmaxしたものを真似るように学習 学習済みの隠れ層の発火を真似するように学習 76 Actor Mimic Network Expert

Slide 77

Slide 77 text

マルチタスクの実験結果 隠れ層の発火の真似はやらずに 1つのAMNで8つの異なるゲームの学習済みモデルを同時に学習 学習済みモデルと 同じかそれ以上のスコアを出せているゲームがある 77 学習済みモデルに勝っている

Slide 78

Slide 78 text

転移学習の実験結果 13のゲームで学習したAMNの重みを初期値としてDQNを学習 多くのゲームで学習が効率化できた 一部のゲームでは隠れ層の真似によってさらに効率化できた 78 mil = million 隠れ層の真似によって効率化できたゲーム

Slide 79

Slide 79 text

DNNの構造を工夫して転移学習を行う ● Progressive Neural Networks [Rusu+ 2016] 複数タスクをDNNで学習すると、どうしても以前のタスクの性能が落ち てしまう →以前のDNNの重みを固定して 新しいDNNを継ぎ足して学習 ● PathNet [Fernando+ 2017] →大きなDNNをタスクごとに パスを切り替えることでマルチタスクと転移学習を行う 79 タスク1 タスク2 タスク3

Slide 80

Slide 80 text

PathNet [Fernando+ 2017] タスクごとにDNNの最適なパスを学習する 一度学習したパスのDNNは固定することでマルチタスクと 転移学習が可能になる 80

Slide 81

Slide 81 text

ゲーム独自の情報も一緒に学習する ● Playing FPS Games with Deep Reinforcement Learning [Lample+ 2016] ゲームに有利な知識も学習に含めたい →ゲームの情報(アイテム数とか)をDQNのCNNを共有して 教師あり学習を行うことでゲームに有用な特徴量を獲得する ● Learning to Act by Predicting the Future [Dosovitskiy+ 2017] →未来のゲームの情報とゴール(弾薬を集めるなど) も含めて学習を行った VizDoom AI Competitionで圧倒的な1位を獲得 81

Slide 82

Slide 82 text

UNREAL ● Reinforcement Learning with Unsupervised Auxiliary Tasks [Jaderberg+ 2016] UNsupervised REinforcement Auxiliary Learning (UNREAL)として有名 高次元の状態空間でさらに学習効率をあげたい →複数の別の学習タスクも一緒に行うことで特徴抽出を促進 ● Pixel Control ● Reward Prediction ● Value Function Replay 畳み込み層を共有して学習を行う 82

Slide 83

Slide 83 text

補助タスク Pixel Control Pixel Changes ● 画素値の変化が最大になるように行動させるQ関数 Network Features ● DNNの隠れ層の発火を最大化するように行動させるQ関数 Reward Prediction 状態のシークエンスから報酬の発生を予測するタスク Value Function Replay Experience Replay で価値関数を推定するタスク 83

Slide 84

Slide 84 text

UNREALの構成 84

Slide 85

Slide 85 text

実験 3D迷路の探索タスクとAtariで実験 ● 3D迷路: A3Cよりも高い性能 ● Atari: DQN, Dueling DQN, Prioritized Dueling DQNより高い 85

Slide 86

Slide 86 text

ナビゲーション特化型のUNREAL ● Learning To Navigate in Complex Environments [Mirowski+ 2017] 補助タスクを使ってより迷路探索タスクでの性能を向上した 導入した補助タスクは ● 画像から奥行きを推定する教師あり学習 ● 一度訪れたことがある場所かどうかを推定する教師あり学習 UNREALよりもナビゲーションタスクに特化した補助タスク 迷路探索タスクでパフォーマンスが向上 86

Slide 87

Slide 87 text

一遍に覚える: まとめ CNNによる特徴抽出やネットワークを拡張する形で 既存の知識を用いた学習をできるようにした ● Successor Features for Transfer ○ 未来を推定する特徴抽出を行って特徴表現を再利用 ● Actor-Mimic ○ 学習済みモデルを模倣することで知識を再利用 ● Progressive Neural Network ○ 新たにDNNを継ぎ足していくことで複数タスクを学習 ● PathNet ○ 巨大なDNNのパスを切り替えることで複数タスクを学習 ● UNREAL ○ タスクに有用な情報を学習して特徴抽出を改善 87

Slide 88

Slide 88 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 88

Slide 89

Slide 89 text

すぐに覚える: Episodic Control R2-D2は数少ない昔の経験を後の話に活かしている どのように少ない経験から行動選択を行うか 89 Clone Wars Star Wars Episode 3 https://www.youtube.com/watch?v=tj70-y9hNLg https://www.youtube.com/watch?v=qwX0yOgMhJE

Slide 90

Slide 90 text

すぐに覚える: Episodic Control 問題: 人間とは違い、既存の手法では一度の経験だけでは 最適な行動決定を行うのに十分な学習が行えない 方法: 外部メモリーに価値を保存して使用する ● Hippocampal Contributions to Control: The Third Way, 2007 ● Model-Free Episodic Control, 2016 ● Neural Episodic Control, 2017 90

Slide 91

Slide 91 text

Episodic Control を強化学習へ エピソード記憶: 自分の経験の記憶 人間は学習序盤でエピソード記憶を使って行動選択をしている これが Episodic Control である Hippocampal Contributions to Control: The Third Way [Lengyel+ 2007] 強化学習において、学習序盤は目標の計算に推測値を使っている (bootstrap)ので学習効率が悪い →Episodic Controlの学習初期における優位性を主張 報酬が得られた行動シーケンスを保存して、そのシーケンスを 再生することで学習序盤の学習性能を改善する可能性を示した 91

Slide 92

Slide 92 text

AtariでEpisodic Control Model-Free Episodic Control [Blundell+ 2016] DQNはbootstrapで学習しているので序盤のスコアが低い →得られた経験から直接価値を計算して序盤のスコアを向上 DNNで近似せず状態x行動のテーブルQECを用いてQ値を保存 →エピソード記憶として価値を保存 状態は入力画像に対して以下のどちらかのエンコードを行う ● EC-RP: ランダムに決められた行列Aをかけることで圧縮する ● EC-VAE: Variational AutoEncoderを使って圧縮する 92

Slide 93

Slide 93 text

テーブルQECの更新 エピソードの終わりに、最後から順に状態遷移を追っていって で更新を行う もしテーブルがいっぱいだった場合は もっともアクセスされていない箇所と入れ替える QECには過去の経験から直接計算された価値が保存される 93 テーブルになければ追加 テーブルにあれば更新

Slide 94

Slide 94 text

Q値の計算 行動決定時にテーブルQECを用いてQ値を計算する 94 s,aに対応するものがなければsが近いものをk件持ってきて平均 経験から直接計算された価値

Slide 95

Slide 95 text

Atariで既存手法との比較 MFECは多くのゲームで学習序盤からスコアが取れている 95

Slide 96

Slide 96 text

さらに先へ ● Neural Episodic Control [Pritzel+ 2017] MFECでの入力状態のエンコードは報酬ー状態の関係を 考慮していなかった →End-to-EndでQ関数の更新が行えるようにして 報酬に関連した状態のエンコードができるようになった 学習序盤のパフォーマンスがさらに向上 96

Slide 97

Slide 97 text

構成 以下の図のような2つのモジュールで構成されている ● DNNによる状態のエンコードを行うモジュール ● Key-Valueのメモリーモジュール 97 メモリーモジュール DNN Q値の計算 v i v i

Slide 98

Slide 98 text

メモリーモジュール Differentiable Neural Dictionary (DND) というメモリーが エージェントの各行動がそれぞれ持っている h i をi番目のキーとしてv i をi番目の値とすると NECでは ● h: CNNによってエンコードされた状態の表現 ● v: Q値 h i v i h i+1 h i+2 h i+3 h i+... v i+2 v i+2 v i+3 v i+... 98 a 1

Slide 99

Slide 99 text

メモリーへのアクセス N-step Q学習で価値の推定を行い Q値を計算する度に、メモリーを更新 ● 同じキーがある: 値を以下の式で更新 ● 同じキーがない: 空きがあれば追加 空きがなければ最も使われてないものと交換 99

Slide 100

Slide 100 text

Q値の計算 入力状態sの中間表現hからk近傍法で近いキーp個(p=50)選択 重み付きでvの和をとった値がQ値である 100 0除算を避けるための定数 重み キーの類似度 Q値

Slide 101

Slide 101 text

学習 学習はExperience Replayを用いてDQNと同じように行う Q値から状態まで誤差逆伝播法でDNNの更新を行うことができる 101 メモリーモジュール DNN v i v i

Slide 102

Slide 102 text

実験結果 NEC早い!!! 102 人間より何%スコアが取れているかを示している

Slide 103

Slide 103 text

Episodic Control の欠点 MFECやNECは学習を進めると他の手法に負ける場合がある メモリー容量の制限によって、全ての状態の情報を 保持できないので学習後半での行動選択が課題である 103 Atariで1000万ステップ学習した時の結果

Slide 104

Slide 104 text

すぐに覚えられる: まとめ 経験から計算された価値を外部メモリーに保存して行動選択に用 いることで少ない経験で学習が行えた ● Model-Free Episodic Control ○ 状態をエンコードしたテーブルベースのQ学習で序盤から 行動選択できる ● Neural Episodic Control ○ メモリーに価値を保存して活用しつつ 状態の価値に結びつくエンコードを行う 104

Slide 105

Slide 105 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 105

Slide 106

Slide 106 text

ランダムな探索の限界 DQNは今までε-greedy法を用いて探索を行っていた 基本的に知識を利用して行動するが、確率εでランダムに行動する しかし、ランダムに探索する方法は 偶然いい報酬が得られるのを期待しているだけ 報酬までの距離が長いと巡り会うのが難しくなる 106

Slide 107

Slide 107 text

Montezuma’s Revenge では ε-greedy法で探索するDQNで学習すると... 報酬がほとんど得られない環境では報酬にたどり着けない 107 鍵をとると最初の報酬がもらえる

Slide 108

Slide 108 text

好奇心に従う: Curiosity-driven Exploration マイペースなR2-D2は船に残れと指示されたが 勝手に動き回った結果、仲間達を守った どのように自分で未知の広い空間を効率的に探索するか 108 http://a.dilcdn.com/bl/wp-content/uploads/sites/6/2015/04/Screen-Shot-2015-04-14-at-10.52.38-AM.jpg

Slide 109

Slide 109 text

好奇心に従う 問題: 報酬がないとどこを探索すればいいのか分からない 方法: 見たことのない場所に行った時に追加報酬を与える ● A Possiblity for Implementing Curiosity and Boredom in Model-Building Neural Controllers, 1991 ● Incentivizing Exploration In Reinforcement Learning With Deep Predictive Models, 2015 ● Action-Conditional Video Prediction using Deep Networks in Atari Games, 2015 ● Unifying Count-based Exploration and Intrinsic Motivation, 2016 ● A Study of Count-Based Exploration for Deep Reinforcement Learning, 2017 ● Curiosity-driven Exloration by Self-supervised Prediction, 2017 109

Slide 110

Slide 110 text

Curiosityと強化学習 A Possiblity for Implementing Curiosity and Boredom in Model-Building Neural Controllers [Schmidhuber 1991] オンラインモデルベース強化学習において好奇心を導入する コンセプトを提案している Curiosityとは環境のモデルを改善したいという動機である 環境モデルによる推定と実際の観測の差から ● 誤差の大きい状態: 正の内部報酬を与える ● 誤差の小さい状態: 少ない正の内部報酬を与える 飽きるまで(誤差がなくなるまで)探索することで 環境のモデルを改善できる 110

Slide 111

Slide 111 text

見たことのない状態に報酬を与える Incentivizing Exploration In Reinforcement Learning With Deep Predictive Models [Stadie+ 2015] ε-greedy法よりも優れた探索方法が欲しい →自分の今までの状態遷移のモデルから推測されるものと 違う状態に移動すると内部報酬を与える AutoEncoderで圧縮した入力の特徴表現を使って 次の状態を推定する学習を行う 探索が改善された結果Atariのスコアが上昇した 111

Slide 112

Slide 112 text

モデル 状態の表現を獲得するためのAE 次の状態を予測するモデル 内部報酬をモデルと実際の観測の ユークリッド距離に応じて計算 112 行動 ユークリッド距離

Slide 113

Slide 113 text

Atariでの実験 100epochsの正規化スコアグラフの積分値で比較(学習速度) 値が大きいほど学習速度が早い 多くのゲームで学習速度が向上した 113

Slide 114

Slide 114 text

動画予測で訪れてない状態へ移動 ● Action-Conditional Video Prediction using Deep Networks in Atari Games [Oh+ 2015] この論文の最大の売りは動画予測の手法であるが Atariのゲームをaction-conditionalで100step先まで動画予測できるよ うになった →動画予測を使って直近で訪れていない状態へ移動 114 行動aを取った時の 推定フレーム 直近のフレーム 訪れたかどうか 訪れた回数

Slide 115

Slide 115 text

訪れた場所をカウントを内部報酬に ● Unifying Count-based Exploration and Intrinsic Motivation [Bellemare+ 2016] あまり訪れていない場所に行くと追加で報酬を発生させたい →DNNで入力状態にどのくらい訪れたことがあるかを推定する ● A Study of Count-Based Exploration for Deep Reinforcement Learning [Tang+ 2017] もっと単純に回数を保存したい →入力状態をハッシュ関数で次元圧縮して ハッシュテーブルに訪れた回数を保存する 提案したハッシュ関数 1. SimHash 2. AutoEncoder 115

Slide 116

Slide 116 text

ところで好奇心とは どっちが面白そうですか? 116

Slide 117

Slide 117 text

画素の予測誤差で面白さを決めると 117 これが超おもろい!!

Slide 118

Slide 118 text

でも人間は 118 99%こっちの方が面白い

Slide 119

Slide 119 text

観測を分類すると ● コントロールできるもの ○ マリオ ● コントロールできないが自分へ影響を与えるもの ○ クリボー ● 自分に全く関係なく変化するもの ○ コインのチカチカ 119

Slide 120

Slide 120 text

本当に興味のあるもの ● コントロールできるもの ○ マリオ ● コントロールできないが自分へ影響を与えるもの ○ クリボー ● 自分に全く関係なく変化するもの ○ コインのチカチカ 120 これっしょ

Slide 121

Slide 121 text

Intrinsic Curiosity Module (ICM) Curiosity-driven Exloration by Self-supervised Prediction [Pathak+ 2017] 興味のある変化だけに注目したい →自分の行動を推測する特徴量を使うことで画像から興味のある ものの変化だけに注目することができた 外部報酬一切なしで効率的な探索が行えるようになった 121

Slide 122

Slide 122 text

本当に面白いのを見分けるICMの構成 方策と別に以下の二つのものを一緒に学習する ● 逆モデル: s t とs t+1 からa t を推定 ● 順モデル: a t と上で得られる特徴量Φ(s t )からΦ(s t+1 )を推定 順モデル 逆モデル 122 CNN CNN s t s t+1 CNN a’ t CNN a t Φ’ t+1 Φ t+1 ri t 内部報酬

Slide 123

Slide 123 text

推定タスク(1/2): 逆モデル ● 状態遷移から行動を推定する 入力: s t , s t+1 ➡ 出力: a’ t 123 CNN CNN s t s t+1 CNN a’ t Φ t Φ t+1 誤差 予測の出力と実際の出力をsoftmaxしてクロスエントロピーを計算

Slide 124

Slide 124 text

推定タスク(2/2): 順モデル ● 行動と状態から次の状態を推定する 状態は行動を推定するタスクで得られる表現(Φ)を用いる 124 CNN CNN s t s t+1 CNN a’ t CNN a t Φ’ t+1 誤差

Slide 125

Slide 125 text

内部報酬 125 CNN CNN s t s t+1 CNN a t CNN a t Φ’ t+1 Φ t+1 ri t

Slide 126

Slide 126 text

全体の誤差計算 方策の更新 126 逆モデルの誤差 順モデルの誤差

Slide 127

Slide 127 text

ICMの優れているところ 自分の行動を推定するタスクで得られる特徴量によって テレビのノイズのような 自分の行動に関係ないピクセル変化を無視できる 既存の手法ではノイズに興味を持ってしまう 127 ここ

Slide 128

Slide 128 text

実験 画素の予測誤差のみで内部報酬を発生させるICM(pixels)と複 数の設定で比較した 128 CNN a t s t s t+1 s’ t+1 ri t ICM(pixels)の構成 画像そのまま

Slide 129

Slide 129 text

迷路タスクで検証 VizDoomの3D迷路でゴールすると+1の報酬が発生する ● dense: 青い点からスタートできる ● sparse: ゴールから270step離れてる部屋からスタート ● very sparse: ゴールから350step離れている部屋からスタート 129

Slide 130

Slide 130 text

迷路タスクの実験結果 very sparseではICM以外は学習ができなかった 130

Slide 131

Slide 131 text

ノイズへのロバスト性の検証実験 VizDoomの画像の40%にノイズを乗せてICMのロバスト性を検証 ICM(pixels)よりもICMの方が高いスコアを獲得 131

Slide 132

Slide 132 text

外部報酬なしの環境での探索実験 外部報酬を与えずにどこまで環境を探索できるかを検証 ● VizDoom ICM: 一番遠くの部屋まで行けた ランダム探索: 多くの場合壁にハマってしまった ● マリオ Level-1の30%の空間を探索することができた しかも内部報酬を最大化するために、敵を倒すことを覚えた 132

Slide 133

Slide 133 text

汎化性能の比較 マリオのLevel-1を1.5Mstep学習した状態でLevel-2, 3を探索 133 全然違うステージだが、 finetuneしたら スクラッチより学習が早かった Level1の学習状態そのままで探索ができた

Slide 134

Slide 134 text

ICM(pixels)との汎化性能比較 VizDoomで左の迷路で学習した状態で右の迷路を学習 ICM(pixels)は 全く学習できないが ICMは学習できた 134 壁のテクスチャも変えた

Slide 135

Slide 135 text

動画 https://www.youtube.com/watch?v=J3FHOyhUn3A&t=35s 135

Slide 136

Slide 136 text

ICMの今後の展望 ● 学習された探索の能力を再利用する 他の方策と組み合わせて利用する (壁にハマらずに歩きつつゴールを目指すなど) ● 頻繁に発生しないインタラクションの扱い 稀にしか発生しないインタラクションについて解決しているわけで はないので、メモリーに保存して探索に活用する 136

Slide 137

Slide 137 text

好奇心に従う: まとめ 今まで見たことのない状態へ移動することに、内部的な報酬を発 生させることで探索を効率化した ● Incentivizing Exploration ○ ピクセル変化の推定と実際の観測との差で内部報酬 ● Action-Conditional Video Prediction ○ 動画予測を使って訪れていないところへ探索 ● 訪れた回数をカウント ○ 訪れた回数が少ない状態への移動に内部報酬 ● Intrinsic Curiosity Module ○ 自分の行動に関連した特徴量を用いて内部報酬 137

Slide 138

Slide 138 text

目次 1. イントロダクション: 強化学習の目標 2. 基礎編: DQNの誕生 a. ピクセルから価値推定まで b. DQNの改良 3. 応用編: DQNのその先へ a. 一遍に覚える: 転移/マルチタスク学習 b. すぐに覚える: Episodic Control c. 好奇心に従う: Curiosity-driven Exploration 4. まとめ: これからの深層強化学習 138

Slide 139

Slide 139 text

これまでの深層強化学習 DQN以降の研究の流れ ● 2015 ○ DQN本体の学習の安定化、高速化がメインだった ● 2016 ○ DNNによる特徴抽出に着目した転移学習や特徴抽出の 効率化を行う手法が多く提案された ○ 状態空間の大きい3D空間を扱い始めた ● 2017 ○ 3D空間を扱える手法がさらに増えて、より長期的で 難しいタスクを扱っている ○ 人間の学習から着想を得た手法が増えている 139

Slide 140

Slide 140 text

今後扱えるようになるタスク 報酬のスパースな環境や長期タスクが扱えるようになってきたので 長期的なプランニングや実世界のタスクを扱う手法が増える プランニングが必要なゲームの例(StarCraft) 140 https://www.youtube.com/watch?v=wDuaZm7YTl4

Slide 141

Slide 141 text

実世界への応用 141 https://www.youtube.com/watch?v=ZhsEKTo7V04 https://www.youtube.com/watch?v=diaZFIUBMBQ ヒューリスティックに動くロボット 強化学習で動きを学習するアーム 将来的に人型ロボットの制御への応用の可能性

Slide 142

Slide 142 text

人間の学習を参考にした手法 紹介した論文では主に以下のものが人間の学習に触れている ● UNREAL ○ 人間は目標に直接関係ないものも学習しているのを参考 ● Neural Episodic Control ○ 人間のエピソード記憶を用いた行動選択を参考 ● Curiosity-driven Exploration ○ 人間が好奇心によって知識を得ているのを参考 今後も人間の学習を参考にした手法が 深層強化学習の世界を広げるだろう 142

Slide 143

Slide 143 text

R2-D2の実現 R2-D2を作るには ● 様々なモデルの統合 ● 自然言語を介した行動決定 ● 安全な行動選択 ● etc 上記のような課題などを解決することで実現できるかも 143

Slide 144

Slide 144 text

まとめ: これからの深層強化学習 2015年では主にAtariで評価していた深層強化学習はこれから ● 複雑な3D空間や実世界でのタスクを扱う手法が増える ● 人間の学習の仕組みから着想を得た手法が増える という形で研究が進んでいくだろう 特にNECや好奇心などの脳を参考にした手法は深層強化学習の 世界をより広げるはずなので、今後も注目していきたい 144

Slide 145

Slide 145 text

Appendix 145

Slide 146

Slide 146 text

紹介論文リスト(1) ● Bellemare, Marc G., et al. "The Arcade Learning Environment: An evaluation platform for general agents." J. Artif. Intell. Res.(JAIR)47 (2013): 253-279. ● Mnih, Volodymyr, et al. "Playing atari with deep reinforcement learning." arXiv preprint arXiv:1312.5602 (2013). ● Mnih, Volodymyr, et al. "Human-level control through deep reinforcement learning." Nature 518.7540 (2015): 529-533. ● Lin, Long-Ji. Reinforcement learning for robots using neural networks. No. CMU-CS-93-103. Carnegie-Mellon Univ Pittsburgh PA School of Computer Science, 1993. ● Nair, Arun, et al. "Massively parallel methods for deep reinforcement learning." arXiv preprint arXiv:1507.04296 (2015). ● Mnih, Volodymyr, et al. "Asynchronous methods for deep reinforcement learning." International Conference on Machine Learning. 2016. ● Babaeizadeh, Mohammad, et al. "Reinforcement learning through asynchronous advantage actor-critic on a gpu." (2016). 146

Slide 147

Slide 147 text

紹介論文リスト(2) ● Thrun, Sebastian, and Anton Schwartz. "Issues in using function approximation for reinforcement learning." Proceedings of the 1993 Connectionist Models Summer School Hillsdale, NJ. Lawrence Erlbaum. 1993. ● Hasselt, Hado V. "Double Q-learning." Advances in Neural Information Processing Systems. 2010. ● Van Hasselt, Hado, Arthur Guez, and David Silver. "Deep Reinforcement Learning with Double Q-Learning." AAAI. 2016. ● Wang, Ziyu, et al. "Dueling network architectures for deep reinforcement learning." arXiv preprint arXiv:1511.06581 (2015). ● Schaul, Tom, et al. "Prioritized experience replay." arXiv preprint arXiv:1511.05952 (2015). ● Li, Yuxi, and Dale Schuurmans. "MapReduce for Parallel Reinforcement Learning." EWRL. 2011. 147

Slide 148

Slide 148 text

紹介論文リスト(3) ● Barreto, André, et al. "Successor features for transfer in reinforcement learning." arXiv preprint arXiv:1606.05312 (2016). ● Parisotto, Emilio, Jimmy Lei Ba, and Ruslan Salakhutdinov. "Actor-mimic: Deep multitask and transfer reinforcement learning." arXiv preprint arXiv:1511.06342 (2015). ● Rusu, Andrei A., et al. "Progressive neural networks." arXiv preprint arXiv:1606.04671 (2016). ● Dutta, Bhaskar, Anders Wallqvist, and Jaques Reifman. "PathNet: a tool for pathway analysis using topological information." Source code for biology and medicine 7.1 (2012): 10. ● Lample, Guillaume, and Devendra Singh Chaplot. "Playing FPS Games with Deep Reinforcement Learning." AAAI. 2017. ● Dosovitskiy, Alexey, and Vladlen Koltun. "Learning to act by predicting the future." arXiv preprint arXiv:1611.01779 (2016). 148

Slide 149

Slide 149 text

紹介論文リスト(4) ● Dayan, Peter. "Improving generalization for temporal difference learning: The successor representation." Neural Computation 5.4 (1993): 613-624. ● Jaderberg, Max, et al. "Reinforcement learning with unsupervised auxiliary tasks." arXiv preprint arXiv:1611.05397 (2016). ● Mirowski, Piotr, et al. "Learning to navigate in complex environments." arXiv preprint arXiv:1611.03673 (2016). ● Lengyel, Máté, and Peter Dayan. "Hippocampal contributions to control: the third way." Advances in neural information processing systems. 2008. ● Blundell, Charles, et al. "Model-free episodic control." arXiv preprint arXiv:1606.04460 (2016). ● Pritzel, Alexander, et al. "Neural Episodic Control." arXiv preprint arXiv:1703.01988 (2017). ● urgen Schmidhuber, J. "A possibility for implementing curiosity and boredom in model-building neural controllers." From animals to animats: proceedings of the first international conference on simulation of adaptive behavior (SAB90). 1991. 149

Slide 150

Slide 150 text

紹介論文リスト(5) ● Stadie, Bradly C., Sergey Levine, and Pieter Abbeel. "Incentivizing exploration in reinforcement learning with deep predictive models." arXiv preprint arXiv:1507.00814 (2015). ● Oh, Junhyuk, et al. "Action-conditional video prediction using deep networks in atari games." Advances in Neural Information Processing Systems. 2015. ● Bellemare, Marc, et al. "Unifying count-based exploration and intrinsic motivation." Advances in Neural Information Processing Systems. 2016. ● Tang, Haoran, et al. "# Exploration: A Study of Count-Based Exploration for Deep Reinforcement Learning." arXiv preprint arXiv:1611.04717 (2016). ● Pathak, Deepak, et al. "Curiosity-driven exploration by self-supervised prediction." arXiv preprint arXiv:1705.05363 (2017). 150

Slide 151

Slide 151 text

発表時未収録論文 151

Slide 152

Slide 152 text

サブゴール 問題: 報酬が手に入りにくいと、なかなか学習が進まない 方法: サブゴールを設定して報酬を密にする ● Classifying Options for Deep Reinforcement Learning, 2016 ● Hierarchical Deep Reinforcement Learning: Integrating Temporal Abstraction and Intrinsic Motivation, 2016 ● Universal Value Function Approximation, 2016 ● Subgoal Discovery for Hierarchical Reinforcement Learning Using Learned Policies, 2003 ● Deep Successor Reinforcement Learning, 2016 ● Beating Atari with Natural Language Guided Reinforcement Learning, 2017 ● Micro-Objective Learning: Accelerating Deep Reinforcement Learning through the Discovery of Continuous Subgoals, 2017 152

Slide 153

Slide 153 text

サブゴールとは タスクのゴールではないが、短期的な目標を達成する形で 行動することで最終的にタスクをクリアする この短期的な目標をサブゴールという 153 最終目標: ゴールにたどり着く サブゴール: クリボーを倒せ!!

Slide 154

Slide 154 text

与えられたサブゴールを使って学習 ● Classifying Options for Deep Reinforcement Learning [Arulkumaran+ 2016] 与えられたサブゴールごとに 異なる方策を使いたい →サブゴールの識別器と サブゴールの数分岐したDQNを 組み合わせて学習する ● Universal Value Function Approximation [Schaul+ 2016] →サブゴールと状態を引数にとる価値関数を提案 154 サブゴール1用 サブゴール2用

Slide 155

Slide 155 text

Universal Value Function Approximation [Scault+ 2016] ● ネットワークの構成として3つを提案した ● サブゴールもDNNの入力に使うことによって サブゴールに有用な特徴量を抽出することができる 155 提案1 提案2 提案3

Slide 156

Slide 156 text

サブゴールを用いて階層的に学習する Hierarchical Deep Reinforcement Learning: Integrating Temporal Abstraction and Intrinsic Motivation [Kulkarni+ 2016] 階層的な構成でサブゴールを達成するように学習する手法 階層的な3つのモジュールからなっている ● Meta Controller: サブゴールを識別する学習器 ● Controller: 状態とサブゴールから行動を選択する学習器 ● Critic: 行動がサブゴールを達成しているか識別する学習器 156

Slide 157

Slide 157 text

モジュール構成 ● Meta-Controller: s → g 状態からサブゴールを選択 環境からの報酬を最大化 ● Contoller: s, g → a 状態とサブゴールから行動を選択 Criticからの報酬を最大化 ● Critic: s, a, s’ → r サブゴールを達成できていれば Controllerに報酬を与える 157

Slide 158

Slide 158 text

Montezuma’s Revenge での実験 DQNよりもはるかに高いスコアを獲得 サブゴールとなり得るオブジェクトの検出は専用の識別器を使用した 158

Slide 159

Slide 159 text

命令を実行させる Beating Atari with Natural Language Guided Reinforcement Learning [Kaplan+ 2017] 命令とその状態を紐づけたDNNを用いて、命令を実行すると追加で報 酬を与えた Montezuma’s Revenge を英語で命令して操作することでハイスコアを獲得 159

Slide 160

Slide 160 text

サブゴールを見つける ● Subgoal Discovery for Hierarchical Reinforcement Learning Using Learned Policies [Goel+ 2003] サブゴールは人が与えている →時刻tに状態sを訪れている回数の変化でサブゴールを判定 ● Deep Successor Reinforcement Learning [Kulkarni+ 2016] 深層強化学習では? →未来を推定するように 学習した特徴量を使って 状態遷移をクラスタリング することでサブゴールを推定 160

Slide 161

Slide 161 text

サブゴールを見つけて内部報酬を与える Micro-Objective Learning: Accelerating Deep Reinforcement Learning through the Discovery of Continuous Subgoals [Lee+ 2017] 報酬の発生する経路でよく訪れている場所 = サブゴール と考えることでサブゴールを設定 DNNで訪れた回数N(s)を推定して内部報酬を計算 161

Slide 162

Slide 162 text

単純にカウントした時の問題点 訪れた回数でサブゴールを決定すると ● 図のようにループしているところが過大評価される ● 追加で報酬を与えているので、サブゴールばかり訪れる →これを解決するために ● エピソード中で一度だけカウントする ● サブゴールの報酬も一度しか与えない ● カウントに上限も与える 162

Slide 163

Slide 163 text

実験 訪れていない所に遷移すると内部報酬が発生する手法と比較 Montezuma’s Revenge で高いスコアを得ることができた 163

Slide 164

Slide 164 text

Reward Propagation の改善 問題: TD誤差の伝搬には多くの更新が必要 方法: TD誤差の計算式を改善する ● Increasing the Action Gap: New Oprerators for Reinforcement Learing, 2015 ● Learning to Play in a Day: Faster Deep Reinforcement Learning by Optimality Tightening, 2016 164

Slide 165

Slide 165 text

行動ごとの価値の差を大きくする ● Increasing the Action Gap: New Oprerators for Reinforcement Learing [Bellemare+ 2015] 行動ごとの価値の差が大きくなれば行動選択が安定する →1つ先の状態の行動価値ごとの差が大きければ、その行動を 前の状態でも行うように更新する 1つ先の行動価値の平均との差 165 今の行動価値の平均との差

Slide 166

Slide 166 text

学習序盤のTD誤差計算をより正確に ● Learning to Play in a Day: Faster Deep Reinforcement Learning by Optimality Tightening [He+ 2016] TD誤差計算では目標値に予測値を使っている(bootstrap)ので 学習序盤は学習効率が悪い →経験で得られた収益を目標値に直接使用して効率をあげた 収益の上限と下限を定義 jからj+kの有限タイムステップの収益 上の式の変形 上限 下限 166

Slide 167

Slide 167 text

Learning to Play in a Day: Faster Deep Reinforcement Learning by Optimality Tightening [He+ 2016] 収益の上限と下限を混ぜて以下の損失関数を最小化 上限 下限 DQNよりはるかに学習序盤からスコアが伸びた 167