Диагностика Mock-интервью
Главная · LLM: обучение и инференс

Alignment: RLHF и DPO

Как из base model, которая просто продолжает текст, делают полезного и безопасного ассистента: reward model, PPO с KL-штрафом, и почему DPO позволяет добиться похожего результата без обучения с подкреплением.

Интуиция

После претрейнинга и SFT модель умеет отвечать в правильном формате, но «правильном» по чьим меркам? Полезность, безвредность и честность (helpful, harmless, honest) — вещи, которые трудно описать эталонным ответом, зато легко сравнить: покажи человеку два ответа, и он скажет, какой лучше. Выравнивание (alignment) — это обучение модели на таких сравнениях: не «пиши вот так», а «из этих двух — вот этот лучше».

Классический RLHF: три этапа

RLHF (Reinforcement Learning from Human Feedback) — конвейер из трёх шагов:

maxθ E[r(x, y)] − β · KL(πθ ‖ πref)

Зачем KL? Reward model — несовершенный прокси. Если оптимизировать её без ограничений, политика найдёт дыры: научится выбивать высокую награду текстами, которые человеку на самом деле не нравятся (reward hacking) — например, бесконечными вежливыми оговорками. KL-поводок не даёт модели уйти далеко от разумного исходного поведения.

Проблемы RLHF известны: дорого (нужна разметка, отдельная RM и онлайн-генерация), нестабильно (RL капризен к гиперпараметрам), плюс систематические перекосы — той же природы, что подхалимство (sycophancy): люди чаще лайкают ответы, которые с ними соглашаются, и модель это выучивает.

DPO: та же цель без RL

DPO (Direct Preference Optimization) замечает: оптимум RLHF-задачи с KL-штрафом можно выразить аналитически и обучать политику напрямую на парах предпочтений, без отдельной reward model и без RL. Лосс поощряет рост вероятности выбранного ответа yw относительно отвергнутого yl — с оглядкой на reference:

L = −log σ( β·[ Δlog πθ(yw) − Δlog πθ(yl) ] ),  где Δ — сдвиг относительно πref

Получается обычное supervised-обучение: стабильнее, проще, без онлайн-сэмплирования. Параметр β играет ту же роль KL-поводка: большой β сильно привязывает политику к reference.

💡 Ключевая мысль Вся суть alignment — «оптимизируй предпочтения, но не убегай от reference-политики»: без поводка модель выучивает не качество, а дыры в его измерителе.

Проведи эксперимент: при маленьком β последовательно выбирай ответы правее — колокол уедет к краю (и KL взлетит: политика «забыла» исходное поведение). Поставь большой β и повтори: политика почти не сдвигается — поводок держит её у reference. Это тот самый компромисс «оптимизация предпочтений vs сохранение модели».

Фидбек без людей: RLAIF и проверяемые награды

Человеческая разметка дорога, поэтому её всё чаще заменяет ИИ-фидбек — RLAIF (RL from AI Feedback): сильная модель сравнивает ответы вместо разметчика. Вариант — Constitutional AI: модель критикует и переписывает собственные ответы по списку явных принципов («конституции»), и на этих данных обучается предпочтениям.

Для reasoning-моделей набирает силу RLVR (RL with Verifiable Rewards): награда не субъективное мнение, а проверяемый факт — сошёлся ли ответ задачи по математике, прошли ли тесты сгенерированный код. Такую награду почти невозможно «взломать» лестью, поэтому RLVR стал двигателем прогресса в рассуждениях.

⚠️ Подводный камень Не путай роли: reward model — это прокси человеческих предпочтений, а не истина. Чем сильнее давишь оптимизацией на прокси, тем больше расходятся «высокая награда» и «хороший ответ» (закон Гудхарта). KL-штраф и ранняя остановка — не бюрократия, а главная защита от этого расхождения.
🎤 На собеседовании
  • «Зачем KL-штраф в RLHF?» — RM несовершенна; без поводка политика находит её дыры (reward hacking) и вырождается. KL держит модель рядом с reference.
  • «Чем DPO отличается от RLHF?» — та же цель (предпочтения + KL), но прямой supervised-лосс на парах: без отдельной RM, без PPO, без онлайн-генерации — проще и стабильнее.
  • «Что такое sycophancy и откуда она?» — модель учится соглашаться с пользователем, потому что разметчики чаще предпочитают согласные ответы; это перекос данных предпочтений, а не «характер» модели.
  • «Почему для математики и кода используют RLVR?» — награда проверяема (ответ сошёлся, тесты прошли), поэтому её нельзя выбить красивым, но неверным текстом.