Slide 1

Slide 1 text

公立はこだて未来大学大学院 三上研究室 M1 髙橋将文 より汎用的なAIの実現に向けて 深層強化学習の最前線

Slide 2

Slide 2 text

自己紹介 1 ⚫ 公立はこだて未来大学院システム情報科学研究科 三上研究室 M1 髙橋将文 ⚫ 研究分野: 人工生命 ・動機の創発,形態と制御の共進化 ⚫ 趣味 ・深層強化学習,水族館・抹茶めぐり ⚫ 好きなDLライブラリ ・PyTorch @jinbeizame007

Slide 3

Slide 3 text

おしながき 2 ⚫ 強化学習・深層強化学習 ⚫ 汎化とは ⚫ 状態表現の汎化 ⚫ 行動・方策の汎化 ⚫ 報酬の汎化 ⚫ 環境の汎化 ⚫ まとめと所感 ⚫ 参考文献

Slide 4

Slide 4 text

強化学習

Slide 5

Slide 5 text

強化学習(RL) とは 3 ⚫ 環境内で試行錯誤を繰り返すことで、 適切な方策(状態から行動を返す関数) を学習する機械学習手法 ⚫ 目的: 今後得られる報酬の和を最大化する方策の獲得 エージェント 環境 行動 状態, 報酬 方策

Slide 6

Slide 6 text

方策(Policy) とは 4 ⚫ 状態から行動を返す関数 - 深層強化学習では主にニューラルネットワークを用いる ⚫ エージェントは方策に従って行動する ⚫ 強化学習の目的は「最適な方策を獲得すること」 方策 状態 行動 方策

Slide 7

Slide 7 text

ここまでの用語まとめ 5 ⚫ 状態 (State) - エージェントが環境から得た情報 ⚫ 行動 (Action) - エージェントが環境でとる行動 ⚫ 報酬 (Reward) - エージェントが環境で得た利益 ⚫ 方策 (Policy) - 状態から行動を返す関数 ⚫ 強化学習 (Reinforcement Learning) - エージェントが得られる報酬の和を最大化する方策を獲得することが目的

Slide 8

Slide 8 text

強化学習の例 (1) 囲碁 6 駒を置く 勝敗 行動 報酬

Slide 9

Slide 9 text

強化学習の例 (2) ロボットの制御 7 関節を制御 進んだ距離 行動 報酬

Slide 10

Slide 10 text

強化学習の例 (3) ニューラルネットの構造探索 8 構造を設定 精度 行動 報酬

Slide 11

Slide 11 text

軌道(Trajectory) とは 9 ⚫ 試行錯誤で得た状態, 行動, 報酬のシーケンス - = {0 , 0 , 1 , 1 , 1 , 2 , 2 , 2 , … } ⚫ 次状態と報酬は、決定論的または確率論的に決まる - +1 , +1 = , , +1 , +1 ~ (∙ | , ) 状態0 状態1 状態2 状態3 ・・・ 報酬1 報酬2 報酬3 行動0 行動1 行動2 行動3

Slide 12

Slide 12 text

軌道(Trajectory) とは 10 ⚫ 試行錯誤で得た状態, 行動, 報酬のシーケンス - = {0 , 0 , 1 , 1 , 1 , 2 , 2 , 2 , … } ⚫ 次状態と報酬は、決定論的または確率論的に決まる - +1 , +1 = , , +1 , +1 ~ (∙ | , ) 0 ・・・ 1 2 3 1 2 3 0 1 2 3

Slide 13

Slide 13 text

収益(Return) とは 11 ⚫ 今後の軌道上で得られる報酬の割引和 - 軌道に終わりが無い場合、割引せずに和を求めると無限に発散してしまう… - 割引率(0.99, 0.95, etc.) を使って遠い未来の報酬ほど値を小さくする ⚫ = σ= ∞ + ・・・ +1 +2 +3 γ+1 γ2+2 γ3+3 +1 +2 +3 + + + ・・・ 収益 +

Slide 14

Slide 14 text

価値関数(Value Function) とは 12 ⚫ 状態価値関数(Value Function) - 状態に対する収益の期待値 - = + = σ = ∞ ++ ⚫ 行動価値関数(Action-Value Function, Q Function) - 状態と行動の対に対する収益の期待値 - , = + = [σ = ∞ ++ ] -1 +1 -1

Slide 15

Slide 15 text

ベルマン方程式(Bellman Equations) とは 13 ⚫ ベルマン方程式 - 価値関数を学習する際に、主に用いられる方程式 - = + + + - , = + + + , + ・・・ + + + + + + , + 予測値 疑似的 な正解 + × + , +

Slide 16

Slide 16 text

価値ベースと方策ベース 14 ⚫ 価値ベース (Value-Based methods) - 行動価値関数を用いて、間接的に方策を表現 = ′ , ′ - 一般的に学習速度は速いが、行動空間が連続だと扱うことが出来ない ⚫ 方策ベース (Policy-Based methods) - 方策を直接最適化 ~ | - 一般的に学習速度は遅いが、行動空間が連続でも扱うことが出来る

Slide 17

Slide 17 text

Q学習 15 ⚫ 価値ベースの手法の1つ ⚫ ベルマン最適方程式を用いて行動価値関数を最適化 - , ← , + , − + + × ′ + , ′ ・・・ + + + + + + , + 予測値 疑似的 な正解 + × ′ + , +

Slide 18

Slide 18 text

方策勾配法 16 ⚫ 方策ベースの手法の1つ ⚫ 収益の期待値 = ~ を最大化するように方策を更新する ⚫ 選択した行動が良かった場合には選択確率を上げ、悪かった場合は下げる 選択した行動が 良かった 選択した行動が 悪かった = .

Slide 19

Slide 19 text

方策勾配法 17 ⚫ 方策ベースの手法の1つ ⚫ 期待収益 ()を最大化するように方策を更新する = ~ ≈ ~ , ← + 収益の期待値 期待収益を最大化する ように方策を更新 期待収益の勾配 行動 の選択確率 行動 を選択する際の 収益の予測値

