RLHF и DPO
rlhf и dpo — два способа обучать модель на предпочтениях
RLHF и DPO используют сравнения ответов, чтобы скорректировать поведение модели. В классическом RLHF отдельная модель награды оценивает новые ответы, а основная модель учится повышать эту оценку. DPO работает с выбранными и отклонёнными ответами напрямую, без отдельной модели награды и RL-цикла.
Коротко
RLHF и DPO учат модель учитывать предпочтения между ответами. Классический RLHF сначала превращает человеческие сравнения в отдельную модель награды, затем оптимизирует основную модель с помощью обучения с подкреплением. DPO использует выбранный и отклонённый ответы напрямую. Исходный сигнал у методов похож, а путь обновления весов — разный.
Допустим, модель дала два ответа на один вопрос. Человек выбрал первый: он точнее, спокойнее и лучше следует инструкции. Для датасета получается тройка:
запрос + выбранный ответ + отклонённый ответ
Но одной отметки «этот лучше» недостаточно. Нужен способ перенести множество таких сравнений в веса модели. RLHF и DPO как раз предлагают два разных маршрута.
Что означает RLHF
RLHF расшифровывается как Reinforcement Learning from Human Feedback — обучение с подкреплением на основе обратной связи от людей.
В классической языковой схеме есть несколько этапов.
1. Модель учат следовать инструкциям
Сначала базовую модель дообучают на хороших примерах «запрос → ответ». Этот этап называют supervised fine-tuning, или SFT. Он задаёт исходное поведение, от которого позже будет отталкиваться обучение на предпочтениях.
2. Собирают сравнения
Для одного запроса получают несколько вариантов ответа. Оценщики выбирают более подходящий или выстраивают варианты по порядку. Причины выбора могут быть разными: точность, полезность, безопасность, стиль, соблюдение формата.
3. Обучают модель награды
Отдельная модель получает запрос и ответ, а на выходе даёт числовую оценку. Её учат ставить выбранным ответам более высокий балл, чем отклонённым.
Модель награды не знает «истинную полезность». Она лишь приближает предпочтения, которые увидела в разметке.
4. Оптимизируют основную модель
Языковая модель генерирует новые ответы, модель награды их оценивает, а алгоритм обучения с подкреплением обновляет веса так, чтобы ожидаемая награда росла. Обычно добавляют ограничение, которое не даёт новой политике слишком далеко уйти от исходной SFT-модели.
ответ → оценка награды → обновление модели → новый ответ
↑ │
└─────────────────────────────────────────────┘
Это не обязательно один конкретный алгоритм. PPO стал известным вариантом, но RLHF — более широкое семейство подходов. Внутри него могут использоваться другие способы оптимизации политики.
Как работает DPO
DPO расшифровывается как Direct Preference Optimization — прямая оптимизация предпочтений.
Здесь не обучают отдельную модель награды и не запускают RL-цикл с генерацией ответов на каждом шаге. Обучение сразу сравнивает, насколько текущая модель склонна выдавать выбранный и отклонённый ответы.
В упрощённом виде цель такая:
- повысить относительную вероятность выбранного ответа;
- понизить относительную вероятность отклонённого;
- учитывать поведение опорной модели, чтобы обновление не стало бесконтрольным.
DPO использует математическую связь между оптимальной политикой и функцией награды в стандартной постановке RLHF. Благодаря этой связи явную модель награды можно заменить специальной функцией потерь на парах предпочтений.
Это не означает, что обучение проходит буквально «за один шаг» или что опорная модель всегда исчезает из вычислений. Градиентных итераций по датасету по-прежнему много, а конкретная реализация может хранить отдельную reference-модель или вычислять нужные значения заранее.
Что у методов общего
Оба подхода зависят от качества предпочтений сильнее, чем может показаться по схеме. Если оценщики систематически выбирают многословные ответы, модель научится многословию. Если разметка путает уверенный тон с точностью, поведение тоже унаследует эту ошибку.
Общие элементы обычно такие:
- исходная модель, уже умеющая отвечать на инструкции;
- запросы из нужного распределения задач;
- несколько вариантов ответа;
- сигнал о том, какой вариант предпочтительнее;
- ограничение отклонения от исходного поведения;
- независимая оценка после обучения.
Предпочтения не обязаны исходить только от людей. Их могут формировать другие модели, формальные правила, проверяемые результаты или смесь источников. Но тогда выражение «human feedback» перестаёт точно описывать весь сигнал, даже если общий учебный конвейер похож.
Чем RLHF отличается от DPO
| Вопрос | Классический RLHF | DPO |
|---|---|---|
| Где хранится сигнал предпочтений | В явной модели награды | Неявно в функции потерь |
| Нужен ли отдельный reward model | Да | Нет |
| Есть ли RL-цикл | Да | Нет |
| Нужны ли пары выбранного и отклонённого ответа | Для обучения награды | Непосредственно для обучения политики |
| Можно ли получать новые ответы во время оптимизации | Да, это естественная часть схемы | Базовая постановка работает с заранее собранными парами |
| Главный риск | Переоптимизация несовершенной награды | Переобучение и смещения в фиксированном датасете |
Таблица не выбирает победителя. RLHF даёт больше свободы: награда может учитывать сложные сигналы, а политика — исследовать новые ответы. За это приходится платить более сложным и чувствительным конвейером.
DPO убирает целый промежуточный этап и часто удобнее в воспроизводимом офлайн-обучении. Но он по-прежнему зависит от опорной политики, качества пар и коэффициента, который регулирует силу отклонения. Плохие данные прямой objective не исправляет.
Почему «DPO всегда лучше» — неверный вывод
У DPO действительно короче учебная цепочка, но практический результат зависит от задачи. Если пары отражают нужное поведение и хорошо покрывают будущие запросы, прямое обучение может работать прекрасно. Если новая модель начинает выдавать ответы, непохожие на варианты из датасета, фиксированные сравнения дают меньше информации о такой области.
RLHF может собирать свежие ответы текущей политики и оценивать их моделью награды. Это помогает работать с изменившимся распределением, но открывает другую проблему: модель способна найти особенности награды, которые дают высокий балл без реального улучшения.
Поэтому выбор делают не по моде, а по данным и процессу:
- есть ли надёжная модель награды;
- можно ли позволить себе online-генерацию;
- насколько разнообразны пары предпочтений;
- важна ли воспроизводимость офлайн-обучения;
- какие риски нужно контролировать;
- как будет устроена независимая оценка.
Reward hacking
Модель награды — приближение человеческой оценки. Если основную модель долго оптимизировать по одному приближению, она может научиться использовать его слабые места. Это называют reward hacking или переоптимизацией награды.
Например, reward model может любить длинные ответы, вежливые оговорки или уверенный стиль. Политика постепенно усиливает именно эти признаки, хотя фактическая точность не растёт. Число награды повышается, а живой человек предпочитает результат всё реже.
Ограничение отклонения от опорной модели, разнообразная разметка и отдельные проверки снижают риск, но не устраняют его полностью. У DPO нет явной модели награды, однако смещения разметки никуда не исчезают: objective так же учит модель подражать структуре предпочтений.
Как собирать preference data
Хорошая пара не сводится к очевидному «нормальный ответ против бессмыслицы». На таких сравнениях модель быстро учится различать крайности, но почти ничего не узнаёт о пограничных случаях.
Полезнее, когда ответы правдоподобны и отличаются по важному критерию:
- один точнее соблюдает инструкцию;
- один честно признаёт нехватку данных;
- один лучше подтверждает факты;
- один сохраняет нужный стиль без лишнего текста;
- один избегает опасного совета.
Инструкция для оценщиков должна отделять критерии друг от друга. Если в один выбор смешать точность, красоту языка, краткость и безопасность, трудно понять, чему именно научилась модель.
Несогласие людей тоже ценно. Оно показывает неоднозначные запросы, неясные правила или различия аудитории. Такие случаи можно разбирать отдельно, а не прятать за механическим большинством голосов.
Как проверять результат
Точность на отложенных парах показывает лишь то, научилась ли модель повторять известный тип выбора. Для полноценной проверки этого мало.
После обучения смотрят:
- слепые сравнения новых ответов людьми;
- выполнение инструкций и фактическую точность;
- безопасность и устойчивость к провокационным запросам;
- регрессии на знаниях, коде и рассуждениях;
- смещение по длине, тону и излишней уверенности;
- поведение на языках и темах, которых было мало в датасете.
Важно оставлять тестовые запросы, которые не участвовали ни в SFT, ни в preference training. Иначе оценка легко превращается в проверку запоминания.
Не только текст
Обучение на предпочтениях применимо к изображениям, аудио и другим типам генерации. Оценщик может выбрать более удачную композицию, лучшее следование описанию или более естественный результат. Архитектура модели и функция потерь меняются, но идея сравнения вариантов сохраняется.
В ComfyUI удобно собирать серии изображений и сохранять параметры генерации для будущей разметки пар. Само обучение RLHF или DPO обычно выполняется отдельным тренировочным конвейером: граф генерации помогает подготовить и проверить данные, но не заменяет оптимизацию модели.
С чем часто путают
RLHF и SFT
SFT показывает модели желаемый ответ. Preference learning сообщает, какой из нескольких вариантов лучше. Обычно SFT идёт раньше и создаёт устойчивую отправную точку.
DPO и модель награды
DPO можно вывести через неявную награду, но отдельную модель-судью он не обучает. Это ключевое практическое различие.
Alignment и безошибочность
Обучение на предпочтениях корректирует поведение. Оно не загружает в модель гарантированно верные знания и не превращает каждое утверждение в проверенный факт.
Человеческий выбор и объективная истина
Оценщик способен ошибиться, не заметить выдуманную ссылку или предпочесть более приятный тон. Поэтому данные о предпочтениях дополняют автоматическими проверками и экспертной оценкой там, где цена ошибки высока.
Частые вопросы
DPO — это разновидность RLHF?
В широком разговоре его часто относят к обучению на человеческих предпочтениях. В узком алгоритмическом смысле DPO не запускает reinforcement learning и не использует отдельную модель награды.
Нужна ли DPO опорная модель?
В классической постановке — да: objective сравнивает текущую политику с reference policy. Реализация может вычислять её логарифмы вероятностей заранее, поэтому отдельная копия не всегда находится в памяти одновременно.
Делает ли RLHF модель умнее?
Он может сделать ответы полезнее и лучше согласовать поведение с критериями разметки. Но прирост общих знаний или способности рассуждать не гарантирован. Иногда удобство растёт вместе с потерями на других задачах.
Сколько пар нужно?
Вечного минимального числа нет. Значение имеют разнообразие запросов, сложность различий, согласованность оценщиков и расстояние между исходной моделью и желаемым поведением. Небольшой чистый набор может быть полезнее большой шумной коллекции.
Можно ли использовать только лайки пользователей?
Можно, но лайк смешивает множество причин: содержание, скорость ответа, настроение и ожидания пользователя. Такой сигнал лучше очищать, дополнять контекстом и проверять на смещения.
Главное
RLHF и DPO начинают с одного вопроса: какой ответ предпочтительнее? Классический RLHF обучает по сравнениям модель награды и затем оптимизирует основную модель в RL-цикле. DPO напрямую меняет относительные вероятности выбранного и отклонённого ответов.
Ни один маршрут не превращает субъективную разметку в абсолютную истину. Качество определяется тем, чьи предпочтения собраны, как сформулированы критерии и что проверяется после обучения. В этом смысле хороший датасет и честная оценка важнее красивого названия алгоритма.