RGoal Architecture:
再帰的にサブゴールを設定できる
階層型強化学習アーキテクチャ
第９回 汎用人工知能研究会
2018-08-30

1

私の研究の長期的目標• 脳を模倣して「人間のような知能を持つ機械」を作る。
運動野
前頭前野

言語野

視覚野

大脳皮質

基底核

扁桃体

海馬

小脳

脳のリバースエンジニアリング
2

現在の短期的目標：前頭前野周辺の計算モデルの構築を目指す[Ichisugi, ICANN 2012][Ichisugi and Takahashi, BICA 2018]

Yuuji Ichisugi, A Computational Model of Motor
Areas Based on Bayesian Networks and Most
Probable Explanations, In Proc. of The
International Conference on Artificial Neural
Networks (ICANN 2012), Part I, LNCS 7552,
pp.726--733, 2012.

Yuuji Ichisugi and Naoto Takahashi, A Formal Model of theMechanism of Semantic Analysis in the Brain, In Proc. ofInternational Conference on Biologically Inspired CognitiveArchitectures (BICA 2018), (to appear).

運動野
前頭前野

言語野

視覚野

[Nakada and Ichisugi, BICA 2017]

大脳皮質基底核

扁桃体

海馬

Hidemoto Nakada and Yuuji Ichisugi,Context-Dependent Robust Text Recognition using
Large-scale Restricted Bayesian Network, In Proc. ofInternational Conference on Biologically Inspired
Cognitive Architectures (BICA 2017), Procedia
Computer Science, Vol. 123, pp.314--320, 2018.

小脳

前頭前野(PFC)の機能• 「前頭前野はヒトをヒトたらしめ，思考や創造性を担う脳の最高中枢であると考えられている。」• 脳科学者ペンフィールドの姉の例：「彼の姉は前頭前野に脳腫瘍ができたため，その切除手術を受けた結果、例えば「料理」のような行動が困難になったことが報告されている。」「前頭前野に損傷を受けると，このような順序だった行動の組立をする，つまり段取りをうまくとる事ができなくなってしまうのである。 」「前頭前野 - 脳科学辞典」
http://bsd.neuroinf.jp/wiki/%E5%89%8D%E9%A
0%AD%E5%89%8D%E9%87%8E

４つの並行した皮質－基底核ループ
関係する主な領野と機能： Ｍ１・ＰＭ運動

ＦＥＦ
眼球運動

前頭前野
実行機能・連合

ＡＣＣ
情動・動機

大脳皮質

線条体
黒質網様体・
淡蒼球内節
視床
Principles of Neural Science 5th ed.
Eric R. Kandel et al. , McGraw-Hillp. 987

前頭前野モデルの目標• ２次元マップ上で行動計画を立てながら道具を使ってエサを取り、仲間と簡単な言語で情報交換をする知的エージェントを作る。
----------##|...:.....|#--------|......C..+###|..!....||.........| # ---+----|.......||.........| # |.......||....E..||..@......| ##+.......+###+.......+#####|......*..||.......|-----+----+-------|.?.....|##--------#

無限に広い空間数に制限のないアイテム

エージェントが動作する環境のイメージ

6

前頭前野モデル構築のアイデア
今日の話• 再帰的に動作する階層型強化学習• 単一化の機構• 行動価値テーブルの記憶域管理機構• 注意とオブジェクトファイルの機構• ワーキングメモリへの読み書きの機構• メタ認知、メタ学習の機構

7

人間が再帰的にサブゴールを設定する例
初期状態

はしごを置いた状態

はしごを置く

初期状態

上って取る

倉庫にいる状態

倉庫に行く

初期状態

物を取った状態

はしごを運ぶ

部屋を出た状態

部屋を出る

はしごを置いた状態

廊下を進む

倉庫にいる状態8

階層型強化学習の利点
１．サブルーチンをタスク間で共有すれば、マルチタスクでの学習が速くなる。
２．学習済みのタスクを組み合わせて、未学習のタスクの近似解が高速に得られる。

9

サブルーチン共有の例
高いところのものを取る
はしごを置く初期状態

はしごを置いた状態

電球を取り換える
木の枝を切る

最終目的は違っていても、「はしごを置く」というサブルーチンは共通

10MAXQ [Dietterich 2000]• 多層の階層型強化学習アーキテクチャ。
• タスクの階層構造を設計者が与える。
• 実行・学習にはスタックが必要。
• 探索空間に制約があり近似解しか得られない。