Slide 20

Slide 20 text

深層強化学習とは 18 ⚫ 方策や価値関数を、ニューラルネットワークを用いて表現する手法 ⚫ 画像などの高次元で複雑な状態・行動を直接扱うことが出来る ● ● ● ● ● ●

Slide 21

Slide 21 text

汎化

Slide 22

Slide 22 text

汎化とは 19 ⚫ 本講演での汎化の定義 - 「様々な異なる対象に共通する性質や、 共通して適用できる法則などを見出すこと。」 ⚫ 強化学習における汎化 - 状態表現の汎化 - 行動・方策の汎化 - 報酬の汎化 - 環境の汎化 - etc. ⚫ このような汎化を追求することでより汎用的なAIの実現が可能に...?

Slide 23

Slide 23 text

状態表現の汎化

Slide 24

Slide 24 text

状態表現の汎化とは 20 ⚫ エージェントが観測した情報に事前知識を加えることで、 環境内で共通する性質や法則を考慮した状態表現を可能にすること - 状態表現 ← エージェントの観測情報 + 事前知識 ⚫ 事前知識 - 未観測部分の予測情報 (地図など) - 環境のダイナミクス (物理法則など) - etc. エージェントが 観測した情報 事前知識

Slide 25

Slide 25 text

状態表現の汎化: 目次 21 ⚫ Neural scene representation and rendering [Eslami+ 2018] - 未観測部分の予測情報を含めた、環境全体を表す状態表現を獲得 ⚫ World Models [Ha+ 2018] - 次状態の潜在変数を予測するモデルを用いることで、 環境のダイナミクスを考慮した状態表現を獲得 - 学習した予測モデルを用いてシミュレーションが可能

Slide 26

Slide 26 text

状態表現の汎化: 目次 22 ⚫ Neural scene representation and rendering [Eslami+ 2018] - 未観測部分の予測情報を含めた、環境全体を表す状態表現を獲得 ⚫ World Models [Ha+ 2018] - 次状態の潜在変数を予測するモデルを用いることで、 環境のダイナミクスを考慮した状態表現を獲得 - 学習した予測モデルを用いてシミュレーションが可能

Slide 27

Slide 27 text

AutoEncoder (AE) 23 ⚫ 入力データの圧縮・復元方法を学習することで、 データの潜在変数の表現を獲得 ⚫ 潜在変数: データの背後にある本質的な情報 - 例)データ: 人の写真 → 潜在変数: 性別, 年齢, 身長, 服装 ● ● ● ● ● ● ● ● ● ● ● ● z0 z1

Slide 28

Slide 28 text

AutoEncoder (AE) 24 ⚫ 入力データの圧縮・復元方法を学習することで、 データの潜在変数の表現を獲得 - エンコーダー: 圧縮するネットワーク - デコーダー: 復元するネットワーク ● ● ● ● ● ● ● ● ● ● ● ● z0 z1 エンコーダー デコーダー

Slide 29

Slide 29 text

Variational AutoEncoder (VAE) 25 ⚫ NNが出力した平均ベクトルμと共分散行列Σからなる 多変量正規分布からサンプリングした値を潜在変数zとする ⚫ ~ (, ) ● ● ● ● ● ● μ Σ ● ● ● ● ● ● ● ● ● z0 zn

Slide 30

Slide 30 text

Conditional VAE (Kingma ver.) 26 ⚫ VAEの入力に任意の情報を付与することで、条件付けを行ったモデル ⚫ 任意の情報: 圧縮・復元の際の条件となる情報 - 例)画像を生成する際に、猫という情報(one-hotベクトル)を付与 ⚫ 条件付けを踏まえた圧縮・復元が可能に ● ● ● ● ● ● μ Σ ● ● ● ● ● ● ● ● ● z0 zn 条件付け(猫) → 条件付け(猫) →

Slide 31

Slide 31 text

Conditional VAE (Sohn ver.) 27 ⚫ 条件付けのみから潜在変数を推論するPrior付きのモデル - Priorはエンコーダーを真似るように学習する 条件付け(猫) → ● ● ● ● ● ● μ Σ ● ● ● ● ● ● ● ● ● z0 zn 条件付け(猫) → 条件付け(猫) → Prior z0 zn ● ● ● μ Σ ● ● ●

Slide 32

Slide 32 text

Conditional VAE (Sohn ver.) 28 ⚫ 学習後は、Priorを用いることで 条件付けのみの情報から潜在表現の生成が可能に ● ● ● ● ● ● ● ● ● z0 zn 条件付け(猫) → μ Σ ● ● ● 条件付け(猫) →

Slide 33

Slide 33 text

Generative Query Networks (GQN) 29 ⚫ 複数の視点とその視点からの画像から、任意の視点からの画像を生成 ⚫ どこの視点からの画像でも生成できるように、 シーン全体を表すコンパクトな表現(シーン表現)が得られる r 表現 ネットワーク 生成 ネットワーク シーン表現 r

Slide 34

Slide 34 text

Generative Query Networks (GQN) 30

Slide 35

Slide 35 text

Generative Query Networks (GQN) 31 ⚫ シーン表現と生成したい画像の視点で条件付けしたConditional VAE r 表現 ネットワーク 生成 ネットワーク z 推論 ネットワーク r r 条件付け

Slide 36

Slide 36 text

シーン表現の生成 32 ⚫ 各視点でのシーン表現を生成し、 その平均値を用いることで、視点の順序・個数に依存しないモデルに 表現 ネットワーク r1 表現 ネットワーク r2 表現 ネットワーク rn r 平均 ● ● ● ● ● ● シーン表現

Slide 37

Slide 37 text

シーン表現の性質 33 ⚫ シーン表現は加減算可能 ⚫ 形, 色, 位置, 影の向きなど

Slide 38

Slide 38 text

