SlideShare a Scribd company logo
1 of 18
Download to read offline
「これからの強化学習」勉強会#1
テキスト
これからの強化学習
牧野 貴樹 澁谷 長史 白川 真一 浅田 稔 麻生 英樹 荒井 幸代 飯間 等 伊藤 真
大倉 和博 黒江 康明 杉本 徳和 坪井 祐太 銅谷 賢治 前田 新一 松井 藤五郎
南 泰浩 宮崎 和光 目黒 豊美 森村 哲郎 森本 淳 保田 俊行 吉本 潤一郎
森北出版 2016-10-27
Amazonで詳しく見る by G-Tools
今回の範囲
第1章 強化学習の基礎的理論 ―― 1.1節~1.3節
第2章 強化学習の発展的理論
第3章 強化学習の工学応用
第4章 知能のモデルとしての強化学習
2016/12/31 Chihiro Kusunoki
その他の参考文献
強化学習
Richard S.Sutton Andrew G.Barto 三上 貞芳 皆川 雅章
森北出版 2000-12-01
Amazonで詳しく見る by G-Tools
目次
強化学習って何
強化学習の特徴
簡単な例:バンディットタスク
強化学習問題の定式化
状態と報酬
マルコフ決定過程
最適方策の解法
最適方策の現実的な解法
モンテカルロ法
動的プログラミング
Sarsa
Q学習
→ 2
強化学習って何
教師あり学習 教師なし学習 強化学習
→ 1
→ 3
2, 1, 3,
2, 3, 1,
1
…
1
…
1
正解があり、前もって正解
サンプルから学ぶ。
正解はなく、自分でデータ
から何か学ぶ。
正解とかではなく収益の最
大化を目指し、自分の行動
と対する環境の応答に学ぶ。
強化学習の特徴
• 得られるデータが自分の行動に依存する。
食堂1 食堂2 食堂3 食堂4 食堂5
Ex. これから1週間出先での作業になったあなたは、出先周辺の食堂1~5のいずれかで
昼食を食べる。これらの食堂に関する事前知識はない。あなたは1週間分の昼食の
満足度の和を最大化することを目指して行動する(=日ごとに食堂を選択する)。
→ 初日に食堂1に行くという行動を取れば、手に入るのは食堂1のデータになる。
• 報酬最大化とデータ収集のバランスを取って行動を計画しなければならない
( 探索と利用のトレードオフ = exploration-exploitation tradeoff )。
3日目までに食堂1~3で昼食を食べ、うち食堂2の満足度が最大とわかったとする。
だったら4日目は食堂2で昼食を食べれば満足度はそれなりに大きくなるはず。
でも、食堂4と食堂5の昼食は食堂2より満足度が大きいかもしれない。
現実には、例えば「これだけ満足な昼食ならじゅうぶん」という参照値があなたの中にあり、
かつ食堂2がそれを達成していれば、あなたはもう食堂4や5には訪問しないかもしれない。
または、未訪問の食堂への期待の程度(満足度の事前確率分布)があり、食堂4や5への期待の
程度と食堂2の実測値を比較して判断するかもしれない。強化学習では実際このような計画をする。
簡単な強化学習問題の例 ―― 多腕バンディットタスク
目の前に10台のスロットマシンがある。各スロットマシンには固有の確率分布があり、
確率的な報酬を返す。事前に各スロットマシンの確率分布については何もわからない。
あなたはこれから合計1000回いずれかのスロットマシンを引く。どのような方針で
スロットマシンを選択していけば報酬の合計値を最大化できるだろうか。
多腕バンディットタスクとは → 以下のような問題。
回答例1.( greedy アルゴリズム )
• まず各スロットマシンを n 回ずつ引き、その後は常に「それまでの試行結果から求めた
報酬の期待値最大のスロットマシン」を引く。
△ n の決定に悩む。大きくすれば期待値の見積もりはよくなるが報酬が犠牲になる。
× 最初 n 回の試行で各スロットマシンの期待値の大小を見積もりを誤る可能性がある。
本当は報酬が小さいスロットマシンを大きく見積もってしまう分にはまだよいが
(もしその腕を後で exploit したとすると、そこで期待値が修正されていくから)、
本当は報酬が大きいスロットマシンを小さく見積もってしまうと軌道修正できない。
→ 軌道修正できないのはちょっと避けたいので、別の方針を考える。
回答例2.( ε-greedy アルゴリズム )
• まず各スロットマシンを1回ずつ引き、その後は確率 1-ε ( 0<ε≦1 ) で「それまでの
試行結果から求めた報酬の期待値最大のスロットマシン」を引き、確率 ε で「ランダム
に選択したスロットマシン」を引く。
○ 確率 ε で explore し続けるので、軌道修正できない問題はとりあえず回避できた。
△ ε の決定に悩む。大きくすればより早い段階で期待値の見積もりはよくなる反面、
後々の exploit を妨げるので報酬が犠牲になる。
△ というか、explore し切れていないときは ε を大きめに、explore し切れてきたら
ε を小さくして exploit にふっていくのがもっと賢そう。
→ とはいえ ε の時間推移を設計するのは難しい。
→ そもそも早い段階で見積もり精度を上げておきたい理由は、過小評価方向への見積もり
ミスを何としても避けたいから(過小評価方向へのミスは軌道修正しにくい)。
→ だったら、どうやっても過小評価方向へ見積もりミスしないように、予め各スロット
マシンからぐっと大きい報酬が K 回出たことにしておき、期待値に下駄をはかせておけ
ばよい( 不確かなときは楽観的に )。
• このアイデアのいいところは、explore し切れていないスロットマシンをよく引く
ということを勝手に達成してくれる( 期待値が修正されず高いままなので )。
回答例3.( 楽観的初期値法 )
• 予め各スロットマシンからぐっと大きい報酬 rsup が K 回出たことにしておく。その後
は ε-greedy アルゴリズムなどにしたがって行動する。
→ 割と賢くなってきた気がするが、どの程度 explore したかの判定にそのスロットマシン
をそれまでに引いた回数などが加味されてないあたりだいぶ乱暴ではある。
→ 各ステップでどれくらい見積もり精度が出ているかをもう少しちゃんと考えたい。
回答例4.( UCB1アルゴリズム ) UCB = Upper Confidence Bound
• まず各スロットマシンを1回ずつ引き、その後は μi + Ui が最大のスロットマシンを引く。
μi =「それまでの試行結果から求めたスロットマシン i の報酬の期待値」
Ui =「それまでの試行結果から求めたスロットマシン i の報酬の信頼区間の半幅」
Ui は、スロットマシンから出てくる報酬の値の幅を R、全スロットマシンを引いた回数
N、スロットマシン i を引いた回数 Ni をつかって以下(※)。
※ 信頼区間幅の導出には独立な試行に関する Hoeffding の不等式をつかう。
https://en.wikipedia.org/wiki/Hoeffding's_inequality
または、UCBアルゴリズムの元論文をみてください。
Peter Auer, Nicoló Cesa-Bianchi, and Paul Fischer. Finite-time Analysis of the
Multiarmed Bandit Problem. Machine Leraning, 47(2/3):235-256, 2002.
https://homes.di.unimi.it/~cesabian/Pubblicazioni/ml-02.pdf
𝑈𝑖 = 𝑅
2 ln 𝑁
𝑁𝑖
→ 色々なアルゴリズムがありうるが、どれがいつも最適というのはなく、問題設定による。
一般的な強化学習問題の定式化
行動 at
環境
エージェント
報酬 rt
状態 st
• 方策 π(a|s)
• 収益 gt=Σk=0 γkrt+k+1
時刻 報酬 状態 行動
0 r0 (=0) s0 → a0
1 r1 s1 → a1
2 r2 s2 → a2
3 r3 s3 → a3
π(a|s) は st=s のとき at=a を選択する確率。
γ は将来の報酬に対する割引率(0≦ γ ≦1)。
強化学習問題とは、エージェントが環境
から状態と報酬を受け取って、それを受
けて環境に対して行動して、環境からま
た次の状態と報酬を受け取って…と相互
作用していく中でどう行動すれば収益が
最大になるでしょうか、という問題。
それを解くとは、最適な方策(状態から
行動への写像)を求めること。
※ エージェントと環境の境界は、エージェン
トが任意に変更することができるかどうか
で線引きするべきなので、図のようにエー
ジェントを人間やロボットとしてイメージ
するのは必ずしも正しくない。
∞
多腕バンディットタスクは、行動(いずれかのスロットマシンを選んで引く)が、
環境に何も影響しない(次ステップ以降で選択できる行動や、次ステップ以降の
報酬の確率分布に何も影響しない)特殊なケースだった。
一般的には、行動した結果が環境に影響する。環境がどう変化したかを「状態」
として取り扱う(当然、エージェントが知覚できる変数でなければならない)。
• 例えば将棋なら、自分が手を打って相手も手を打ったら盤面が変わり、選択で
きる行動(打てる手)は次々に変わる。自分の手番での盤面が「状態」になる。
エージェントの目標は収益(最終的に受け取る報酬の総量)の最大化である。
→ エージェントに何かを学習してほしいならば、収益を最大化することでエー
ジェントがそれを達成してくれるような報酬を定義する必要がある。
報酬の定義の例:
• 迷路の脱出を学習させるのに、脱出するまで毎ステップ-1の報酬を与える。
• チェスを学習させるのに、勝ったとき+1、負けたとき-1の報酬を与える。
※ どのように達成してほしいかではなく、何を達成してほしいかを込めるべき。
( 勝つのが目標なら「敵の駒を取ったとき」に報酬を与えるべきではない。)
報酬を利用することは、強化学習の最も大きな特徴の1つ。
状態とは
報酬とは
S = 不満, 満足
マルコフ決定過程 MDP = Markov Decision Process
各ステップの状態 st 、報酬 rt 、行動 at はどのように定まっていくのか。
Ex. あなたは毎年末に、いまの勤務先に残留するか転職するか判断します。
• あなたは毎年末に、いまの勤務先に「不満」か「満足」かいずれかの状態にいます。
• 「満足」であれば必ず残留し、「不満」であれば残留か転職かを選択します。
• 「不満」な勤務先に残留すれば翌年末も必ず「不満」ですが、転職しても確率 1-β
で再び「不満」な勤務先に就職してしまいます。一方、現在は勤務先に「満足」し
ていても確率 1-α で翌年末は「不満」な状態に遷移してしまいます。
• 「満足」だったときに得られる満足度(このタスクでの報酬)は A で、「不満」
だったときは B です。但し、前ステップで転職したときは疲弊して c 減少します。
→ この状況を整理すると以下。
不満 満足
A = 不満, 満足残留 転職不満
A = 不残留満足
状態遷移図状態集合
行動集合(状態に依存)
→ ツリーで表現すると下図左。この分岐の決定に必要な確率分布は下図右。
不 満 不
転 残 残 転 残
不
転 残
満
残
不 満
転 残 残
s0
↓
a0
↓
s1
↓
a1
𝑆0~𝑃0 𝑠
𝑆𝑡+1~𝑃 𝑠 𝑆𝑡, 𝐴 𝑡
𝑅𝑡+1~𝑟 𝑆𝑡, 𝐴 𝑡 , 𝑆𝑡+1
𝐴 𝑡~𝜋 𝑎 𝑆𝑡
• 𝑃0 𝑠 , 𝑃 𝑠 𝑆𝑡, 𝐴 𝑡 , 𝑟 𝑆𝑡, 𝐴 𝑡 , 𝑆𝑡+1 … 環境の応答であって、環境により決まる。
この問題の場合、P と r は以下のように決まっている。
• 𝜋 𝑎 𝑆𝑡 … エージェントの方策であって、与えられた環境の下で最適な 𝜋 𝑎 𝑆𝑡
を求めることが強化学習問題のゴールである。
𝑃 , = 1不満 不満 残留
𝑃 , = 1 − 𝛽不満 不満 転職
𝑃 , = 𝛽満足 不満 転職
𝑃 , = 1 − 𝛼不満 満足 残留
𝑃 , = 𝛼満足 満足 残留
𝑟 , , = 𝐵不満不満 残留
𝑟 , , = 𝐵 − 𝑐不満不満 転職
𝑟 , , = 𝐴 − 𝑐満足不満 転職
𝑟 , , = 𝐵不満満足 残留
𝑟 , , = 𝐴満足満足 残留
※ 直前の状態のみに依存
= マルコフ性を仮定。
※
最適方策の解法
𝑉 𝜋(𝑠) = 𝐸 𝜋 𝐺𝑡 𝑆𝑡 = 𝑠 = 𝐸 𝜋 𝑘=0
∞
γ 𝑘 𝑅𝑡+𝑘+1 𝑆𝑡 = 𝑠
𝑄 𝜋
(𝑠, 𝑎) = 𝐸 𝜋 𝐺𝑡 𝑆𝑡 = 𝑠, 𝐴 𝑡 = 𝑎 = 𝐸 𝜋 𝑘=0
∞
γ 𝑘
𝑅𝑡+𝑘+1 𝑆𝑡 = 𝑠, 𝐴 𝑡 = 𝑎
P 𝑠𝑠′
𝑎
= 𝑃 𝑆𝑡+1 = 𝑠′ 𝑆𝑡= 𝑠, 𝐴 𝑡 = 𝑎
R 𝑠𝑠′
𝑎
= 𝐸 𝑅𝑡+1 𝑆𝑡 = 𝑠, 𝐴 𝑡 = 𝑎, 𝑆𝑡+1 = 𝑠′
環境のダイナミクス(環境の応答;以下)が既知とする。
ある状態である行動をとったときの
次の状態の確率分布(マルコフ的)
上記のときの次の報酬の期待値
以下の価値関数を導入する。
上: 状態価値関数 = 方策πに対する状態 s の価値 = 状態 s から方策πにしたがうときの期待収益
下: 行動価値関数 = 方策πの下で、状態 s において行動 a をとることの価値
= 状態 s で行動 a をとり、その後は方策πにしたがうときの期待収益
価値関数は以下の整合性条件を満たす( Bellman 方程式 )。
𝑉 𝜋(𝑠) = 𝑎 𝜋 𝑎 𝑠 𝑠′P 𝑠𝑠′
𝑎
R 𝑠𝑠′
𝑎
+ γ𝑉 𝜋(𝑠′)
𝑄 𝜋(𝑠, 𝑎) = 𝑠′P 𝑠𝑠′
𝑎
𝑎′ 𝜋 𝑎′ 𝑠′ R 𝑠𝑠′
𝑎
+ γ𝑄 𝜋(𝑠′, 𝑎′)
※ 上式から次ステップ
の報酬を切り離して
式変形すると出る。
最適な π を解きたい → 例えば、ある状態からどちらの π にしたがって行動した
ときの期待収益が高いか、を比較すれば π どうしが比較できる。
V と Q は方策の解き方によって扱いやすい方で考えればよい。
状態と行動の集合が有限のとき、以下のように方策の良し悪しを定義できる。
π は π ’ よりも良いか同じ ⇔ 𝑉 𝜋 𝑠 ≥ 𝑉 𝜋′
𝑠 for ∀𝑠 ∈ 𝑆
他の方策よりも良いか同じ方策が常に少なくとも1つ存在する。→ 最適方策(群)
最適方策群は以下の最適価値関数を共有する。
𝑉∗
𝑠 = 𝑉 𝜋∗
𝑠 = max
𝜋
𝑉 𝜋
𝑠 for ∀𝑠 ∈ 𝑆
𝑄∗ 𝑠, 𝑎 = 𝑄 𝜋∗
𝑠, 𝑎 = max
𝜋
𝑄 𝜋 𝑠, 𝑎 for ∀𝑠 ∈ 𝑆, ∀𝑎 ∈ 𝐴(𝑠)
最適価値関数は特定の方策があらわれない形の以下の整合性条件を満たす
( Bellman 最適方程式 )。
𝑉∗(𝑠) = max
𝑎
𝑠′P 𝑠𝑠′
𝑎
R 𝑠𝑠′
𝑎
+ γ𝑉∗(𝑠′)
𝑄∗(𝑠, 𝑎) = 𝑠′ P 𝑠𝑠′
𝑎
R 𝑠𝑠′
𝑎
+ γ max
𝑎′
𝑄∗(𝑠′, 𝑎′)
要するに、「最適方策の下での
状態の価値は、その状態からの
最良の行動に対する期待収益に
等しくなくてはならない」。
𝜋 𝑎 𝑠 =
1 𝑎 = argmax
𝑎
𝑄∗ 𝑠, 𝑎
0 otherwise.
行動価値に関する Bellman 最適方程式が解ければ最適方策は以下のように求まる。
しかし、「Bellman 最適方程式を解いて最適方策を求める」という解法は以下の
前提に依存しており、これらは往々にして現実には満たされない。
× 環境のダイナミクスが予め完全にわかっている。
‐ 現実には、色々な行動を取ってみて環境がどう応答してくるかデータを収集していく。
× 現実的な時間で方程式を解き切る計算資源がある。
‐ 状態数に応じて連立数が増えるので、盤面の通り数が多いゲームなど大変なことになる。
argmax
𝑎
𝑄∗ 𝑠, 𝑎
argmax
𝑎
𝑄 𝜋
𝑠, 𝑎 これは、次ステップ以降ずっと方策 π にしたがうという前提の
もとで、今選択すべき最適な行動。ただし、方策 π がよい方策
なのかどうかわからないなら、これがよい行動かはわからない。
これは、次ステップ以降ずっと最適方策にしたがうという前提の
もとで、今選択すべき最適な行動。要するに、本当に最適な行動。
現在の方策の価値
関数を求める
Q ← Qπ
価値関数に基づき
方策を改善する
π← greedy(Q)
0π
0Q
nπ
nQ
現実的には、適当に初期化した方策と価値関数を評価・改善していく手法をとる。
※ Qが最大になる行動を選ぶ方策をgreedy方策といい、Q*に関するgreedy方策は最適方策である。
最適方策の現実的な解法
現在の方策の価値
関数を求める
Q ← Qπ
価値関数に基づき
方策を改善する
π← greedy(Q)
0π
0Q
nπ
nQ
実際に方策と価値関数を評価・改善していくにはどのような方法があるのか。
解法1. モンテカルロ法
• 初期方策 π( a | s ) にしたがってエピソード(※)を生成し、エピソードにあ
らわれた各状態行動対 (s, a) について、実際にその後得られた収益を用いて行
動価値 Q(s, a) を更新する。→ Q(s, a) に greedy にπ( a | s ) を更新して次
のエピソードを生成する。→ 以後繰り返し。
△単純でわかりやすい方法だが、状態行動対を探索する効率が悪い。
× 一般に、適当な初期方策で全ての状態行動対が探索される保証がない。
→ これを保証する手法はある。「これからの」がつかない方の「強化学習」参照。
△エピソードが終わる前に行動価値や方策を逐次更新した方が速そう。
※ 強化学習でいうエピソード: 状態 → 行動 → 状態 → … が終状態に達するまでの一連の流れ。
○ 反復式による更新は、「現時点の他の状態の価値の推定値をつかって価値
の推定を更新する(ブートストラップという)」ことによって価値関数の
推定を効率的にしている。
○ 方策を明示的に扱わず、方策の評価と改善が1反復式にまとまって効率的。
→ 但し、方策を明示的に扱う動的プログラミング(方策反復手法)もあり、一概
に優劣は付けられない。「これからの」がつかない方の「強化学習」参照。
× Bellman 最適方程式をつかう以上、環境のダイナミクスが既知でなければ
ならない( 既知である場合は、問題によるがじゅうぶん実用的 )。
モンテカルロ法のように環境のダイナミクスが必要なく、動的プログラミングの
ように価値を逐次更新する手法があればもっとよさそう。→ 解法3、解法4
→ 更新が終わったら、Q(s, a) に greedy なπ( a | s ) を出力する。
解法2. 動的プログラミング(価値反復手法)
• Q(s, a) を任意に初期化し、全ての状態行動対 (s, a) について以下の反復式で
( ある閾値未満に )収束するまで更新する( 以下は Bellman 最適方程式を
反復式にしたもので、これで Q を更新すれば k → ∞ で真の Q*に収束する )。
𝑄 𝑘+1(𝑠, 𝑎) ← 𝑠′ P 𝑠𝑠′
𝑎
R 𝑠𝑠′
𝑎
+ γ max
𝑎′
𝑄 𝑘 (𝑠′, 𝑎′)
解法3. Sarsa
不 満 不
転 残 残 転 残
不
転 残
不 満 不
転 残 残 転 残
不
転 残
不 満 不
転 残 残 転 残
不
転 残r
満 不
転 残 残 転 残
不
転 残
不 満 不
転 残 残 転 残
不
転 残
不
r r
不 満 不
転 残 残 転 残
不
転 残r
1. まず「不満」状態に
いる。
2. 現時点の Q に基づき
行動を選択する(※)。
3. 選択した行動をとる。
報酬と次の状態を得る。
4. 現時点の Q に基づ
いて行動を選択する。
(初期状態と同じ状態
かつ Q の更新がまだな
いので 2. と同じ選択
になる。)
5. 3. でとった状態行
動対について Q を更新
する(s-a-r-s-a)。
s-a の行動価値は現時
点の Q による推定値と
なることに注意。
6. 4.で選択した行動を
とる。3.に戻って繰り
返し。
※ 「これからの強化
学習」では、ここ
での行動選択は事
前に決めた方策に
基づく( Sarsa
の目的が Q* の推
定ではなく、事前
に決めた方策に対
する Q の推定に
なっている)。
右図では、Q* の
推定を目的に、現
時点の Q に関す
る (ε-) greedy
な行動などを想定
する。
解法4. Q学習
不 満 不
転 残 残 転 残
不
転 残
不 満 不
転 残 残 転 残
不
転 残
不 満 不
転 残 残 転 残
不
転 残r
不 満 不
転 残 残 転 残
不
転 残r
1. まず「不満」状態に
いる。
2. 現時点の Q に基づき
行動を選択する。
3. 選択した行動をとる。
報酬と次の状態を得る。
4. 3. でとった状態行
動対について Q を更新
する(まだ次の行動を
選択していないが、
argmax な行動を仮定
する)。
5. この時点の Q に基
づいて行動を選択する。
(初期状態と同じ状態
だが Q が更新済なので
2. と異なる選択になり
うる。)
6. 5.で選択した行動を
とる。3.に戻って繰り
返し。
満 不
転 残 残 転 残
不
転 残
不
r
argmax
不 満 不
転 残 残 転 残
不
転 残r