Thomas G. Dietterich, Hierarchical Reinforcement Learning with the MAXQ Value Function Decomposition,
Journal of Articial Intelligence Research 13, 227-303, 2000.

11

RGoal アーキテクチャ• 特徴：– 再帰的にサブゴールを設定可能– スタックなしで、１つのテーブルと１重ループのみで動作• ２つの仮定：
１．サブゴールを切り替えると直前のサブゴールは忘れるが、おおもとのグローバルゴールは忘れない。
２．ランドマークと呼ぶ状態の集合をあらかじめ与える。ゴール、サブゴールは必ずランドマーク上。
12

拡張状態行動空間 [Levy and Shimkin 2011]
𝒮𝒮 = 0,0 , 0,1 , …
𝒜𝒜 = 𝑈𝑈𝑈𝑈, 𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷, 𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅, 𝐿𝐿𝐿𝐿𝐿𝐿𝐿𝐿, …

Up
LeftDown

𝑠𝑠

Right

拡張𝑠𝑠̃ = (𝑠𝑠, 𝑚𝑚1 )𝑚𝑚1𝑚𝑚2

𝑠𝑠

𝐺𝐺𝑚𝑚3
𝑠𝑠̃ = (𝑠𝑠, 𝑚𝑚2 )𝐺𝐺𝑚𝑚2𝑚𝑚2𝑠𝑠̃ = (𝑠𝑠, 𝑚𝑚3 )𝑚𝑚2𝑚𝑚1𝑚𝑚1𝑠𝑠

𝑠𝑠

𝑚𝑚3𝑚𝑚3𝑚𝑚3もともとの状態 s とサブゴール gの組 𝑠𝑠̃ = (𝑠𝑠, 𝑔𝑔) を拡張された状態と見なす。
𝒮𝒮̃ = 𝒮𝒮 × ℳ
𝒜𝒜̃ = 𝒜𝒜 ∪ 𝒢𝒢ℳℳ = {𝑚𝑚1 , 𝑚𝑚2 , … } ⊆ 𝒮𝒮
𝒢𝒢ℳ = 𝐺𝐺𝑚𝑚1 , 𝐺𝐺𝑚𝑚2 , …

13

拡張行動空間上のＭＤＰ・ ランドマークが n 個与えられれば、マップは n 階建てになる。
G

m1
@m2

m3

・ エージェントはフロア内を移動するか、フロアを切り替えるのかを選択する。
（フロア切り替え＝サブゴール切り替え）

GG

数学的構造は通常のMDP と同じなので、MDP を前提とした様々な理論的帰結（例えば厳密解への収束性）や強化学習の高速化技術（例えば関数近似や適格度トレース）が利用可能。

14

価値関数分解[Singh 1992][Dietterich 2000]• 関数 Q をサブゴール g の到着の前後で分解
sg

G

𝑄𝑄𝐺𝐺𝜋𝜋 (𝑠𝑠, 𝑔𝑔), 𝑎𝑎 = 𝑀𝑀𝜋𝜋 𝑠𝑠, 𝑔𝑔, 𝑎𝑎 + 𝑉𝑉𝐺𝐺𝜋𝜋 𝑔𝑔• 関数 M はグローバルゴール G に依存しない
ため、異なるタスク間で共有できる。
– パラメタが減って、学習が速くなる。

• 例：「はしごを置く」という行動のコスト（労力）は、はしごを使う目的に依存しない。
15

行動選択と学習
グリーディーな行動選択：
𝑎𝑎 = argmax 𝑀𝑀(𝑠𝑠, 𝑔𝑔, 𝑎𝑎)
Sarsa による学習：𝑎𝑎

𝑀𝑀 𝑠𝑠, 𝑔𝑔, 𝑎𝑎 ← 𝑀𝑀 𝑠𝑠, 𝑔𝑔, 𝑎𝑎+𝛼𝛼(𝑟𝑟 + 𝑀𝑀 𝑠𝑠′, 𝑔𝑔′, 𝑎𝑎′ − 𝑀𝑀 𝑠𝑠, 𝑔𝑔, 𝑎𝑎 + 𝑉𝑉𝐺𝐺 𝑔𝑔′ − 𝑉𝑉𝐺𝐺 𝑔𝑔 )𝑉𝑉𝐺𝐺 𝑔𝑔 は 𝑀𝑀 を使って高速に計算可能
𝑉𝑉𝐺𝐺 𝑔𝑔 = Σ𝑎𝑎 𝜋𝜋((𝑔𝑔, 𝐺𝐺), 𝑎𝑎)𝑀𝑀(𝑔𝑔, 𝐺𝐺, 𝑎𝑎)16階層型強化学習の利点１．サブルーチンをタスク間で共有すれば、マルチタスクでの学習が速くなる。
２．学習済みのタスクを組み合わせて、未学習のタスクの近似解が高速に得られる。
• ここまでの機構は、１の利点のみを実現。
• ２を実現するために「思考モード」を導入。
（次ページ）
17

