Глава 2: Задача Offline RL
«Функция ценности — оптимист. При возможности она присвоит бесконечную ценность действиям, которых никогда не видела — и именно в этом заключается проблема.»
От BC к RL: что меняется
Поведенческое клонирование игнорирует награды. Оно копирует то, что делал эксперт, — а не то, чего эксперт пытался достичь.
Естественный следующий шаг: использовать сигнал награды. Если есть датасет переходов $(s, a, r, s')$, можно попытаться обучить политику, максимизирующую суммарную награду, — а не просто имитирующую наблюдаемое поведение. В этом и состоит обещание офлайн RL.
Инструмент, который делает онлайн RL рабочим — Q-обучение: учимся функции ценности $Q(s, a)$, оценивающей ожидаемую будущую награду при выборе действия $a$ в состоянии $s$, затем действуем жадно по отношению к ней.
Вопрос: можно ли применить Q-обучение к фиксированному офлайн датасету? Да — но с катастрофическим режимом отказа, требующим осторожного обращения.
Q-обучение: краткое напоминание
Q-функция удовлетворяет уравнению оптимальности Беллмана:
Мы обучаем $Q_\theta$, минимизируя ошибку TD (Temporal Difference):
где $Q_{\bar{\theta}}$ — целевая сеть (target network): периодически обновляемая копия $Q_\theta$, используемая для стабилизации обучения.
В онлайн RL агент собирает новые переходы, действуя в среде. Когда $Q_\theta$ становится неточной в каком-то месте, агент посетит эти состояния, получит реальные награды и скорректирует оценку.
В офлайн RL датасет $\mathcal{D}$ фиксирован. Обратной связи нет.
Проблема ошибки экстраполяции
Вот в чём суть проблемы. На шаге $\max_{a'}$ в обновлении Беллмана:
оптимизатор перебирает все возможные действия $a'$ — включая те, которых никогда не было в датасете $\mathcal{D}$.
Для действия $a' \notin \mathcal{D}$ у Q-функции нет обучающего сигнала. Её значение в точке $(s', a')$ определяется исключительно обобщением из соседних точек — что для нейронных сетей может быть произвольно оптимистичным.
Когда обновление Беллмана берёт это завышенное $Q(s', a')$ в качестве цели, оно распространяет переоценку назад по цепочке:
Это ошибка бутстрэппинга: ошибки распространяются и усиливаются через цепочку TD-обновлений.
Конкретный пример
Предположим, наш датасет содержит переходы из химического процесса. Оператор всегда поддерживал температуру в диапазоне 380–420K. Q-функция обучена на этих состояниях.
В состоянии $s'$ вблизи границы (скажем, 419K) шаг $\max_{a'}$ может обнаружить, что Q-функция предсказывает высокую награду для OOD-действия вроде увеличить нагрев до 450K — действия, которое оператор никогда не предпринимал. Данных для опровержения этого нет. Q-функция оптимистично обобщила значения в эту область.
Обновление Беллмана затем использует это значение как цель, завышая $Q(s, 419K, \text{нагрев})$. Это распространяется назад, завышая значения в более ранних состояниях. Полученная политика будет уверенно вести процесс в опасную зону — и Q-функция будет предсказывать высокие награды на всём пути туда.
Это не граничный случай. Это поведение по умолчанию Q-обучения на офлайн данных.
Формальная оценка: разрыв в производительности
Пусть $\hat{\pi}$ — жадная политика относительно обученной Q-функции:
Определим оценённую производительность $\hat{J}(\hat{\pi}) = \underset{s,a \sim d^{{\hat{\pi}}}}{\mathbb{E}}\bigl[Q_\theta(s,a)\bigr]$ — то, что Q-функция предсказывает для данной политики — и реальную производительность $J(\hat{\pi})$ — то, что политика фактически получит в среде.
Разрыв между ними ограничен сверху (приближённо, по Kumar et al., 2020):
Именно так правильно формулировать проблему. Левая часть — то, чего мы боимся: разрыв между обещанной и реальной наградой. Правая показывает, что его порождает: ошибка Q-функции, взятая под $d^{{\hat{\pi}}}$ — распределением состояний обученной политики, а не поведенческой.
Вот почему OOD-переоценка опасна. Во время обучения $\hat{J}(\hat{\pi})$ выглядит высокой — Q-функция оптимистична. Но этот оптимизм сосредоточен именно там, куда жадная политика стремится сама: в действиях, которых никогда не было в $\mathcal{D}$, где $\lvert Q_\theta - Q^{\ast} \rvert$ наибольшее. Правая часть bound может быть сколь угодно большой — реальная производительность может быть сколь угодно хуже оценённой.
Ключевая асимметрия: ошибка оценивается под $d^{{\hat{\pi}}}$, а не под $d^{{\pi_{\beta}}}$. Политика, остающаяся близко к поведенческой, держала бы этот член малым. Жадная политика его активно максимизирует.
Сдвиг распределения: версия для Offline RL
В главе 1 мы видели сдвиг распределения в BC: политика посещает другие состояния, чем эксперт, что приводит к накапливающимся ошибкам при предсказании действий.
В офлайн Q-обучении сдвиг распределения происходит в пространстве действий:
- Обучающее распределение: $(s, a) \sim d^{{\pi_{\beta}}}(s) \cdot \pi_{\beta}(a \mid s)$ — пары состояние-действие из датасета
- Распределение при применении: $(s, a) \sim d^{{\hat{\pi}}}(s) \cdot \hat{\pi}(a \mid s)$ — пары под жадной политикой
Жадная политика будет выбирать действия вне обучающего распределения всякий раз, когда Q-функция оптимистична там — то есть именно тогда, когда нет корректирующего обучающего сигнала.
Это иногда называют «смертельной триадой»: аппроксимация функций + бутстрэппинг + off-policy обучение. Все три присутствуют в офлайн Q-обучении.
Демонстрация на практике
📄 Полный код:
extrapolation_error.py
import torch
import torch.nn as nn
class QNetwork(nn.Module):
def __init__(self, state_dim, action_dim, hidden=128):
super().__init__()
self.net = nn.Sequential(
nn.Linear(state_dim + action_dim, hidden), nn.ReLU(),
nn.Linear(hidden, hidden), nn.ReLU(),
nn.Linear(hidden, 1),
)
def forward(self, s, a):
return self.net(torch.cat([s, a], dim=-1)).squeeze(-1)
def measure_ood_overestimation(Q, dataset_actions, all_actions, state):
"""
Сравниваем Q-значения для действий из датасета и OOD-действий.
"""
s = state.unsqueeze(0).expand(len(all_actions), -1)
with torch.no_grad():
q_all = Q(s, all_actions)
q_in_dist = Q(
state.unsqueeze(0).expand(len(dataset_actions), -1),
dataset_actions
)
print(f"Действия из датасета | Q mean: {q_in_dist.mean():.3f}, max: {q_in_dist.max():.3f}")
print(f"Все действия (+ OOD) | Q mean: {q_all.mean():.3f}, max: {q_all.max():.3f}")
print(f"Коэф. переоценки OOD : {q_all.max().item() / q_in_dist.max().item():.2f}x")
Результат после обучения vanilla Q-learning на датасете с действиями в [-0.5, 0.5] при пространстве действий [-2, 2]:
Действия из датасета | Q mean: 0.412, max: 0.731
Все действия (+ OOD) | Q mean: 0.893, max: 3.847
Коэф. переоценки OOD : 5.26x
Q-функция присваивает значения, в 5 раз превышающие максимальное в датасете, действиям, которых никогда не видела. Жадная политика уверенно выберет именно их.
Ключевое противоречие
Вся офлайн RL сводится к следующему напряжению:
| Цель | Ограничение |
|---|---|
| Максимизировать награду → эксплуатировать Q-функцию | Q-функция ненадёжна для OOD-действий |
| Держаться близко к поведенческой политике | Поведенческая политика может быть субоптимальной |
Слишком консервативно → политика = BC (нет улучшения над поведением) Слишком агрессивно → политика эксплуатирует ошибки Q-функции (катастрофический отказ)
Пространство решений делится на два семейства:
Методы ограничения политики — ограничивают обученную политику, удерживая её близко к $\pi_{\beta}$:
Примеры: TD3+BC, BEAR, BCQ.
Методы пессимизма по значениям — вместо ограничения политики, делают Q-значения пессимистичными для OOD-действий:
Интуиция: если OOD Q-значения искусственно занижены, жадная политика естественным образом предпочтёт действия из распределения данных.
Это подход CQL (глава 4) и IQL (глава 5).
Ландшафт алгоритмов Offline RL
Помимо пессимизма по значениям, широко используются ещё два семейства. В этой книге подробно разобраны value-based (CQL, IQL) и модельные (глава 8) методы; ниже — краткая карта.
Методы с ограничением политики и Actor-Critic удерживают обученную политику близко к поведенческой — явными ограничениями или регуляризацией актора к данным. TD3+BC (Fujimoto & Gu, 2021) добавляет к loss актора член поведенческого клонирования: $\pi$ максимизирует $\lambda Q(s, \pi(s)) - (\pi(s) - a)^{2}$ (с масштабированием $Q$ по среднему $\lvert Q \rvert$ по батчу), оставаясь близко к данным и улучшаясь. AWAC (Advantage-Weighted Actor-Critic) и AWR (Advantage-Weighted Regression) подгоняют политику с весами по преимуществу (advantage); актор использует только пары $(s, a)$ из датасета, без OOD-запросов к Q. BEAR и BCQ ограничивают носитель политики (например, действиями близкими к данным или сгенерированными условным VAE). Все они — actor-critic (есть и критик Q/V, и актор), но актор ограничен или регуляризован, а не просто жадный по неограниченной Q.
Decision Transformers (DT) (Chen et al., 2021) — другой взгляд: офлайн RL как моделирование последовательностей. Модель по префиксу траектории (состояния, действия, return-to-go или награды) предсказывает следующее действие авторегрессионно. Нет Bellman-бэкапа и явной Q-функции; «политика» задаётся условным распределением по действиям при заданном контексте и желаемом return. Offline DT обучают supervised learning по кускам $(s, a, R)$ из датасета, часто с return-conditioning: на тесте можно запрашивать поведение с «высоким return». Экстраполяционная ошибка в явном виде отсутствует (нет $\max_{a'}$ по OOD-действиям), но сложность переносится на обобщение последовательностной модели и выбор conditioning. Варианты включают Q-learning DT (например, QDT), комбинирующие return-conditioning с TD для лучшего credit assignment.
Для практиков: пессимизм по значениям (CQL, IQL) и модельные методы (глава 8) — надёжный выбор по умолчанию для непрерывного управления и технологических данных; методы с ограничением политики (например, TD3+BC) и DT стоит пробовать при длинных горизонтах, мультизадачных данных или предпочтении инструментов для sequence modeling. Ссылки на эти семейства приведены в конце главы.
Почему бы просто не использовать BC?
Разумный вопрос: если офлайн Q-обучение так опасно, почему бы не использовать BC?
Ответ зависит от качества и покрытия поведенческой политики.
BC достаточен, когда: - Поведенческая политика близка к оптимальной - Горизонт задачи короткий - Датасет покрывает состояния, с которыми встретитесь при развёртывании
BC недостаточен, когда: - Поведенческая политика субоптимальна (реальные операторы ошибаются) - Нужно комбинировать хорошие части разных траекторий - Задача требует рассуждений о долгосрочных последствиях (H > 20) - Есть информация о награде, которую хочется использовать
В промышленных условиях, как правило, выполняются все четыре условия недостаточности BC. Операторы не оптимальны; разные смены принимают разные решения; 30-минутный горизонт предсказания требует долгосрочного планирования; функция награды (процент наполнителя, стабильность температуры, потребление энергии) хорошо определена.
Это и есть мотивация для всего, что рассматривается в главах 3–7.
Итоги
| Проблема | Описание |
|---|---|
| Ошибка экстраполяции | Q-значения завышены для ненаблюдавшихся действий |
| Усиление при бутстрэппинге | TD-обновления распространяют ошибки назад во времени |
| Сдвиг распределения | Жадная политика посещает состояния/действия вне датасета |
| Смертельная триада | Аппроксимация функций + бутстрэппинг + off-policy = нестабильность |
Два основных средства: ограничение политики (держаться близко к $\pi_{\beta}$) и пессимизм по значениям (занижать OOD Q-значения). CQL реализует второй подход с элегантной регуляризационной целевой функцией — туда мы и направляемся дальше. В главе 2 также намечен более широкий ландшафт: policy-constraint / Actor-Critic (TD3+BC, AWAC, BEAR, BCQ) и Decision Transformers; далее в книге фокус на пессимизме по значениям (главы 4–5) и модельных методах (глава 8).
Литература
- Levine, S. et al. (2020). Offline Reinforcement Learning: Tutorial, Review, and Perspectives. arXiv:2005.01643.
- Kumar, A. et al. (2019). Stabilizing Off-Policy Q-Learning via Bootstrapping Error Reduction (BEAR). NeurIPS. arXiv:1906.00949.
- Fujimoto, S. et al. (2019). Off-Policy Deep Reinforcement Learning without Exploration (BCQ). ICML. arXiv:1902.08754.
- Kumar, A. et al. (2020). Conservative Q-Learning for Offline Reinforcement Learning (CQL). NeurIPS. arXiv:2006.04779.
- Fujimoto, S. & Gu, S.S. (2021). A Minimalist Approach to Offline Reinforcement Learning (TD3+BC). NeurIPS. arXiv:2106.06860.
- Nair, A. et al. (2020). Accelerating Online Reinforcement Learning with Offline Datasets (AWAC). arXiv:2006.09359.
- Chen, L. et al. (2021). Decision Transformer: Reinforcement Learning via Sequence Modeling. NeurIPS. arXiv:2106.01345.
- Sutton, R. S., & Barto, A. G. (2018). Reinforcement Learning: An Introduction (2nd ed.), Ch. 11. MIT Press. (смертельная триада)