More Related Content

What's hot

POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用Yasunori Ozaki
 
Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)Shohei Taniguchi
 
方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用Ryo Iwaki
 
KDD Cup 2021 時系列異常検知コンペ 参加報告
KDD Cup 2021 時系列異常検知コンペ 参加報告KDD Cup 2021 時系列異常検知コンペ 参加報告
KDD Cup 2021 時系列異常検知コンペ 参加報告GentaYoshimura
 
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)Shota Imai
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement LearningPreferred Networks
 
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII
 
[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...
[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...
[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...Deep Learning JP
 
強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験克海 納谷
 
強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)
強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)
強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)Shota Imai
 
【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling Problem
【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling Problem【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling Problem
【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling ProblemDeep Learning JP
 
Maximum Entropy IRL(最大エントロピー逆強化学習)とその発展系について
Maximum Entropy IRL(最大エントロピー逆強化学習)とその発展系についてMaximum Entropy IRL(最大エントロピー逆強化学習)とその発展系について
Maximum Entropy IRL(最大エントロピー逆強化学習)とその発展系についてYusuke Nakata
 
強化学習 DQNからPPOまで
強化学習 DQNからPPOまで強化学習 DQNからPPOまで
強化学習 DQNからPPOまでharmonylab
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情Yuta Kikuchi
 