深層強化学習への応用 34 ⚫ シーン表現を強化学習における状態として扱う ⚫ カメラの移動しても学習可能 - カメラが大体どの位置にあってもシーン全体の適切な表現が獲得可能

Slide 39

Slide 39 text

状態表現の汎化: 目次 35 ⚫ Neural scene representation and rendering [Eslami+ 2018] - 未観測部分の予測情報を含めた、環境全体を表す状態表現を獲得 ⚫ World Models [Ha+ 2018] - 次状態の潜在変数を予測するモデルを用いることで、 環境の遷移の予測を考慮した状態表現を獲得 - 学習した予測モデルを用いてシミュレーションが可能

Slide 40

Slide 40 text

World Models 36 ⚫ 外界から得た情報から、環境をシミュレートする内部モデル ⚫ 人間はこのような内部モデルに基づいて行動を決定している 視覚 聴覚 : World Models

Slide 41

Slide 41 text

概要 37 ⚫ World Modelsとして、次状態の潜在変数を予測するモデルを用いる ⚫ World Modelsから得た情報を状態として扱う - 環境の遷移予測を考慮した状態表現が可能に 方策 状態 行動 環境の遷移予測 を考慮した状態表現 World Models

Slide 42

Slide 42 text

モデルの概要 38 ⚫ VAE: 状態を復元可能な潜在変数zを学習 ⚫ MDN-RNN: 次状態の潜在変数を予測 ⚫ Controller: 潜在変数zとMDN-RNNの隠れ状態hから行動を出力 VAE MDN-RNN Controller ht 行動 行動 状態 状態 Zt+1 Zt Zt

Slide 43

Slide 43 text

Mixture Density Network (MDN) 39 ⚫ 混合密度ネットワーク ⚫ 平均, 分散, 重みを複数出力し、混合ガウス分布を生成する ● ● ● ● ● ● ● ● ● μ Σ w

Slide 44

Slide 44 text

MDN-RNN 40 ⚫ Mixture Density Network + Recurrent Neural Network ⚫ 状態の潜在変数 と行動 , 隠れ状態 から、次状態の潜在変数+ を予測 MDN RNN ’ − − MDN RNN + ′ MDN RNN + ′ + − + : RNNの隠れ状態 : 潜在表現 : 行動 + +

Slide 45

Slide 45 text

Controller 41 ⚫ 状態の潜在変数 と隠れ状態 から、行動 を出力 ⚫ Covariance-Matrix Adaptation Evolution Strategy(CMA-ES)により最適化 - 平均ベクトルと共分散行列をパラメータに持つ正規分布から 重みをサンプリングし,得られたサンプルを基にパラメータを更新 - パラメータの数が数千以下の場合に上手くいく Controller

Slide 46

Slide 46 text

学習アルゴリズム 42 1. ランダムな方策を用いて、学習環境で10,000回シミュレート 2. シミュレートで得られたデータを用いてVAEを学習 3. 学習したVAEを用いてMDN-RNNを学習 4. 学習したVAEとMDN-RNNを用いて、 学習環境でシミュレートしながらControllerを学習

Slide 47

Slide 47 text

学習結果 43 VAEのみ VAE + MDN-RNN

Slide 48

Slide 48 text

行動・方策の汎化

Slide 49

Slide 49 text

行動・方策の汎化とは 44 ⚫ 人間は、複雑なタスクをスキル(メタ的な行動) のシーケンスとして 扱うことで、素早く学習することが出来る - 例)起き上がる、走る、物を掴む・持ち上げる ⚫ しかし、強化学習では低レベルな行動を扱い、0から学習する必要がある - 例)筋肉の収縮・弛緩、各関節の制御 ⚫ 事前知識として環境やタスクに依存しないメタ的な一連の動作(スキル) を学習することで、より汎用的な方策を獲得すること

Slide 50

Slide 50 text

行動・方策の汎化: 目次 45 ⚫ Meta Learning Shared Hierarchies [Frans+ 2018] - タスク依存のマスターポリシーと、各タスクで共有のメタポリシーという 階層構造にすることで、タスクに依存しない汎用的なポリシーを学習 ⚫ Diversity is All You Need [Eysenbach+ 2018] - 状態からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得 ⚫ Variational Option Discovery Algorithms [Achiam+ 2018] - 状態の軌道からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得

Slide 51

Slide 51 text

行動・方策の汎化: 目次 46 ⚫ Meta Learning Shared Hierarchies [Frans+ 2018] - タスク依存のマスターポリシーと、各タスクで共有のメタポリシーという 階層構造にすることで、タスクに依存しない汎用的なポリシーを学習 ⚫ Diversity is All You Need [Eysenbach+ 2018] - 状態からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得 ⚫ Variational Option Discovery Algorithms [Achiam+ 2018] - 状態の軌道からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得

Slide 52

Slide 52 text

背景 47 ⚫ 同一の状態空間と行動空間を持つ、 異なるタスク間で共通な情報を共有したい ⚫ しかし、タスク間で最適なポリシーが異なるため、 単一の共有ポリシーを持つことは難しい... ⚫ タスク間で共有するsub-policyと、 タスク固有のmaster-policyを持つモデルを考える

Slide 53

Slide 53 text

⚫ タスク間で共有のsub-policyとタスク依存のmaster-policyの 階層構造にすることで、タスク間で共通のsub-policyを学習する手法 ⚫ (sub-policy) - タスク間で共有 - 行動を出力 ⚫ (master-policy) - 各タスクで固有 - Nステップごとに sub-policyを選択 - 各タスクの開始時に初期化 提案手法の概要 48

Slide 54

Slide 54 text

提案手法 49

Slide 55

Slide 55 text

各ポリシーの更新 50 ⚫ 各ポリシーの更新の際は、互いの方策, 行動, 報酬は環境の一部とみなす ⚫ 青) 状態, 行動, 報酬, 方策とみなす 赤) 環境の一部とみなす master-policyの更新時 sub-policyの更新時

