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
160
Reinforcement Learning Second edition - Notes on DQN
Etsuji Nakai
February 10, 2020
Tweet
Share
More Decks by Etsuji Nakai
See All by Etsuji Nakai
Agent Development Kit によるエージェント開発入門
enakai00
20
5.8k
GDG Tokyo 生成 AI 論文をわいわい読む会
enakai00
1
600
Lecture course on Microservices : Part 1
enakai00
1
3.7k
Lecture course on Microservices : Part 2
enakai00
2
3.6k
Lecture course on Microservices : Part 3
enakai00
1
3.6k
Lecture course on Microservices : Part 4
enakai00
1
3.6k
JAX / Flax 入門
enakai00
1
580
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.1k
大規模言語モデルを支える分散学習インフラ Pathways
enakai00
3
520
Other Decks in Technology
See All in Technology
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
1.2k
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
1
1.2k
人工衛星のファームウェアをRustで書く理由
koba789
8
5k
Kubernetes における cgroup v2 でのOut-Of-Memory 問題の解決
pfn
PRO
0
470
Language Update: Java
skrb
2
280
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1.5k
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
170
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
130
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.7k
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
200
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
3
230
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
400
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Navigating Team Friction
lara
189
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
GitHub's CSS Performance
jonrohan
1032
460k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Writing Fast Ruby
sferik
628
62k
How GitHub (no longer) Works
holman
315
140k
The Invisible Side of Design
smashingmag
301
51k
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