[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展Deep Learning JP
 
[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...
[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...
[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...Deep Learning JP
 
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
PILCO - 第一回高橋研究室モデルベース強化学習勉強会PILCO - 第一回高橋研究室モデルベース強化学習勉強会
PILCO - 第一回高橋研究室モデルベース強化学習勉強会Shunichi Sekiguchi
 
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised LearningまとめDeep Learning JP
 
最近強化学習の良記事がたくさん出てきたので勉強しながらまとめた
最近強化学習の良記事がたくさん出てきたので勉強しながらまとめた最近強化学習の良記事がたくさん出てきたので勉強しながらまとめた
最近強化学習の良記事がたくさん出てきたので勉強しながらまとめたKatsuya Ito
 
[DL輪読会] マルチエージェント強化学習と心の理論
[DL輪読会] マルチエージェント強化学習と心の理論[DL輪読会] マルチエージェント強化学習と心の理論
[DL輪読会] マルチエージェント強化学習と心の理論Deep Learning JP
 

What's hot (20)

POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用
 
Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)
 
方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用
 
KDD Cup 2021 時系列異常検知コンペ 参加報告
KDD Cup 2021 時系列異常検知コンペ 参加報告KDD Cup 2021 時系列異常検知コンペ 参加報告
KDD Cup 2021 時系列異常検知コンペ 参加報告
 
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
 
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
 
[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...
[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...
[DL輪読会]“Spatial Attention Point Network for Deep-learning-based Robust Autono...
 
強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験
 
強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)
強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)
強化学習エージェントの内発的動機付けによる探索とその応用(第4回 統計・機械学習若手シンポジウム 招待公演)
 
【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling Problem
【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling Problem【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling Problem
【DL輪読会】論文解説:Offline Reinforcement Learning as One Big Sequence Modeling Problem
 
Maximum Entropy IRL(最大エントロピー逆強化学習)とその発展系について
Maximum Entropy IRL(最大エントロピー逆強化学習)とその発展系についてMaximum Entropy IRL(最大エントロピー逆強化学習)とその発展系について
Maximum Entropy IRL(最大エントロピー逆強化学習)とその発展系について
 
強化学習 DQNからPPOまで
強化学習 DQNからPPOまで強化学習 DQNからPPOまで
強化学習 DQNからPPOまで
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情
 
[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展[DL輪読会]Control as Inferenceと発展
[DL輪読会]Control as Inferenceと発展
 
[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...
[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...
[DL輪読会]近年のオフライン強化学習のまとめ —Offline Reinforcement Learning: Tutorial, Review, an...
 
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
PILCO - 第一回高橋研究室モデルベース強化学習勉強会PILCO - 第一回高橋研究室モデルベース強化学習勉強会
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
 
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ
 
最近強化学習の良記事がたくさん出てきたので勉強しながらまとめた
最近強化学習の良記事がたくさん出てきたので勉強しながらまとめた最近強化学習の良記事がたくさん出てきたので勉強しながらまとめた
最近強化学習の良記事がたくさん出てきたので勉強しながらまとめた
 
[DL輪読会] マルチエージェント強化学習と心の理論
[DL輪読会] マルチエージェント強化学習と心の理論[DL輪読会] マルチエージェント強化学習と心の理論
[DL輪読会] マルチエージェント強化学習と心の理論
 

Similar to 「これからの強化学習」勉強会#1

「これからの強化学習」勉強会#2
「これからの強化学習」勉強会#2「これからの強化学習」勉強会#2
「これからの強化学習」勉強会#2Chihiro Kusunoki
 
1017 論文紹介第四回
1017 論文紹介第四回1017 論文紹介第四回
1017 論文紹介第四回Kohei Wakamatsu
 
分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試み
分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試み分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試み
分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試みSusumuOTA
 
[Dl輪読会]introduction of reinforcement learning
[Dl輪読会]introduction of reinforcement learning[Dl輪読会]introduction of reinforcement learning
[Dl輪読会]introduction of reinforcement learningDeep Learning JP
 
[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...
[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...
[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...Deep Learning JP
 
経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」Wataru Shito
 
ラビットチャレンジレポート 深層学習Day4
ラビットチャレンジレポート 深層学習Day4ラビットチャレンジレポート 深層学習Day4
ラビットチャレンジレポート 深層学習Day4ssuserf4860b
 
自由エネルギー原理から エナクティヴィズムへ
自由エネルギー原理から エナクティヴィズムへ自由エネルギー原理から エナクティヴィズムへ
自由エネルギー原理から エナクティヴィズムへMasatoshi Yoshida
 
【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...
【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...
【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...ssuserf4860b
 
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...Toru Fujino
 
Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course) Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course) hirokazutanaka
 
機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning
機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning 機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning
機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning Yuko Ishizaki
 
強化学習メモスライド
強化学習メモスライド強化学習メモスライド
強化学習メモスライドtwiponta_suzuki
 

Similar to 「これからの強化学習」勉強会#1 (13)

「これからの強化学習」勉強会#2
「これからの強化学習」勉強会#2「これからの強化学習」勉強会#2
「これからの強化学習」勉強会#2
 
1017 論文紹介第四回
1017 論文紹介第四回1017 論文紹介第四回
1017 論文紹介第四回
 
分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試み
分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試み分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試み
分散型強化学習手法の最近の動向と分散計算フレームワークRayによる実装の試み
 
[Dl輪読会]introduction of reinforcement learning
[Dl輪読会]introduction of reinforcement learning[Dl輪読会]introduction of reinforcement learning
[Dl輪読会]introduction of reinforcement learning
 
[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...
[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...
[DL輪読会]Continuous Adaptation via Meta-Learning in Nonstationary and Competiti...
 
経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」経済数学II 「第9章 最適化(Optimization)」
経済数学II 「第9章 最適化(Optimization)」
 
ラビットチャレンジレポート 深層学習Day4
ラビットチャレンジレポート 深層学習Day4ラビットチャレンジレポート 深層学習Day4
ラビットチャレンジレポート 深層学習Day4
 
自由エネルギー原理から エナクティヴィズムへ
自由エネルギー原理から エナクティヴィズムへ自由エネルギー原理から エナクティヴィズムへ
自由エネルギー原理から エナクティヴィズムへ
 
【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...
【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...
【最新ではありません。再度URL送付しています→https://www.slideshare.net/ssuserf4860b/day-250965207...
 
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
 
Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course) Computational Motor Control: Reinforcement Learning (JAIST summer course)
Computational Motor Control: Reinforcement Learning (JAIST summer course)
 
機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning
機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning 機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning
機械学習 論文輪読会 Hybrid Reward Architecture for Reinforcement Learning
 
強化学習メモスライド
強化学習メモスライド強化学習メモスライド
強化学習メモスライド
 

「これからの強化学習」勉強会#1

  • 1. 「これからの強化学習」勉強会#1 テキスト これからの強化学習 牧野 貴樹 澁谷 長史 白川 真一 浅田 稔 麻生 英樹 荒井 幸代 飯間 等 伊藤 真 大倉 和博 黒江 康明 杉本 徳和 坪井 祐太 銅谷 賢治 前田 新一 松井 藤五郎 南 泰浩 宮崎 和光 目黒 豊美 森村 哲郎 森本 淳 保田 俊行 吉本 潤一郎 森北出版 2016-10-27 Amazonで詳しく見る by G-Tools 今回の範囲 第1章 強化学習の基礎的理論 ―― 1.1節~1.3節 第2章 強化学習の発展的理論 第3章 強化学習の工学応用 第4章 知能のモデルとしての強化学習 2016/12/31 Chihiro Kusunoki
  • 2. その他の参考文献 強化学習 Richard S.Sutton Andrew G.Barto 三上 貞芳 皆川 雅章 森北出版 2000-12-01 Amazonで詳しく見る by G-Tools 目次 強化学習って何 強化学習の特徴 簡単な例:バンディットタスク 強化学習問題の定式化 状態と報酬 マルコフ決定過程 最適方策の解法 最適方策の現実的な解法 モンテカルロ法 動的プログラミング Sarsa Q学習
  • 3. → 2 強化学習って何 教師あり学習 教師なし学習 強化学習 → 1 → 3 2, 1, 3, 2, 3, 1, 1 … 1 … 1 正解があり、前もって正解 サンプルから学ぶ。 正解はなく、自分でデータ から何か学ぶ。 正解とかではなく収益の最 大化を目指し、自分の行動 と対する環境の応答に学ぶ。
  • 4. 強化学習の特徴 • 得られるデータが自分の行動に依存する。 食堂1 食堂2 食堂3 食堂4 食堂5 Ex. これから1週間出先での作業になったあなたは、出先周辺の食堂1~5のいずれかで 昼食を食べる。これらの食堂に関する事前知識はない。あなたは1週間分の昼食の 満足度の和を最大化することを目指して行動する(=日ごとに食堂を選択する)。 → 初日に食堂1に行くという行動を取れば、手に入るのは食堂1のデータになる。 • 報酬最大化とデータ収集のバランスを取って行動を計画しなければならない ( 探索と利用のトレードオフ = exploration-exploitation tradeoff )。 3日目までに食堂1~3で昼食を食べ、うち食堂2の満足度が最大とわかったとする。 だったら4日目は食堂2で昼食を食べれば満足度はそれなりに大きくなるはず。 でも、食堂4と食堂5の昼食は食堂2より満足度が大きいかもしれない。 現実には、例えば「これだけ満足な昼食ならじゅうぶん」という参照値があなたの中にあり、 かつ食堂2がそれを達成していれば、あなたはもう食堂4や5には訪問しないかもしれない。 または、未訪問の食堂への期待の程度(満足度の事前確率分布)があり、食堂4や5への期待の 程度と食堂2の実測値を比較して判断するかもしれない。強化学習では実際このような計画をする。
  • 5. 簡単な強化学習問題の例 ―― 多腕バンディットタスク 目の前に10台のスロットマシンがある。各スロットマシンには固有の確率分布があり、 確率的な報酬を返す。事前に各スロットマシンの確率分布については何もわからない。 あなたはこれから合計1000回いずれかのスロットマシンを引く。どのような方針で スロットマシンを選択していけば報酬の合計値を最大化できるだろうか。 多腕バンディットタスクとは → 以下のような問題。 回答例1.( greedy アルゴリズム ) • まず各スロットマシンを n 回ずつ引き、その後は常に「それまでの試行結果から求めた 報酬の期待値最大のスロットマシン」を引く。 △ n の決定に悩む。大きくすれば期待値の見積もりはよくなるが報酬が犠牲になる。 × 最初 n 回の試行で各スロットマシンの期待値の大小を見積もりを誤る可能性がある。 本当は報酬が小さいスロットマシンを大きく見積もってしまう分にはまだよいが (もしその腕を後で exploit したとすると、そこで期待値が修正されていくから)、 本当は報酬が大きいスロットマシンを小さく見積もってしまうと軌道修正できない。 → 軌道修正できないのはちょっと避けたいので、別の方針を考える。
  • 6. 回答例2.( ε-greedy アルゴリズム ) • まず各スロットマシンを1回ずつ引き、その後は確率 1-ε ( 0<ε≦1 ) で「それまでの 試行結果から求めた報酬の期待値最大のスロットマシン」を引き、確率 ε で「ランダム に選択したスロットマシン」を引く。 ○ 確率 ε で explore し続けるので、軌道修正できない問題はとりあえず回避できた。 △ ε の決定に悩む。大きくすればより早い段階で期待値の見積もりはよくなる反面、 後々の exploit を妨げるので報酬が犠牲になる。 △ というか、explore し切れていないときは ε を大きめに、explore し切れてきたら ε を小さくして exploit にふっていくのがもっと賢そう。 → とはいえ ε の時間推移を設計するのは難しい。 → そもそも早い段階で見積もり精度を上げておきたい理由は、過小評価方向への見積もり ミスを何としても避けたいから(過小評価方向へのミスは軌道修正しにくい)。 → だったら、どうやっても過小評価方向へ見積もりミスしないように、予め各スロット マシンからぐっと大きい報酬が K 回出たことにしておき、期待値に下駄をはかせておけ ばよい( 不確かなときは楽観的に )。 • このアイデアのいいところは、explore し切れていないスロットマシンをよく引く ということを勝手に達成してくれる( 期待値が修正されず高いままなので )。 回答例3.( 楽観的初期値法 ) • 予め各スロットマシンからぐっと大きい報酬 rsup が K 回出たことにしておく。その後 は ε-greedy アルゴリズムなどにしたがって行動する。
  • 7. → 割と賢くなってきた気がするが、どの程度 explore したかの判定にそのスロットマシン をそれまでに引いた回数などが加味されてないあたりだいぶ乱暴ではある。 → 各ステップでどれくらい見積もり精度が出ているかをもう少しちゃんと考えたい。 回答例4.( UCB1アルゴリズム ) UCB = Upper Confidence Bound • まず各スロットマシンを1回ずつ引き、その後は μi + Ui が最大のスロットマシンを引く。 μi =「それまでの試行結果から求めたスロットマシン i の報酬の期待値」 Ui =「それまでの試行結果から求めたスロットマシン i の報酬の信頼区間の半幅」 Ui は、スロットマシンから出てくる報酬の値の幅を R、全スロットマシンを引いた回数 N、スロットマシン i を引いた回数 Ni をつかって以下(※)。 ※ 信頼区間幅の導出には独立な試行に関する Hoeffding の不等式をつかう。 https://en.wikipedia.org/wiki/Hoeffding's_inequality または、UCBアルゴリズムの元論文をみてください。 Peter Auer, Nicoló Cesa-Bianchi, and Paul Fischer. Finite-time Analysis of the Multiarmed Bandit Problem. Machine Leraning, 47(2/3):235-256, 2002. https://homes.di.unimi.it/~cesabian/Pubblicazioni/ml-02.pdf 𝑈𝑖 = 𝑅 2 ln 𝑁 𝑁𝑖 → 色々なアルゴリズムがありうるが、どれがいつも最適というのはなく、問題設定による。
  • 8. 一般的な強化学習問題の定式化 行動 at 環境 エージェント 報酬 rt 状態 st • 方策 π(a|s) • 収益 gt=Σk=0 γkrt+k+1 時刻 報酬 状態 行動 0 r0 (=0) s0 → a0 1 r1 s1 → a1 2 r2 s2 → a2 3 r3 s3 → a3 π(a|s) は st=s のとき at=a を選択する確率。 γ は将来の報酬に対する割引率(0≦ γ ≦1)。 強化学習問題とは、エージェントが環境 から状態と報酬を受け取って、それを受 けて環境に対して行動して、環境からま た次の状態と報酬を受け取って…と相互 作用していく中でどう行動すれば収益が 最大になるでしょうか、という問題。 それを解くとは、最適な方策(状態から 行動への写像)を求めること。 ※ エージェントと環境の境界は、エージェン トが任意に変更することができるかどうか で線引きするべきなので、図のようにエー ジェントを人間やロボットとしてイメージ するのは必ずしも正しくない。 ∞
  • 9. 多腕バンディットタスクは、行動(いずれかのスロットマシンを選んで引く)が、 環境に何も影響しない(次ステップ以降で選択できる行動や、次ステップ以降の 報酬の確率分布に何も影響しない)特殊なケースだった。 一般的には、行動した結果が環境に影響する。環境がどう変化したかを「状態」 として取り扱う(当然、エージェントが知覚できる変数でなければならない)。 • 例えば将棋なら、自分が手を打って相手も手を打ったら盤面が変わり、選択で きる行動(打てる手)は次々に変わる。自分の手番での盤面が「状態」になる。 エージェントの目標は収益(最終的に受け取る報酬の総量)の最大化である。 → エージェントに何かを学習してほしいならば、収益を最大化することでエー ジェントがそれを達成してくれるような報酬を定義する必要がある。 報酬の定義の例: • 迷路の脱出を学習させるのに、脱出するまで毎ステップ-1の報酬を与える。 • チェスを学習させるのに、勝ったとき+1、負けたとき-1の報酬を与える。 ※ どのように達成してほしいかではなく、何を達成してほしいかを込めるべき。 ( 勝つのが目標なら「敵の駒を取ったとき」に報酬を与えるべきではない。) 報酬を利用することは、強化学習の最も大きな特徴の1つ。 状態とは 報酬とは
  • 10. S = 不満, 満足 マルコフ決定過程 MDP = Markov Decision Process 各ステップの状態 st 、報酬 rt 、行動 at はどのように定まっていくのか。 Ex. あなたは毎年末に、いまの勤務先に残留するか転職するか判断します。 • あなたは毎年末に、いまの勤務先に「不満」か「満足」かいずれかの状態にいます。 • 「満足」であれば必ず残留し、「不満」であれば残留か転職かを選択します。 • 「不満」な勤務先に残留すれば翌年末も必ず「不満」ですが、転職しても確率 1-β で再び「不満」な勤務先に就職してしまいます。一方、現在は勤務先に「満足」し ていても確率 1-α で翌年末は「不満」な状態に遷移してしまいます。 • 「満足」だったときに得られる満足度(このタスクでの報酬)は A で、「不満」 だったときは B です。但し、前ステップで転職したときは疲弊して c 減少します。 → この状況を整理すると以下。 不満 満足 A = 不満, 満足残留 転職不満 A = 不残留満足 状態遷移図状態集合 行動集合(状態に依存)
  • 11. → ツリーで表現すると下図左。この分岐の決定に必要な確率分布は下図右。 不 満 不 転 残 残 転 残 不 転 残 満 残 不 満 転 残 残 s0 ↓ a0 ↓ s1 ↓ a1 𝑆0~𝑃0 𝑠 𝑆𝑡+1~𝑃 𝑠 𝑆𝑡, 𝐴 𝑡 𝑅𝑡+1~𝑟 𝑆𝑡, 𝐴 𝑡 , 𝑆𝑡+1 𝐴 𝑡~𝜋 𝑎 𝑆𝑡 • 𝑃0 𝑠 , 𝑃 𝑠 𝑆𝑡, 𝐴 𝑡 , 𝑟 𝑆𝑡, 𝐴 𝑡 , 𝑆𝑡+1 … 環境の応答であって、環境により決まる。 この問題の場合、P と r は以下のように決まっている。 • 𝜋 𝑎 𝑆𝑡 … エージェントの方策であって、与えられた環境の下で最適な 𝜋 𝑎 𝑆𝑡 を求めることが強化学習問題のゴールである。 𝑃 , = 1不満 不満 残留 𝑃 , = 1 − 𝛽不満 不満 転職 𝑃 , = 𝛽満足 不満 転職 𝑃 , = 1 − 𝛼不満 満足 残留 𝑃 , = 𝛼満足 満足 残留 𝑟 , , = 𝐵不満不満 残留 𝑟 , , = 𝐵 − 𝑐不満不満 転職 𝑟 , , = 𝐴 − 𝑐満足不満 転職 𝑟 , , = 𝐵不満満足 残留 𝑟 , , = 𝐴満足満足 残留 ※ 直前の状態のみに依存 = マルコフ性を仮定。 ※
  • 12. 最適方策の解法 𝑉 𝜋(𝑠) = 𝐸 𝜋 𝐺𝑡 𝑆𝑡 = 𝑠 = 𝐸 𝜋 𝑘=0 ∞ γ 𝑘 𝑅𝑡+𝑘+1 𝑆𝑡 = 𝑠 𝑄 𝜋 (𝑠, 𝑎) = 𝐸 𝜋 𝐺𝑡 𝑆𝑡 = 𝑠, 𝐴 𝑡 = 𝑎 = 𝐸 𝜋 𝑘=0 ∞ γ 𝑘 𝑅𝑡+𝑘+1 𝑆𝑡 = 𝑠, 𝐴 𝑡 = 𝑎 P 𝑠𝑠′ 𝑎 = 𝑃 𝑆𝑡+1 = 𝑠′ 𝑆𝑡= 𝑠, 𝐴 𝑡 = 𝑎 R 𝑠𝑠′ 𝑎 = 𝐸 𝑅𝑡+1 𝑆𝑡 = 𝑠, 𝐴 𝑡 = 𝑎, 𝑆𝑡+1 = 𝑠′ 環境のダイナミクス(環境の応答;以下)が既知とする。 ある状態である行動をとったときの 次の状態の確率分布(マルコフ的) 上記のときの次の報酬の期待値 以下の価値関数を導入する。 上: 状態価値関数 = 方策πに対する状態 s の価値 = 状態 s から方策πにしたがうときの期待収益 下: 行動価値関数 = 方策πの下で、状態 s において行動 a をとることの価値 = 状態 s で行動 a をとり、その後は方策πにしたがうときの期待収益 価値関数は以下の整合性条件を満たす( Bellman 方程式 )。 𝑉 𝜋(𝑠) = 𝑎 𝜋 𝑎 𝑠 𝑠′P 𝑠𝑠′ 𝑎 R 𝑠𝑠′ 𝑎 + γ𝑉 𝜋(𝑠′) 𝑄 𝜋(𝑠, 𝑎) = 𝑠′P 𝑠𝑠′ 𝑎 𝑎′ 𝜋 𝑎′ 𝑠′ R 𝑠𝑠′ 𝑎 + γ𝑄 𝜋(𝑠′, 𝑎′) ※ 上式から次ステップ の報酬を切り離して 式変形すると出る。 最適な π を解きたい → 例えば、ある状態からどちらの π にしたがって行動した ときの期待収益が高いか、を比較すれば π どうしが比較できる。 V と Q は方策の解き方によって扱いやすい方で考えればよい。
  • 13. 状態と行動の集合が有限のとき、以下のように方策の良し悪しを定義できる。 π は π ’ よりも良いか同じ ⇔ 𝑉 𝜋 𝑠 ≥ 𝑉 𝜋′ 𝑠 for ∀𝑠 ∈ 𝑆 他の方策よりも良いか同じ方策が常に少なくとも1つ存在する。→ 最適方策(群) 最適方策群は以下の最適価値関数を共有する。 𝑉∗ 𝑠 = 𝑉 𝜋∗ 𝑠 = max 𝜋 𝑉 𝜋 𝑠 for ∀𝑠 ∈ 𝑆 𝑄∗ 𝑠, 𝑎 = 𝑄 𝜋∗ 𝑠, 𝑎 = max 𝜋 𝑄 𝜋 𝑠, 𝑎 for ∀𝑠 ∈ 𝑆, ∀𝑎 ∈ 𝐴(𝑠) 最適価値関数は特定の方策があらわれない形の以下の整合性条件を満たす ( Bellman 最適方程式 )。 𝑉∗(𝑠) = max 𝑎 𝑠′P 𝑠𝑠′ 𝑎 R 𝑠𝑠′ 𝑎 + γ𝑉∗(𝑠′) 𝑄∗(𝑠, 𝑎) = 𝑠′ P 𝑠𝑠′ 𝑎 R 𝑠𝑠′ 𝑎 + γ max 𝑎′ 𝑄∗(𝑠′, 𝑎′) 要するに、「最適方策の下での 状態の価値は、その状態からの 最良の行動に対する期待収益に 等しくなくてはならない」。 𝜋 𝑎 𝑠 = 1 𝑎 = argmax 𝑎 𝑄∗ 𝑠, 𝑎 0 otherwise. 行動価値に関する Bellman 最適方程式が解ければ最適方策は以下のように求まる。
  • 14. しかし、「Bellman 最適方程式を解いて最適方策を求める」という解法は以下の 前提に依存しており、これらは往々にして現実には満たされない。 × 環境のダイナミクスが予め完全にわかっている。 ‐ 現実には、色々な行動を取ってみて環境がどう応答してくるかデータを収集していく。 × 現実的な時間で方程式を解き切る計算資源がある。 ‐ 状態数に応じて連立数が増えるので、盤面の通り数が多いゲームなど大変なことになる。 argmax 𝑎 𝑄∗ 𝑠, 𝑎 argmax 𝑎 𝑄 𝜋 𝑠, 𝑎 これは、次ステップ以降ずっと方策 π にしたがうという前提の もとで、今選択すべき最適な行動。ただし、方策 π がよい方策 なのかどうかわからないなら、これがよい行動かはわからない。 これは、次ステップ以降ずっと最適方策にしたがうという前提の もとで、今選択すべき最適な行動。要するに、本当に最適な行動。 現在の方策の価値 関数を求める Q ← Qπ 価値関数に基づき 方策を改善する π← greedy(Q) 0π 0Q nπ nQ 現実的には、適当に初期化した方策と価値関数を評価・改善していく手法をとる。 ※ Qが最大になる行動を選ぶ方策をgreedy方策といい、Q*に関するgreedy方策は最適方策である。
  • 15. 最適方策の現実的な解法 現在の方策の価値 関数を求める Q ← Qπ 価値関数に基づき 方策を改善する π← greedy(Q) 0π 0Q nπ nQ 実際に方策と価値関数を評価・改善していくにはどのような方法があるのか。 解法1. モンテカルロ法 • 初期方策 π( a | s ) にしたがってエピソード(※)を生成し、エピソードにあ らわれた各状態行動対 (s, a) について、実際にその後得られた収益を用いて行 動価値 Q(s, a) を更新する。→ Q(s, a) に greedy にπ( a | s ) を更新して次 のエピソードを生成する。→ 以後繰り返し。 △単純でわかりやすい方法だが、状態行動対を探索する効率が悪い。 × 一般に、適当な初期方策で全ての状態行動対が探索される保証がない。 → これを保証する手法はある。「これからの」がつかない方の「強化学習」参照。 △エピソードが終わる前に行動価値や方策を逐次更新した方が速そう。 ※ 強化学習でいうエピソード: 状態 → 行動 → 状態 → … が終状態に達するまでの一連の流れ。
  • 16. ○ 反復式による更新は、「現時点の他の状態の価値の推定値をつかって価値 の推定を更新する(ブートストラップという)」ことによって価値関数の 推定を効率的にしている。 ○ 方策を明示的に扱わず、方策の評価と改善が1反復式にまとまって効率的。 → 但し、方策を明示的に扱う動的プログラミング(方策反復手法)もあり、一概 に優劣は付けられない。「これからの」がつかない方の「強化学習」参照。 × Bellman 最適方程式をつかう以上、環境のダイナミクスが既知でなければ ならない( 既知である場合は、問題によるがじゅうぶん実用的 )。 モンテカルロ法のように環境のダイナミクスが必要なく、動的プログラミングの ように価値を逐次更新する手法があればもっとよさそう。→ 解法3、解法4 → 更新が終わったら、Q(s, a) に greedy なπ( a | s ) を出力する。 解法2. 動的プログラミング(価値反復手法) • Q(s, a) を任意に初期化し、全ての状態行動対 (s, a) について以下の反復式で ( ある閾値未満に )収束するまで更新する( 以下は Bellman 最適方程式を 反復式にしたもので、これで Q を更新すれば k → ∞ で真の Q*に収束する )。 𝑄 𝑘+1(𝑠, 𝑎) ← 𝑠′ P 𝑠𝑠′ 𝑎 R 𝑠𝑠′ 𝑎 + γ max 𝑎′ 𝑄 𝑘 (𝑠′, 𝑎′)
  • 17. 解法3. Sarsa 不 満 不 転 残 残 転 残 不 転 残 不 満 不 転 残 残 転 残 不 転 残 不 満 不 転 残 残 転 残 不 転 残r 満 不 転 残 残 転 残 不 転 残 不 満 不 転 残 残 転 残 不 転 残 不 r r 不 満 不 転 残 残 転 残 不 転 残r 1. まず「不満」状態に いる。 2. 現時点の Q に基づき 行動を選択する(※)。 3. 選択した行動をとる。 報酬と次の状態を得る。 4. 現時点の Q に基づ いて行動を選択する。 (初期状態と同じ状態 かつ Q の更新がまだな いので 2. と同じ選択 になる。) 5. 3. でとった状態行 動対について Q を更新 する(s-a-r-s-a)。 s-a の行動価値は現時 点の Q による推定値と なることに注意。 6. 4.で選択した行動を とる。3.に戻って繰り 返し。 ※ 「これからの強化 学習」では、ここ での行動選択は事 前に決めた方策に 基づく( Sarsa の目的が Q* の推 定ではなく、事前 に決めた方策に対 する Q の推定に なっている)。 右図では、Q* の 推定を目的に、現 時点の Q に関す る (ε-) greedy な行動などを想定 する。
  • 18. 解法4. Q学習 不 満 不 転 残 残 転 残 不 転 残 不 満 不 転 残 残 転 残 不 転 残 不 満 不 転 残 残 転 残 不 転 残r 不 満 不 転 残 残 転 残 不 転 残r 1. まず「不満」状態に いる。 2. 現時点の Q に基づき 行動を選択する。 3. 選択した行動をとる。 報酬と次の状態を得る。 4. 3. でとった状態行 動対について Q を更新 する(まだ次の行動を 選択していないが、 argmax な行動を仮定 する)。 5. この時点の Q に基 づいて行動を選択する。 (初期状態と同じ状態 だが Q が更新済なので 2. と異なる選択になり うる。) 6. 5.で選択した行動を とる。3.に戻って繰り 返し。 満 不 転 残 残 転 残 不 転 残 不 r argmax 不 満 不 転 残 残 転 残 不 転 残r