Offline RL
Offline RL (batch RL) は、環境と相互作用せず、固定 dataset から policy を学習する 枠組みです。Robotics、医療、自動運転、recommendation など、オンライン探索が高コストな領域で重要です。
何が難しいのか
オンライン RL では、policy が悪い action を取ったら新しい (s, a, r, s') が観測されます。Offline RL ではこれが不可能で、
- Distribution shift: 学習 policy が dataset にない state-action を選びがち
- Extrapolation error: Q 関数が未観測領域で過大評価される
- Pessimism vs optimism: 既知データに保守的になるべき
という課題が出ます。
代表 method
| Method | 一言で |
|---|---|
| Behavior cloning | 単に dataset の action を真似る |
| BCQ / BEAR | Policy が behavior に近いことを強制 |
| CQL | Q 値を OOD action で意図的に低く抑える |
| IQL | Max を使わず、expectile regression で価値学習 |
| Decision Transformer | Return-conditioned sequence model として扱う |
CQL の直感
CQL (Conservative Q-Learning) は、
を最小化します。直感的には、
- Behavior policy が選びがちな action では Q を高く
- それ以外 (OOD) では Q を低く
抑えることで、過大評価を防ぎます。
IQL の直感
IQL (Implicit Q-Learning) は、max 操作を避け、expectile regression で価値を学習します。OOD action を陽に query しないため、distribution shift に強く、実装も簡単で広く使われます。
LLM との関係
DPO は、ある意味で offline preference 学習 と見ることができます。固定された preference dataset から、policy を直接最適化するためです。詳細は DPO を参照。
数式で見る distribution shift と conservative Q-learning
Offline RL では、固定 dataset だけを使って policy を学びます。新しい policy が dataset にない action を選ぶと、Q function が過大評価しやすくなります。
CQL は、policy が選びそうな action の Q 値を下げ、dataset に実際にある action の Q 値を相対的に高く保つ conservative regularizer を加えます。
この式の気持ちは、「dataset 外の怪しい action に高い Q 値を与えないように、Q function を保守的に学習する」というものです。Offline RL の本質は、exploration できない状態で distribution shift をどう抑えるかにあります。
関連ページ
主なソース
- CQL: https://arxiv.org/abs/2006.04779
- IQL: https://arxiv.org/abs/2110.06169
- Decision Transformer: https://arxiv.org/abs/2106.01345
- Offline RL survey: https://arxiv.org/abs/2005.01643