思考モードで解く問題
m4• 隣接するランドマーク間の最適移動経路は学習済みだとする。

m1• 離れたランドマーク間の最適移動経路の近似解は、隣接するランドマークをつなげば得られるはず。

m1

m2

m3

m3m2

• この近似解は実際に行動しなくても「脳内シミュレーション」だけで見つけられる。[Singh 1992]– 一種のモデルベース強化学習
18

思考モードにおける移動• s から g （ランドマーク間）の移動を１ステップで脳内シミュレーションする。そのときの報酬
は M(s,g,a)
𝑠𝑠𝑎𝑎

𝑠𝑠′

...
𝑀𝑀𝜋𝜋 𝑠𝑠, 𝑔𝑔, 𝑎𝑎𝑔𝑔

• 未経験のタスクを脳内で解くために、時間を抽象化して高速にシミュレーション
19アルゴリズム• 基本構造は Sarsa• フラットなテーブル M を１つだけ使用• 単純な操作の１重ループ• 思考モードもわずかな修正だけで実現

20

アルゴリズム• 思考モードもわずかな修正だけで実現

環境のモデル P(s',r|s,a) を別途学習する必要がない。
21

実験１
・ マップとランドマークの集合は固定。
スタート S とゴール G をエピソードごとにランダムに設定する。
・ pretraining フェーズ：
隣接するランドマークのみを S と G とするエピソードを５０万ステップ分実行。
・ 思考フェーズ：ランドマーク上のランダムな S と G を設定したエピソードを思考モードで１万ステップ分実行。
・ 評価フェーズ：任意の場所 S とランドマーク上の G をランダムに設定したエピソードを１５０万ステップ実行。

22

実験１の結果
episodes/steps

0.3

0.25

Proposed+pre+think

0.2

Proposed+pre0.15

Proposed
Sarsa+pre0.1

Sarsa0.05

0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

pretraining

x 100,000 steps

いずれの条件においても、提案アーキテクチャの収束速度がsarsa を上回っている23

実験２の結果
0.3

実験１とほぼ同じだが、思考フェーズで学習したものとおなじタスクで評価フェーズを実行

episodes/steps

0.25

0.2

Proposed+pre+think
Proposed+pre

0.15

Proposed
Sarsa+pre

0.1

Sarsa

0.05

0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

pretraining

x 100,000 steps

思考フェーズを実行した場合、未経験のタスクに対してもゼロショットでほぼ最適な行動が実行できている。

24

先行研究との関係• 提案アーキテクチャは、階層型強化学習のいくつかのアイデアをシンプルな１つのアーキテクチャに統合– 可変時間分解能モデル [Singh 1992]– 再帰的なサブゴール設定 [Kaelbling 1993]– サブルーチンの早期終了[Kaelbling 1993]– 価値関数分解 [Singh 1992][Dietterich 2000]– 拡張状態行動空間 [Levy et al. 2011]• 状態抽象、 自律的もしくは模倣によるランドマーク獲得の機能は今後追加– 提案アーキテクチャの拡張はおそらく容易25まとめと今後• RGoal アーキテクチャを提案• 人間の知能の２つの重要な特性を再現– 再帰的サブゴール設定– 時間を抽象化した高速なプランニング• 今後、提案アーキテクチャを拡張し、前頭前野周辺の情報処理機構のモデルを構築

26

予備スライド27

RGoal アーキテクチャの特徴• ３つの制限のおかげでアルゴリズムがシンプ
ルに– ランドマークのみがゴール・サブゴール– サブゴールとグローバルゴール以外の実行コン
テキストを忘却– サブルーチン終了時の状態が一意

28グローバルゴール• 次々に再帰的にサブゴールを設定しても、おおもとのゴール（グローバルゴールと呼ぶ）は決して忘れないと仮定• サブゴール達成後、あらためてグローバルゴールを目指して行動を開始• 生物におけるグローバルゴールの例：– 空腹やのどの渇きなどの生理的欲求の解消

29

ランドマーク• タスクを解く上でのマイルストーン（中間目標）となり得る状態• ゴール、サブゴールは必ずランドマーク上にあると仮定• 今回はランドマークの集合はあらかじめ与えるものと仮定• 将来は、模倣や何らかのヒューリスティックスで獲得
30

提案アーキテクチャにおける「サブルーチン」の特徴• Options [Sutton et al. 1999] より
HDG [Kaelbling 1993] の考え方に近い。
• 開始状態集合は全状態、終了状態は１つ– アーキテクチャがシンプルに• サブゴールに到着しなくても、いつでも別のサブゴールに切り替え可能– 行動がより柔軟に

31

思考モードの例• m1 と m3 の間の最適経路の近似解を求めるには
S=m1, G=m3 として思考モードによる学習を続ければよい。
• 学習の結果、M(m1,m3,Gm2) が大きな値を持つことによって、m1→ m2 → m3 という経路が表現される。

m1m3
m232

MAXQ 価値関数分解[Dietterich 2000]
𝑄𝑄 𝑝𝑝, 𝑠𝑠, 𝑎𝑎 = 𝑉𝑉 𝑎𝑎, 𝑠𝑠 + 𝐶𝐶(𝑝𝑝, 𝑠𝑠, 𝑎𝑎)

p は親タスク、 a は子タスクまたはプリミティブな行動。
状態（サブゴール）ではなく行動（サブルーチン）の価値に着目した式。
V(a,s) は親タスク p に依存しないのでタスク間で共有できる。
ただし V(a,s) は以下の式で再帰的に計算する必要がある。
max 𝑄𝑄(𝑝𝑝, 𝑠𝑠, 𝑎𝑎) 𝑖𝑖𝑖𝑖 𝑝𝑝 𝑖𝑖𝑖𝑖 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐
𝑉𝑉 𝑝𝑝, 𝑠𝑠 = � 𝑎𝑎
𝑉𝑉(𝑝𝑝, 𝑠𝑠)𝑖𝑖𝑖𝑖 𝑝𝑝 𝑖𝑖𝑖𝑖 𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝
𝑄𝑄 𝑝𝑝, 𝑠𝑠, 𝑎𝑎 = 𝑉𝑉 𝑎𝑎, 𝑠𝑠 + 𝐶𝐶(𝑝𝑝, 𝑠𝑠, 𝑎𝑎)
ps
各区間における報酬の総和a𝑉𝑉(𝑎𝑎, 𝑠𝑠)...
𝐶𝐶(𝑝𝑝, 𝑠𝑠, 𝑎𝑎)

𝑄𝑄(𝑝𝑝, 𝑠𝑠, 𝑎𝑎)33

式 (11) の softmax の式の妥当性
𝜋𝜋 𝑠𝑠, 𝑔𝑔 𝑎𝑎 =exp 𝛽𝛽𝛽𝛽 𝑠𝑠, 𝑔𝑔 , 𝑎𝑎Σ𝑎𝑎′ exp 𝛽𝛽𝛽𝛽 𝑠𝑠, 𝑔𝑔 , 𝑎𝑎′
exp 𝛽𝛽(𝑀𝑀 𝑠𝑠, 𝑔𝑔, 𝑎𝑎 + 𝑉𝑉𝐺𝐺 𝑔𝑔 )=Σ𝑎𝑎′ exp 𝛽𝛽(𝑀𝑀 𝑠𝑠, 𝑔𝑔, 𝑎𝑎′ + 𝑉𝑉𝐺𝐺 𝑔𝑔 )exp(𝛽𝛽𝑉𝑉𝐺𝐺 𝑔𝑔 ) exp 𝛽𝛽𝛽𝛽 𝑠𝑠, 𝑔𝑔, 𝑎𝑎=exp(𝛽𝛽𝑉𝑉𝐺𝐺 𝑔𝑔 ) Σ𝑎𝑎′ exp 𝛽𝛽𝛽𝛽 𝑠𝑠, 𝑔𝑔, 𝑎𝑎′
exp 𝛽𝛽𝛽𝛽 𝑠𝑠, 𝑔𝑔, 𝑎𝑎== (11)′Σ𝑎𝑎′ exp 𝛽𝛽𝛽𝛽 𝑠𝑠, 𝑔𝑔, 𝑎𝑎34