Slide 56

Slide 56 text

学習アルゴリズム 51 # master-policyの初期化 # タスクをサンプル # sub-policyの初期化 # master-policyのみ更新 # 両ポリシーともに更新

Slide 57

Slide 57 text

実験: 転移学習 52 ⚫ Twowalkタスク (事前学習) - 4足のアリを制御し、目標地点に到達させるタスク - どのステージも、上/右/下への移動のみで目標地点に到達できる - 報酬は、-1×目標地点までの距離

Slide 58

Slide 58 text

実験: 転移学習 53 ⚫ 学習環境 - 目標地点は右上 - 左側の赤い円に入ると、押し出される - 報酬は、目標地点に到達したときのみ1 それ以外は0(非常にスパース) ⚫ 学習方法 - 先ほどのタスクで学習したsub-policyを 固定して用い、master-policyを学習 ⚫ 結果 - PPOでは全く学習が進まなかったが、 MLSHでは学習出来た

Slide 59

Slide 59 text

Future Work 54 ⚫ 論文では、マスターポリシーは用いるサブポリシーを選択している ⚫ サブポリシーのセットを、マスターポリシーから 連続値のベクトルを受け取る単一のネットワークとして表現可能? ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 状態 状態 行動 サブポリシー マスターポリシー

Slide 60

Slide 60 text

行動・方策の汎化: 目次 55 ⚫ Meta Learning Shared Hierarchies [Frans+ 2018] - タスク依存のマスターポリシーと、各タスクで共有のメタポリシーという 階層構造にすることで、タスクに依存しない汎用的なポリシーを学習 ⚫ Diversity is All You Need [Eysenbach+ 2018] - 状態からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得 ⚫ Variational Option Discovery Algorithms [Achiam+ 2018] - 状態の軌道からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得

Slide 61

Slide 61 text

着目する課題背景 56 ⚫ 人の目から見て多様なスキルを獲得させたい ⚫ スキルから状態を区別出来るような多様なスキルを学習させる - スキルを行動で区別すると、スキルが多様かどうかが判断しにくい ⚫ 状態からスキルを予測する識別器の正答率を最大化させる方策を獲得する - スキルを区別しやすいように、 スキルによって別々の状態に遷移するように学習する - スキルはone-hotベクトルで表現

Slide 62

Slide 62 text

Diversity is All You Need 57 ⚫ 方策 - 状態とスキルに基づいて行動を選択 - 識別器がスキルを識別できるように、 多様な状態に遷移するように学習 ⚫ スキル識別器 - 状態からスキルを識別 - 識別率を上げるように学習 方策 ( | , ) 環境 (+ | , ) スキル識別器 (|+ ) スキルの分布 () + (一様分布) 固定 学習

Slide 63

Slide 63 text

Diversity is All You Need 58 ⚫ 方策 - 報酬 = log(識別率) – log(スキルの確率) - = + − - Soft Actor-Criticを用いて更新 ⚫ スキル識別器 - 目的関数 = 識別率 - + 方策 ( | , ) 環境 (+ | , ) スキル識別器 (|+ ) スキルの分布 () + 固定 学習

Slide 64

Slide 64 text

獲得したスキルの例 59

Slide 65

Slide 65 text

転移学習 Meta Controller 60 ⚫ 方策に対してスキルを指定するメタコントローラーを学習する ⚫ 関連手法と比較して学習が高速

Slide 66

Slide 66 text

行動・方策の汎化: 目次 61 ⚫ Meta Learning Shared Hierarchies [Frans+ 2018] - タスク依存のマスターポリシーと、各タスクで共有のメタポリシーという 階層構造にすることで、タスクに依存しない汎用的なポリシーを学習 ⚫ Diversity is All You Need [Eysenbach+ 2018] - 状態からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得 ⚫ Variational Option Discovery Algorithms [Achiam+ 2018] - 状態の軌道からスキルを予測した際の識別率を最大化することにより、 多様なスキルを獲得

Slide 67

Slide 67 text

概要 62 ⚫ (状態の)軌道からスキルを識別できるように、 多様な軌道に遷移するように学習 - スキルはone-hotベクトル 方策 環境 スキル 識別器 状態 行動 (状態の) 軌道 スキル スキル

Slide 68

Slide 68 text

スキル識別器 63 ⚫ 軌道を入力とした 双方向LSTMを用いる - 軌道の始めと終わりの 重要度を同程度とする ⚫ 軌道はk個ずつの グループで入力 ・・・ 平均 LSTM LSTM 全結合 LSTM LSTM 全結合 LSTM LSTM 全結合 スキル(確率) ~ ~ ~ 軌道

Slide 69

Slide 69 text

スキル識別器の伝播 (1) 64 ⚫ 下段のLSTMでは、 軌道の始めから終わりに 向けて入力 ・・・ 平均 LSTM LSTM 全結合 LSTM LSTM 全結合 LSTM LSTM 全結合 スキル(確率) ~ ~ ~ 軌道

Slide 70

Slide 70 text

スキル識別器の伝播 (2) 65 ⚫ 上段のLSTMでは、 軌道の終わりから始めに 向けて入力 ・・・ 平均 LSTM LSTM 全結合 LSTM LSTM 全結合 LSTM LSTM 全結合 スキル(確率) ~ ~ ~ 軌道

Slide 71

Slide 71 text

スキル識別器の伝播 (3) 66 ⚫ 最後に全結合層の出力の 平均を取り、全体の出力 とする ・・・ 平均 LSTM LSTM 全結合 LSTM LSTM 全結合 LSTM LSTM 全結合 スキル(確率) ~ ~ ~ 軌道

Slide 72

Slide 72 text

カリキュラム学習 67 ⚫ スキルの個数が大きい場合、学習に失敗する… ⚫ 学習が進むごとに、スキルの個数を少しずつ多くしていく - スキルの識別率が閾値を上回った際に、以下の式を用いてを更新 - 最大値 は超えないようにする ⚫ 提案手法に限らず関連手法(VIC, DIAYN)でも有効 ← ( . × + , )

