Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Reinforcement Learning Second edition - Notes o...
Search
Etsuji Nakai
February 10, 2020
Technology
0
150
Reinforcement Learning Second edition - Notes on DQN
Etsuji Nakai
February 10, 2020
Tweet
Share
More Decks by Etsuji Nakai
See All by Etsuji Nakai
GDG Tokyo 生成 AI 論文をわいわい読む会
enakai00
0
490
Lecture course on Microservices : Part 1
enakai00
1
3.3k
Lecture course on Microservices : Part 2
enakai00
1
3.3k
Lecture course on Microservices : Part 3
enakai00
1
3.2k
Lecture course on Microservices : Part 4
enakai00
1
3.2k
JAX / Flax 入門
enakai00
1
450
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
3.7k
大規模言語モデルを支える分散学習インフラ Pathways
enakai00
3
470
Python × 数学ブートキャンプガイド
enakai00
1
730
Other Decks in Technology
See All in Technology
4th place solution Eedi - Mining Misconceptions in Mathematics
rist
0
140
MIMEと文字コードの闇
hirachan
2
1.4k
Share my, our lessons from the road to re:Invent
naospon
0
140
OPENLOGI Company Profile for engineer
hr01
1
20k
手を動かしてレベルアップしよう!
maruto
0
200
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
150
短縮URLをお手軽に導入しよう
nakasho
0
140
AWSを活用したIoTにおけるセキュリティ対策のご紹介
kwskyk
0
340
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
500
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.2k
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
230
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
210
Featured
See All Featured
For a Future-Friendly Web
brad_frost
176
9.6k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
How GitHub (no longer) Works
holman
314
140k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
250
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
570
The Cult of Friendly URLs
andyhume
78
6.2k
Documentation Writing (for coders)
carmenintech
67
4.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
Transcript
Reinforcement Learning Second edition - Notes on DQN Etsuji Nakai
(@enakai00)
Functional Approximation 2 • これまでは、State Value Function v(s) 、もしくは、Action-State Value
Function q(s, a) の値をすべての状態 s について個別に記録(Tabular Method) • 状態数が爆発的に増加する問題では、メモリーの不足、計算時間の増加といった問題が発生 • 少数のパラメーター w を持った関数で v(s) 、もしくは、 q(s, a) を表現して、w をチューニン グすることで、近似的に計算する
Functional Approximation 3 • 近似関数が正しい価値関数の振る舞いとかけ離れていると、計算が収束しない可能性がある • 例:2つの状態 A, B があり相互の遷移に伴う報酬は
0。つまり、v(A) = v(B) = 0 が正解。 ◦ v(A) = w, v(B) = 2w と線形近似すると、A のベルマン方程式は、w を増加させようと して、B のベルマン方程式は、w を減少させようとするので、w は振動を続ける。 • パラメーターが発散するような例を作ることも可能
Functional Approximation 4
DQN 5 • 近似関数として、ニューラルネットワークを使用する(表現力の高い関数を用いることで、 前述の問題を避ける。) • Action - State Value
Function を下記の「方針」でアップデートする(Q-Learning) ◦ Off-policy メソッドなので、エピソードの収集は任意のポリシーで実施可能
DQN 6 • 実際の学習方法としては、エピソードに含まれる の4つ組を大量にストック しておいて、下記の誤差関数を最小化するようにバッチで学習する。(勾配降下法) • エピソードの収集は、たとえば、現在の Q(S, A) に基づいた
ε-Greedy を用いる。
DQN 7 • あくまで近似なので、「真の関数」との距離をどのように測るかで、最適化の結果は異なる 真の関数を何らかの 意味で射影したもの 近似空間の中で誤差 を最小にするもの
Monte Carlo Tree Search • 関数近似は原理的に不正確なので、学習済みのエージェントを用いて、実際にアクションを 選択する前に、現在の状態 S を出発点とするエピソードを(シミュレーションで)収集し て、Tabular
Method で価値関数を再見積もりする。 ◦ 現在の状態 S の周りに限定して実施するので、Tabular Method でもメモリー不足は起 きない
9 Monte Carlo Tree Search シミュレーション対象 のパスを一定のルール で決定する 終了状態に至る エピソードを収集
実際に得られた報酬を用 いて、パス上の価値関数 の値を更新
10 あるけあるけゲーム
11 あるけあるけゲーム https://github.com/enakai00/rl_book_solutions/blob/master/DQN/walk_game_dqn.ipynb