Q学習入門からDQNまで:MDP・更新則・探索戦略を徹底解説

Q学習とは — 概要

Q学習(Q-learning)は、強化学習(Reinforcement Learning, RL)の代表的なアルゴリズムの一つで、環境のモデル(遷移確率や報酬モデル)を知らなくても最適な行動方針(方策; policy)を学習できる「モデルフリー」手法です。Watkins によって提案され、オフポリシー(off-policy)であるため、実際にどの方策で行動データを収集していても、最適方策を学習できる点が特徴です。

基礎概念(MDP と Q関数)

Q学習はマルコフ決定過程(Markov Decision Process, MDP)を前提にしています。MDP は状態集合 S、行動集合 A、遷移確率 P(s'|s,a)、報酬関数 R(s,a) と割引率 γ (0 ≤ γ < 1) で定義されます。

  • 価値関数 Vπ(s):方策 π に従ったときの状態 s からの期待割引累積報酬。
  • 行動価値関数 Qπ(s,a):状態 s で行動 a を取り、その後方策 π に従ったときの期待割引累積報酬。

Q学習は最適行動価値関数 Q*(s,a) を直接推定し、そこから最適方策 π*(s)=argmax_a Q*(s,a) を得ます。

Q学習の更新則(基本形)

タブラー(表形式)Q学習では、経験(s,a,r,s')を得るたびに Q テーブルを次のように更新します:

Q(s,a) ← Q(s,a) + α [ r + γ max_{a'} Q(s',a') − Q(s,a) ]

  • α: 学習率(0 < α ≤ 1)。
  • γ: 割引率(将来の報酬の現在価値を調整)。
  • r: 直後に得られた報酬。
  • max_{a'} Q(s',a'): 次状態 s' における最大の行動価値(「ベルマン最適性方程式」による更新)。

この更新により、Q は逐次的に最適行動価値関数 Q* に近づくことが期待されます。

特徴と理論的性質

  • オフポリシー:実際の行動方策(例:ε-greedy)と学習対象の最適方策が異なっていても学習可能。
  • モデルフリー:環境の遷移確率や報酬分布を事前に知らなくても良い。
  • 収束性:有限状態・有限行動の MDP 下で、各状態行動対が無限回訪問され、学習率 α_t が Robbins–Monro 条件(∑α_t = ∞ かつ ∑α_t^2 < ∞)を満たすように設定されれば、Q 学習は確率1で Q* に収束することが証明されています(Watkins & Dayan 1992 の結果、以降の理論的補強あり)。

探索と搾取(exploration vs exploitation)

Q学習では、行動を決定する際に未知の状態を探索する必要があります。一般的な探索戦略は以下の通りです:

  • ε-greedy:確率 ε でランダム行動を取り、1−ε で現在の Q に基づく貪欲行動(argmax)を取る。ε を徐々に減らす(ε-decay)ことで学習初期に探索、後期に搾取を行う。
  • ソフトマックス(Boltzmann):行動を確率的に選択し、Q の大きさに応じて確率を割り当てる。
  • Optimistic initialization(楽観的初期化):Q 値を高めに初期化して訪問を促す。

理論的には「GLIE(Greedy in the Limit with Infinite Exploration)」すなわち「無限回の探索を確保しつつ十分に最終的には貪欲になる」性質が満たされることが、収束条件の一つになります。

実装上の注意点とハイパーパラメータ

  • 学習率 α:固定値でも良いが、収束性を理論的に担保するなら減衰するスケジュールが好ましい。例えば α_t = 1/(1 + visit_count(s,a))。
  • 割引率 γ:タスクに応じて設定。長期報酬を重視するなら γ を 0.9〜0.99 程度にすることが多い。
  • ε の設定:初期は高め(0.1〜1.0)で始め徐々に低下させる。固定 ε でも学習は進むが最終政策が最適である保証は弱くなる。
  • 状態・行動空間が大きい場合:タブラー法は不適。汎化のために関数近似(線形関数近似、ニューラルネットワーク)を使う。

タブラー法の限界と関数近似への拡張

現実の多くの問題では状態空間や行動空間が連続的・高次元であるため、Q テーブルをそのまま使うことは不可能です。そこで関数近似器 Q(s,a;θ) を学習するアプローチが用いられます。しかし、関数近似を導入すると従来の収束保証が崩れるケースが多く、学習が不安定になることがあります。

深層強化学習(Deep Q-Network, DQN)とその発展

DQN(Deep Q-Network)は、深層ニューラルネットワークを Q 関数の近似器に用いた代表的手法です(Mnih et al., 2015)。DQN が導入した主要な工夫点は:

  • 経験再生バッファ(experience replay):観測した経験をバッファに蓄え、ミニバッチでランダムサンプリングして学習。データの相関を減らして安定性を向上。
  • ターゲットネットワーク:学習ターゲットで用いる Q 関数のパラメータを固定化したコピーを持ち、一定ステップごとに同期することでターゲットの振動を抑える。

さらに、過大評価バイアスを低減する Double DQN、状態表現を改善する Dueling ネットワーク、優先度付き経験再生(Prioritized Replay)、分布強化学習(Distributional RL)など、多くの改良が提案されています(総称して Rainbow などに統合されることもあります)。

代表的なアルゴリズムの擬似手順(タブラー Q 学習)

  • Q テーブルを初期化(一般的には 0 または楽観的に大きめに)。
  • 各エピソード:状態 s を初期化。
  • ステップごとに:ε-greedy で a を選択、報酬 r と次状態 s' を観測、Q を更新。
  • s' が終端でないなら s←s' を継続、終端なら次エピソードへ。
  • 学習が収束するか最大エピソード数に到達したら終了。

実践的な問題と対処法

  • スパース報酬:報酬が稀なタスクでは探索が困難。報酬シェイピングや階層的強化学習(options, HRL)が有効。
  • 非定常環境:環境が変化する場合、過去の経験が有害になる。経験リプレイのバッファ戦略や継続的学習の工夫が必要。
  • 過大評価バイアス:max 操作によるバイアスを Double Q-learning で軽減できる。
  • 関数近似の不安定性:ターゲットネットワークや経験再生、学習率調整が有効。

応用例と現実世界での利用

Q学習やその深層版は、ゲーム(チェス、囲碁、Atari ゲーム等)、ロボティクス、広告最適化、推薦システム、運用最適化など多岐に渡ります。特に DQN は高次元の観測(画像)から直接最適行動を学習する点で大きな成功を収めました。ただし、現実世界の安全性・サンプル効率・非定常性といった課題が残っており、研究・工業応用の両面で活発な改良が続いています。

デバッグと評価の指標

  • 平均エピソード報酬(learning curve):学習の進行を視覚化する最も基本的な指標。
  • TD(Temporal Difference)誤差:更新の大きさや安定性をチェック。
  • Q 値の発散チェック:極端に大きな Q 値が発生していないか定期確認。
  • 方策の評価:最新の Q に基づいた決定的(greedy)方策で定期的に評価して性能を測る。

まとめ(要点)

Q学習は、モデルを知らなくても最適な行動価値関数を学べる強力な手法で、理論的な収束保証(有限 MDP、適切な学習率・探索条件下)を持ちます。一方で状態空間が大きい問題や関数近似を用いる場合は学習の不安定性や収束問題が生じます。深層強化学習(DQN 以降)の発展により高次元問題への適用が可能になりましたが、実務ではハイパーパラメータ調整、探索戦略、報酬設計、安定化手法の採用が重要です。

参考文献