Slide 73

Slide 73 text

獲得したスキルの例 68

Slide 74

Slide 74 text

転移学習 69 ⚫ 事前学習で得た方策を固定し、スキルを指定するメタコントローラーを学習 ⚫ 提案手法によって獲得したスキルは、ゼロから学習したポリシーに匹敵し、ラ ンダムなネットワークのスキルより遥かに高い性能を持つ

Slide 75

Slide 75 text

報酬の汎化

Slide 76

Slide 76 text

報酬の汎化とは 70 ⚫ タスク依存の外発的報酬には、多くの問題がある - 報酬がスパースだと探索が困難 - 設計に失敗した場合、学習が進まない・望まない局所解に陥ることも… ⚫ 環境やタスクに依存しない内発的報酬を用いることで、 外発的報酬でのこれらの問題を緩和する - 好奇心(新規性に対する報酬) など

Slide 77

Slide 77 text

報酬の汎化: 目次 71 ⚫ Large-Scale Study of Curiosity-Driven Learning [Burda+ 2018] - 環境の遷移に基づく内発的報酬のみで学習可能かどうかを検証 ⚫ Random Network Distillation [Burda+ 2018] - ランダム初期化されたネットワークを蒸留する際の誤差を好奇心とする ⚫ その他の内発的報酬まとめ

Slide 78

Slide 78 text

報酬の汎化: 目次 72 ⚫ Large-Scale Study of Curiosity-Driven Learning [Burda+ 2018] - 環境の遷移の予測に基づく内発的報酬のみで学習可能かどうかを検証 ⚫ Random Network Distillation [Burda+ 2018] - ランダム初期化されたネットワークを蒸留する際の誤差を好奇心とする ⚫ その他の内発的報酬まとめ

Slide 79

Slide 79 text

環境の遷移予測に基づく内発的報酬 73 ⚫ 環境の遷移予測に基づく内発的報酬 - 環境の遷移の予測モデルの誤差を報酬とする - 予測誤差が大きいほど、遷移の新規性が高いと仮定 ⚫ 予測モデル - と から+1 の特徴量を予測 - , → (+ ) +1

Slide 80

Slide 80 text

環境の遷移に基づく内発的報酬 74 ⚫ 環境の遷移予測に基づく内発的報酬 - 環境の遷移の予測モデルの誤差を報酬とする - 予測誤差が大きいほど、遷移の新規性が高いと仮定 ⚫ 予測誤差 - : 次状態の特徴量を表現する関数 - : 状態, 行動から、次状態の特徴量(+ )を予測する関数 (+ ) − ,

Slide 81

Slide 81 text

特徴表現 75 ⚫ 適切な特徴表現とは? - Compact: 特徴量が低次元かつ無駄な情報が含まれていない - Sufficient: 特徴量に全ての重要な情報が含まれている - Stable: 特徴量が学習の進行とともに変化しない (定常) ⚫ 本論文で取り扱う特徴表現 - 生のピクセル + - VAEのエンコーダー + - ランダムネットワーク ෠ + - Intrinsic Curiosity Module

Slide 82

Slide 82 text

Intrinsic Curiosity Module (ICM) 76 ⚫ 特徴表現には、 と+ から を識別出来るように学習した関数を用いる。 = + − + , Inverse Model + , + ( ) (+ ) と+ から を識別 出来るようにを学習 + を予測出来る ようにを学習

Slide 83

Slide 83 text

実験の設定 77 ⚫ タスク - 8種類のAtariのゲーム ・Montezuma Revenge, Pong, Breakout, Sea Quest, Beam Rider, … - スーパーマリオブラザーズ ⚫ 報酬 - 内発的報酬のみ (各タスクの独自の報酬は用いない) ⚫ 手法 - PPO

Slide 84

Slide 84 text

結果 78 ⚫ 内的報酬のみの学習でも、外発的報酬の収益が上昇

Slide 85

Slide 85 text

結果 79

Slide 86

Slide 86 text

報酬の汎化: 目次 80 ⚫ Large-Scale Study of Curiosity-Driven Learning [Burda+ 2018] - 環境の遷移に基づく内発的報酬のみで学習可能かどうかを検証 ⚫ Random Network Distillation [Burda+ 2018] - ランダム初期化されたネットワークを蒸留する際の誤差を好奇心とする ⚫ その他の内発的報酬まとめ

Slide 87

Slide 87 text

Noisy-TV Problem 81 ⚫ 環境の遷移の予測誤差を報酬とした場合、環境のランダム性の高い遷移に 対して高い内発的報酬を見つけ出し、その場にトラップしてしまう

Slide 88

Slide 88 text

予測誤差が生じる原因 82 ⚫ 学習した経験が少ないデータ - 探索報酬として使用できる ⚫ 遷移のランダム性 - Noisy-TV Problemの原因 - +1 ~ , ⚫ 予測に必要な情報やモデルの表現力の不足 - 例) のみで+1 を予測する、ユニット数が少なすぎる ⚫ 最適化プロセスが失敗している

Slide 89

Slide 89 text

予測誤差の原因 83 ⚫ 学習した経験が少ないデータ - 探索報酬として使用できる ⚫ 遷移のランダム性 - Noisy-TV Problemの原因 - +1 ~ , ⚫ 予測に必要な情報やモデルの表現力の不足 - 例) のみで+1 を予測する、ユニット数が少なすぎる ⚫ 最適化プロセスが失敗している 不必要 必要

Slide 90

Slide 90 text

Random Network Distillation (RND) 84 ⚫ ランダムに初期化されたネットワークとの誤差を探索報酬とする ⚫ : ランダムに初期化して固定 ⚫ ෠ : を真似るように学習 (蒸留) ランダム ネットワーク 学習する ネットワーク + + (+ ) ෠ (+ ) (+ ) − ෠ (+ ) 探索報酬

