DPO: прямое обучение предпочтениям

Термин глоссария

Direct Preference Optimization (DPO)


DPO — метод обучения, который напрямую оптимизирует модель под предпочтительные ответы, используя сравнительные данные без отдельного шага обучения reward model.

Определение

Direct Preference Optimization (DPO) — это метод обучения больших языковых моделей на данных предпочтений без использования reinforcement learning. В отличие от RLHF, который требует отдельной reward model и алгоритма оптимизации политики (обычно PPO), DPO напрямую корректирует вероятность генерации предпочтительного ответа на основе сравнительных данных.

DPO существенно упрощает пайплайн выравнивания: исчезает необходимость в моделировании вознаграждения, а обновления модели становятся более стабильными и менее вычислительно затратными.

Как работает

DPO принимает пары ответов:

  • preferred — лучший по оценке человека или модели;
  • dispreferred — худший вариант ответа.

Задача DPO — сделать вероятность генерации preferred-ответа выше, а dispreferred — ниже, при этом контролируя размер обновления. Для этого используется аналитическая функция потерь, которая связывает текущую модель с её «замороженной» копией (reference model). Reference model задаёт базовый стиль и предотвращает разрушение поведения.

Ключевые элементы DPO:

  • Сравнительные данные — основа обучения.
  • Reference model — фиксированная копия модели до оптимизации.
  • Preference loss — функция, повышающая вероятность предпочтительного ответа.
  • Контроль отклонения — предотвращает отход модели от исходного поведения.

В отличие от RLHF, DPO не требует расчёта advantages, не зависит от reward model и не использует policy optimization. Это делает процесс проще и дешевле.

Где применяется

  • Подготовка ассистентов для диалоговых задач.
  • Оптимизация моделей под безопасное поведение.
  • Настройка reasoning через предпочтения.
  • Модели для программирования.
  • Тонкая настройка корпоративных ассистентов.
  • RLAIF — обучение по предпочтениям другой модели.

Практические примеры использования

В больших ассистентах DPO сокращает пайплайн выравнивания: вместо долгого RLHF разработчики используют DPO для корректировки поведения по тем же данным предпочтений. Это ускоряет обучение и уменьшает вычислительные затраты.

В задачах кода DPO применяется для улучшения стиля, структурированности и читаемости генерируемых решений. Предпочтения разработчиков используются как источник сигнала.

В системах безопасности DPO снижает вероятность токсичных или опасных ответов, поскольку такие варианты систематически оцениваются как dispreferred.

В корпоративных системах DPO позволяет адаптировать модель под нормы коммуникации и доменные стандарты, избегая переобучения на шумных данных.

Ключевые свойства DPO

  • Простота — отсутствуют этапы обучения reward model и RL.
  • Стабильность — аналитическая функция потерь уменьшает риск расхождения модели.
  • Контроль поведения — reference model ограничивает нежелательные отклонения.
  • Эффективность — меньше вычислительных затрат по сравнению с RLHF.

Проблемы и ограничения

  • Зависимость от качества предпочтений — плохие данные приводят к деградации поведения.
  • Ограниченность выразительности — DPO не охватывает сложные многошаговые стратегии, как RLHF.
  • Риск переоптимизации — без аккуратной настройки модель может стать слишком консервативной.
  • Недостаточная гибкость — в задачах с динамическими наградами RL может работать лучше.

Преимущества и ограничения

  • Плюс: значительно проще RLHF.
  • Плюс: снижает вычислительные затраты.
  • Плюс: стабильно работает в больших моделях.
  • Плюс: легко интегрируется в существующие пайплайны.
  • Минус: ограниченная выразительность по сравнению с RL.
  • Минус: требует качественных данных предпочтений.
  • Минус: склонно к чрезмерным ограничениям поведения.
  • Минус: хуже работает в динамических средах.

Связанные термины

  • RLHF
  • Preference modeling
  • Preference optimization
  • Reward model
  • Value head
  • PPO
  • RLAIF

Категория термина

Обучение и дообучение