0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

『ゼロから作るDeep Learning ❹(強化学習編)』で学ぶメモ

Posted at

『ゼロから作るDeep Learning ❹(強化学習編)』で学ぶ

  1. この本の位置づけ(何ができるようになるか)
    『ゼロから作るDeep Learning ❹ ―強化学習編』は、外部ライブラリに過度に依存せず、強化学習の基本部品を「理論」と「実装」の両方から積み上げる構成になっている。出版社の説明も「基本的な技術やアイデアをゼロから実装しながら学ぶ」点を強調している。 (O'Reilly Japan)

本書の章立ては次の学習曲線に対応する。
・第1章:探索と推定(バンディット=最小RL)
・第2〜4章:MDP→ベルマン→DP(“正解がある世界”を作る)
・第5〜6章:MC/TD→SARSA/Q学習(“サンプルで学ぶ”へ)
・第7〜8章:NN近似→DQN(Q学習の関数近似・安定化)
・第9章:方策勾配→Actor-Critic(方策ベース)
・第10章+付録:発展(PPO等の位置づけ、理論補強)

  1. 強化学習の最小定義(MDP)
    強化学習は、環境と相互作用しながら「累積報酬(リターン)」を最大化する方策 π を学ぶ枠組みで、基本モデルは MDP(Markov Decision Process)で表す。

MDP の構成要素
・状態:s
・行動:a
・報酬:r
・遷移:P(s’|s,a)
・割引率:γ(0 <= γ < 1)
・方策:π(a|s)

リターン(収益)
G_t = r_{t+1} + γ r_{t+2} + γ^2 r_{t+3} + ...

価値関数
・状態価値:V^π(s) = E[G_t | s_t=s]
・行動価値:Q^π(s,a) = E[G_t | s_t=s, a_t=a]

  1. ベルマン方程式(“再帰”が強化学習の核)
    価値は「1ステップ先+将来価値」で再帰的に書ける。

ベルマン期待方程式(例)
V^π(s) = E[ r + γ V^π(s’) ]
Q^π(s,a) = E[ r + γ Q^π(s’,a’) ] (a’はπでサンプル)

最適性(“最大化”が入る)
V*(s) = max_π V^π(s)
Q*(s,a) = max_π Q^π(s,a)

ベルマン最適方程式(Q版)
Q*(s,a) = E[ r + γ max_{a’} Q*(s’,a’) ]

この「max が入った再帰式」を、サンプルから近似的に解こうとするのが Q学習。

  1. Q学習(オフポリシーTD制御)
    Q学習は「行動選択は探索込み(例:ε-greedy)で行いつつ、更新は greedy 目標で行う」代表的なオフポリシー法。

更新式(表形式Q)
Q(s,a) <- Q(s,a) + α [ r + γ max_{a’} Q(s’,a’) - Q(s,a) ]

ここで
・α:学習率
・角括弧内:TD誤差(ターゲット − 現在推定)

同じTD系列でも、SARSAはオンポリシー(次行動 a’ を実際に取った行動で更新)で、挙動が変わる。
SARSA:
Q(s,a) <- Q(s,a) + α [ r + γ Q(s’,a’) - Q(s,a) ]

  1. DQN(Q学習+ニューラルネットワーク)で何が起きるか
    状態が大きい/連続だとQテーブルが破綻するので、Q(s,a) をニューラルネットで近似する。
    Q(s,a;θ) ≈ Q*(s,a)

損失(最小二乗の形)
y = r + γ max_{a’} Q(s’,a’; θ_target)
L(θ) = ( y - Q(s,a;θ) )^2

DQNが不安定になりやすい原因(本質)
(1) ターゲット y 自体が学習中のネットワークに依存して動く
(2) 連続サンプルが相関を持つ(時系列相関)

DQNのコア安定化(第8章の中心)
・経験再生(Experience Replay):相関を薄め、データ効率も上げる
・ターゲットネット(Target Network):ターゲットを一定期間固定して学習を安定化

さらに拡張(第8.4章、付録Cの位置)
・Double DQN:過大評価(overestimation)を抑える(付録Cの理解が効く)
・優先度付き経験再生:学習価値の高い遷移を多く使う
・Dueling DQN:状態価値とadvantageを分離して推定

  1. 方策勾配(“価値”ではなく“方策”を直接最適化)
    価値ベース(Q学習/DQN)は「argmaxで行動を選ぶ」。
    一方、方策ベースは π(a|s;θ) を直接最適化する(第9章)。

基本形(REINFORCE)
∇J(θ) = E[ ∇ log π(a|s;θ) * G_t ]

分散低減の要点(ベースライン)
G_t の代わりに (G_t - b(s)) を使って期待値は保ちつつ分散を下げる。

Actor-Critic(第9.4)
・Actor:方策 π(a|s;θ)
・Critic:価値 V(s;w)(またはQ)
・Advantage(例:TD誤差)を使ってActorを更新し、CriticはTDで更新する。

  1. 学習ロードマップ(章対応つき:最短で「Q学習→DQN→Actor-Critic」)
    Week 1:第1章(バンディット)
    ・探索と推定(平均、非定常、ε-greedyの感覚)

Week 2:第2〜3章(MDP・ベルマン)
・状態/行動/報酬/遷移/価値、ベルマンの再帰

Week 3:第4章(DP)
・モデル既知の“基準解”を作る(価値反復・方策反復)

Week 4:第5〜6章(MC/TD→SARSA→Q学習)
・サンプルで学ぶ、オン/オフポリシー、Q学習実装

Week 5:第7〜8章(NN→DQN)
・関数近似、Replay、Target、DQNが回る条件

Week 6:第9章(方策勾配→Actor-Critic)
・REINFORCE→ベースライン→Actor-Criticの最小実装

Week 7+:第10章+付録(位置づけと理論補強)
・PPO等を「どこが違うか」で読める状態にする(分類の俯瞰)

  1. 実装チェックリスト(失敗の切り分け用)
    共通
    ・seed固定(再現性)
    ・平均リターン(移動平均)と分散を同時にログ
    ・探索率 ε のスケジュールを記録

Q学習(表)
・α が大きすぎる:振動/発散
・ε が小さすぎる:探索不足で停滞
・γ が大きすぎる:推定が膨らみ不安定化(報酬スケールとも絡む)

DQN
・Replayなし:相関で崩れやすい
・Targetなし:ターゲットが動いて学習が暴れる
・更新頻度(target更新間隔、学習ステップ/環境ステップ比)が不適切:停滞 or 発散
・報酬スケーリング/クリッピングの有無で学習難易度が変わる

Actor-Critic
・Advantage(TD誤差)のスケールが大きい:不安定
・Criticが弱い(学習が遅い/過学習):Actor更新がノイズ化

  1. 関連書籍(この本の前後を埋める)
    (1) 理論の標準教科書(最重要)
    ・Richard S. Sutton & Andrew G. Barto『強化学習(第2版)』森北出版(原著2018の日本語版) (morikita.co.jp)
     役割:本書(ゼロつく4)で実装した内容を、理論の体系として再整理できる。

(2) 入門の補助線(概念の導入が欲しい場合)
・『「強化学習」を学びたい人が最初に読む本』日経BP (Amazon Japan)
 役割:用語と全体像の導入、実務目線の補助。

(3) 公式情報(正誤表・ダウンロード等の一次ソース)
・オーム社(書誌・目次・正誤等の入口) (オーム社)
・オライリー・ジャパン(内容紹介) (O'Reilly Japan)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?