Slide 91

Slide 91 text

Random Network Distillation (RND) 85 (+ ) + ෠ ( ) (+ ) + ෠ (+ ) 遷移の予測に基づく誤差 RND 予測が状態遷移の確率性に 影響を受ける 予測が状態遷移の確率性に 影響を受けない = (+ ) − ෠ ( , ) = (+ ) − ෠ (+ ) ① ② ③ ② ① ③

Slide 92

Slide 92 text

予測誤差の原因 86 ⚫ 学習した経験が少ないデータ - 探索報酬として使用できる ⚫ 目的関数の確率性 - Noisy-TV Problemの原因 - +1 ~ , ⚫ 予測に必要な情報やモデルの表現力の不足 - 例) のみで+1 を予測、ユニット数が少ない ⚫ 最適化プロセスが失敗している 必要 目的関数を決定論的にする ことで取り除く 蒸留の際に同じモデルを 使うことで取り除く

Slide 93

Slide 93 text

実験 87 ⚫ Atariの中でも探索が困難な6ゲームで評価 ⚫ 特にMontezuma Revengeで関連手法の性能を大幅に上回った

Slide 94

Slide 94 text

報酬の汎化: 目次 88 ⚫ Large-Scale Study of Curiosity-Driven Learning [Burda+ 2018] - 環境の遷移に基づく内発的報酬のみで学習可能かどうかを検証 ⚫ Random Network Distillation [Burda+ 2018] - ランダム初期化されたネットワークを蒸留する際の誤差を好奇心とする ⚫ その他の内発的報酬まとめ

Slide 95

Slide 95 text

その他の内発的報酬まとめ 89 ⚫ Deep Curiosity Search: Intra-Life Exploration Can Improve Performance on Challenging Deep Reinforcement Learning Problems - ゲーム画面をグリッドで分割し、エピソード内で新しいグリッドに 遷移するたびに報酬を与える ⚫ Episodic Curiosity through Reachability - 2つの状態が互いにkステップ以内で到達できる可能性をNNで学習し、 そのNNの出力×-1を内発的報酬とする ⚫ Curiosity-driven reinforcement learning with homeostatic regulation - 「状態, 行動, 次行動から予測した次状態の誤差×-1」を内発的報酬に追加 - 新規性の高い場所の中でも、特に次に取る行動から 次状態を予測出来るようなよく慣れた場所を優先的に探索

Slide 96

Slide 96 text

環境の汎化

Slide 97

Slide 97 text

環境の汎化とは 90 ⚫ 強化学習において多くの学習は、 実世界と比較して単純なシミュレーション環境で行われる ⚫ シミュレーション環境で上手く学習出来たとしても、 環境の複雑性の差から実世界では上手く動作しないことが非常に多い… ⚫ 一般的に、複雑な方策を学習させるためには複雑な環境が必要 ⚫ より複雑で一般的な環境で学習することで、 多様で頑健な方策を獲得する - 例)仮想世界→実世界、静的→動的

Slide 98

Slide 98 text

環境の汎化: 目次 91 ⚫ Learning Dexterous In-Hand Manipulation [OpenAI+ 2018] - 環境に多様なノイズを加え、適応可能な環境の範囲を拡大することで 実世界での高次元で複雑な制御を可能に ⚫ Emergence of Locomotion Behaviours in Rich Environments [Heess+ 2017] - 複雑で多様な環境を用いることで、単純な報酬から多様で頑健な行動を創発 ⚫ Emergent of Complexity via Multi-Agent Competition [Bansal+ 2018] - シンプルな環境でも、競争的なself-playでの学習によって 複雑で多様な行動を創発

Slide 99

Slide 99 text

環境の汎化: 目次 92 ⚫ Learning Dexterous In-Hand Manipulation [OpenAI+ 2018] - 環境に多様なノイズを加え、適応可能な環境の範囲を拡大することで 実世界での高次元で複雑な制御を可能に ⚫ Emergence of Locomotion Behaviours in Rich Environments [Heess+ 2017] - 複雑で多様な環境を用いることで、単純な報酬から多様で頑健な行動を創発 ⚫ Emergent of Complexity via Multi-Agent Competition [Bansal+ 2018] - シンプルな環境でも、マルチエージェントによる競合を起こすことで 複雑で多様な行動を創発

Slide 100

Slide 100 text

OpenAI Dactyl 93 シミュレーション上のみの学習で、実世界に適用可能な複雑な動作を獲得

Slide 101

Slide 101 text

Domain Randomization 94 ⚫ 実世界の完全なモデル化は不可能 →実世界とシミュレーション環境に差が生じてしまう ⚫ シミューレーションに対して多様なノイズを加えることで、 適応可能な環境の範囲を広げる - 物理パラメータ, 観測誤差, 制御誤差, 遅延, オブジェクトに加わる力, … Sim Real Sim Real Real

Slide 102

Slide 102 text

Domain Randomization 95 ⚫ 物理パラメータ - 大きさ, 質量, 摩擦係数, 重力, アクチュエータに加わる力, … ⚫ 観測誤差 - 指先の位置, オブジェクトの位置, オブジェクトの向き, … ⚫ トラッキング誤差 - モーションキャプチャのマーカーをマスクする ⚫ 制御誤差 & 遅延 - 行動の値に数%の加算・乗算, 一定の確率で行動が遅延する ⚫ 環境ステップの開始のタイミングをランダム化 ⚫ オブジェクトにランダムな強さ・向きの力を加える

Slide 103

Slide 103 text

Visual appearance randomizations 96 ⚫ カメラの位置, 照明の設定, ハンドとオブジェクトの位置・向き・テクスチャ

Slide 104

Slide 104 text

Asymmetric Actor-Critic 97 ⚫ 実世界で学習を行わない場合、 価値関数はシミュレーション上でしか使用しない →価値関数は、シミュレーション上でしか得られない情報にアクセス出来る

Slide 105

Slide 105 text

学習結果 98 実世界で50回テストした場合の成功回数の最大値と中央値 ランダム化 あり ランダム化 なし

Slide 106

Slide 106 text

環境の汎化: 目次 99 ⚫ Learning Dexterous In-Hand Manipulation [OpenAI+ 2018] - 環境の物理パラメータにノイズを加えることで実世界の複雑性を表現し、 実世界での高次元な行動の制御を可能に ⚫ Emergence of Locomotion Behaviours in Rich Environments [Heess+ 2017] - 複雑で多様な環境を用いることで、単純な報酬から多様で頑健な行動を創発 ⚫ Emergent of Complexity via Multi-Agent Competition [Bansal+ 2018] - シンプルな環境でも、マルチエージェントによる競合を起こすことで 複雑で多様な行動を創発

Slide 107

Slide 107 text

課題とする背景 100 ⚫ これまでの強化学習で成功したタスクの多くは、報酬関数が明確だった ⚫ しかし、報酬関数が明確ではないタスクに対して、 適切な報酬関数を人手で設計することは困難 - 学習が進まない… - 望まない局所解に陥ってしまう… ⚫ 多様で複雑な環境で学習を行うことによって、 単純な報酬から多様で頑健な行動を創発させる

Slide 108

Slide 108 text

分散型PPO ⚫ 多様な環境で高速に頑健な方策を獲得するために、分散型PPOを用いる ⚫ Worker: 環境でのデータの収集、勾配の計算を行う ⚫ Chief: Workerから送られる勾配を用いてネットワークを更新 学習したネットワークをworkerに送る Worker Worker Worker Chief ・・・ 勾配 Worker Worker Worker Chief ・・・ モデル 101

Slide 109

Slide 109 text

分散型PPOの評価 ⚫ 3種類の環境で評価を行った ⚫ TRPOやA3Cよりも高速に学習 ⚫ 学習速度がWorkerの数に比例する 102

Slide 110

Slide 110 text

用いる環境 ⚫ 歩行タスクを行うための多様な環境を用意 ⚫ エピソードごとに環境をランダムに変更する ⚫ 報酬: 進んだ距離 + 胴体を前に傾けた角度 103

Slide 111

Slide 111 text

ネットワーク構造 ⚫ 入力を内部環境の情報と外部環境の情報の2つに分ける ⚫ 学習速度が大幅に向上 104

Slide 112

Slide 112 text

学習結果 ⚫ 単純な報酬から多様な行動が創発された 105

Slide 113

Slide 113 text

環境の汎化: 目次 ⚫ Learning Dexterous In-Hand Manipulation [OpenAI+ 2018] - 環境の物理パラメータにノイズを加えることで実世界の複雑性を表現し、 実世界での高次元な行動の制御を可能に ⚫ Emergence of Locomotion Behaviours in Rich Environments [Heess+ 2017] - 複雑で多様な環境を用いることで、単純な報酬から多様で頑健な行動を創発 ⚫ Emergent of Complexity via Multi-Agent Competition [Bansal+ 2018] - シンプルな環境でも、マルチエージェントによる競合を起こすことで 複雑で多様な行動を創発 106

Slide 114

Slide 114 text

着目する課題背景 ⚫ 一般的に、複雑な行動を実行可能なエージェントを学習するには、 複雑な環境が必要 ⚫ しかし、複雑な環境は作成が困難… ⚫ マルチエージェントでの競合学習によって、 シンプルな環境で複雑な行動を創発させる 107

Slide 115

Slide 115 text

タスク ⚫ Run to Goal - 相手より早く正面のゴールに到達する ⚫ You Shall Not Pass - 片方はゴールに到達しようとし、片方は阻止する ⚫ Sumo - 相手をステージの外に出すか、ステージ上に倒す ⚫ Kick and Defend - シューター: ボールをゴールに入れる - キーパー: ボールをゴールに入れない 108

Slide 116

Slide 116 text

マルチエージェント環境の利点 ⚫ シンプルなマルチエージェント環境でも、非常に複雑な行動が 創発される可能性がある - 環境の複雑性がその環境で動作するエージェントに依存するため、 エージェントの学習が進むにつれて環境がより複雑になる - 囲碁の環境とルールは単純だが、勝つためには非常に複雑な戦略が必要 ⚫ エージェントに適切なカリキュラムを提供可能 - エージェントの実力に関係なく、同等の強さのエージェントと 対戦させることにより、適切な難易度のタスクを提供できる 109

Slide 117

Slide 117 text

カリキュラムの導入 ⚫ 競争のための報酬のみでは、報酬がスパースになってしまう… ⚫ 競争のために必要な基本動作を学ぶためのカリキュラムを導入する ⚫ 基本動作を獲得するための報酬 と、競争のための報酬を用いる - : アニーリング係数(時間の経過とともに減少) = + − ⚫ 基本動作のための報酬は、タスクによって変更する - 例)ゴールまでの距離, 移動距離, -1×ボールとゴールの距離, … 110

Slide 118

Slide 118 text

対戦相手のサンプリング ⚫ 常に最新の敵とのみ対戦を行った場合、以下の問題が発生する - 強さに差が生じた場合、どんどん差が広がっていってしまう… - 最新の敵に対してオーバーフィットしてしまう… ⚫ 対戦相手を過去のランダムな敵からサンプリングすることで、 学習の安定化と堅牢なポリシーの獲得が可能になる 常に最新の敵と対戦 過去のランダムな敵と対戦 111

Slide 119

Slide 119 text

結果 ⚫ 単純な環境であるにもかかわらず、複雑な行動を学習 112

Slide 120

Slide 120 text

まとめと所感

Slide 121

Slide 121 text

まとめ ⚫ 状態表現の汎化 - エージェントが観測する情報に事前知識を加えることで、 環境内で共通する性質や法則を考慮した状態表現を可能にすること ⚫ 行動・方策の汎化 - 事前知識として環境やタスクに依存しないメタ的な一連の動作(スキル) を学習することで、より一般的な動作を獲得すること ⚫ 報酬の汎化 - 環境やタスクに依存しない内発的報酬を用いることで、 外発的報酬での問題を緩和すること ⚫ 環境の汎化 - より複雑で一般的な環境で学習することで、 多様で頑健な方策を獲得すること 113

Slide 122

Slide 122 text

所感 ⚫ 内発的報酬(好奇心) とWorld Modelsを組み合わせることで、 自律的に世界を理解するエージェントを開発出来るのではないか ⚫ 環境の遷移は考慮しつつ、注意機構を応用することで Noisy-TV Problemを克服できないか ⚫ 状態・状態の軌道の多様性の最大化を行うだけでは、 行動空間が高次元の場合に多くのスキルが有用ではないものになってしまう →人間ではありえないめちゃくちゃな姿勢・行動など →多様性以外の何らかの方向性も考慮しつつ探索する必要がある ⚫ ロボットハンドだけでなく、姿勢ごと変化してしまうようなさらに 高難度の環境でのSim2Realを可能にする必要がある ⚫ どのような環境でどのようなタスクを学習するべきかを提案・検討する 研究がまだまだ少ない。マルチタスクの定義もかなり曖昧。 114

Slide 123

Slide 123 text

参考文献

Slide 124

Slide 124 text

参考文献 (1) ⚫ David Silver, et al. (2017). Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm. https://arxiv.org/abs/1712.01815 ⚫ Abbas Abdolmaleki, Jost Tobias Springenberg, Yuval Tassa, Remi Munos, Nicolas Heess, Martin Riedmiller (2018). Maximum a Posteriori Policy Optimisation. https://arxiv.org/abs/1806.06920 ⚫ Barret Zoph, Quoc V. Le (2017). Neural Architecture Search with Reinforcement Learning. https://arxiv.org/abs/1611.01578 ⚫ S. M. Ali Eslami, et al. (2018). Neural scene representation and rendering. http://science.sciencemag.org/content/360/6394/1204.full?ijkey=kGcNflzOLiIKQ&keytype =ref&siteid=sci ⚫ Diederik P Kingma, Max Welling (2013). Auto-Encoding Variational Bayes. https://arxiv.org/abs/1312.6114 ⚫ Kingma, Diederik P., et al. (2014). Semi-supervised learning with deep generative models. https://arxiv.org/abs/1406.5298 ⚫ Kihyuk Sohn, Honglak Lee, Xinchen Yan (2015). Learning Structured Output Representation using Deep Conditional Generative Models. https://papers.nips.cc/paper/5775-learning- structured-output-representation-using-deep-conditional-generative-models 115

Slide 125

Slide 125 text

参考文献 (2) ⚫ David Ha, Jürgen Schmidhuber (2017). World Models. https://arxiv.org/abs/1803.10122 ⚫ Kevin Frans, Jonathan Ho, Xi Chen, Pieter Abbeel, John Schulman (2017). Meta Learning Shared Hierarchies. https://arxiv.org/abs/1710.09767 ⚫ Benjamin Eysenbach, Abhishek Gupta, Julian Ibarz, Sergey Levine (2018). Diversity is All You Need: Learning Skills without a Reward Function. https://arxiv.org/abs/1802.06070 ⚫ Joshua Achiam, Harrison Edwards, Dario Amodei, Pieter Abbeel (2018). Variational Option Discovery Algorithms. https://arxiv.org/abs/1807.10299 ⚫ Yuri Burda, Harri Edwards, Deepak Pathak, Amos Storkey, Trevor Darrell, Alexei A. Efros (2018). Large-Scale Study of Curiosity-Driven Learning. https://arxiv.org/abs/1808.04355 ⚫ Deepak Pathak, Pulkit Agrawal, Alexei A. Efros, Trevor Darrell (2017). Curiosity-driven Exploration by Self-supervised Prediction. https://arxiv.org/abs/1705.05363 ⚫ Yuri Burda, Harrison Edwards, Amos Storkey, Oleg Klimov (2018). Exploration by Random Network Distillation (2018). https://arxiv.org/abs/1810.12894 ⚫ Christopher Stanton, Jeff Clune (2018) Deep Curiosity Search: Intra-Life Exploration Can Improve Performance on Challenging Deep Reinforcement Learning Problems. https://arxiv.org/abs/1806.00553v2 116

Slide 126

Slide 126 text

参考文献 (3) ⚫ Nikolay Savinov, Anton Raichuk, Raphaël Marinier, Damien Vincent, Marc Pollefeys, Timothy Lillicrap, Sylvain Gelly (2018). Episodic Curiosity through Reachability. https://arxiv.org/abs/1810.02274 ⚫ Ildefons Magrans de Abril, Ryota Kanai (2018). Curiosity-driven reinforcement learning with homeostatic regulation. https://arxiv.org/abs/1801.07440 ⚫ Marcin Andrychowicz, Bowen Baker, Maciek Chociej, Rafal Jozefowicz, Bob McGrew, Jakub Pachocki, Arthur Petron, Matthias Plappert, Glenn Powell, Alex Ray, Jonas Schneider, Szymon Sidor, Josh Tobin, Peter Welinder, Lilian Weng, Wojciech Zaremba (2018). Learning Dexterous In-Hand Manipulation. https://arxiv.org/abs/1808.00177 ⚫ Nicolas Heess, Dhruva TB, Srinivasan Sriram, Jay Lemmon, Josh Merel, Greg Wayne, Yuval Tassa, Tom Erez, Ziyu Wang, S. M. Ali Eslami, Martin Riedmiller, David Silver (2017). Emergence of Locomotion Behaviours in Rich Environments. https://arxiv.org/abs/1707.02286 ⚫ Trapit Bansal, Jakub Pachocki, Szymon Sidor, Ilya Sutskever, Igor Mordatch (2018). Emergent Complexity via Multi-Agent Competition. https://arxiv.org/abs/1710.03748 117