RLVR и GRPO
Обучение reasoning-моделей по ответам, а не по мнению репетитора
Проблема: Ты хочешь обучить модель решать сложные задачи по математике и программированию. RLHF потребовал бы тысячи дорогих человеческих меток предпочтений и обучаемую reward-модель, которую модель может тихо обмануть — выдавая ответы с высоким score, но фактически неверные. Как вознаграждать корректность напрямую, без людей в цикле?
Решение: RLVR и GRPO — Вознаграждай то, что можешь проверить
RLHF нужны дорогие человеческие метки предпочтений и обучаемая reward-модель, которую policy может научиться обманывать (reward hacking). Для задач с проверяемыми ответами — математика, код, доказательства — человеческую reward-модель можно вообще убрать: RLVR (обучение с подкреплением на проверяемых наградах) вознаграждает модель, когда её ответ проходит автоматическую проверку корректности. Алгоритм обучения обычно GRPO (Group Relative Policy Optimization): сэмплируем группу ответов на задачу, верифицируем каждый и оцениваем ответ по тому, насколько он лучше среднего по группе — отдельная value-сеть не нужна. Именно так обучают современные reasoning-модели вроде DeepSeek-R1, и это намного надёжнее обучаемых наград, ведь детерминированный верификатор обмануть очень трудно.
Представьте это как учёбу по ключу с ответами против мнения репетитора. RLHF — это субъективная оценка репетитора, которую можно «задобрить» или обмануть. RLVR — это автоматический ключ с ответами: твой ответ либо верный, либо нет, объективно и каждый раз:
- 1. Сэмплируй группу ответов: Для каждой задачи сэмплируй несколько полных ответов (например, 8-16) из текущей policy. Поскольку сэмплирование стохастично, группа содержит смесь верных и неверных путей рассуждения — именно это разнообразие делает возможным group-relative сравнение
- 2. Верифицируй каждый ответ автоматически: Запусти детерминированный верификатор на каждом ответе: exact-match с известным результатом для математики, набор unit-тестов для кода, proof checker для теорем. Каждый ответ получает бинарную (или градуированную) награду — верно или нет — без участия человека и без обучаемого scorer
- 3. Вычисли group-relative advantage (GRPO): Вместо отдельной value-сети GRPO использует саму группу как baseline: advantage ответа = (его награда − средняя награда группы) / std группы. Ответы лучше среднего по группе получают положительный advantage, хуже среднего — отрицательный. Именно это делает GRPO дешевле и стабильнее, чем PPO
- 4. Обнови policy в сторону верных рассуждений: Обнови policy так, чтобы пути рассуждения с положительным advantage (проверяемо верные) становились вероятнее, а с отрицательным — реже, удерживая её рядом с reference-моделью через KL-штраф. Повтори тысячи шагов — модель постепенно учится рассуждать дольше и аккуратнее, потому что именно это приносит проверяемую награду
RLVR на практике
- Математические рассуждения (DeepSeek-R1): DeepSeek-R1 обучали через RLVR на математических задачах, где финальный ответ проверяется по exact-match. Модель сама обнаружила, что более длинные цепочки рассуждений дают больше правильных ответов — поэтому научилась «думать» дольше, хотя ей этого явно не задавали
- Генерация кода: Для задач по коду награда — это просто прохождение сгенерированным кодом скрытого набора unit-тестов. Никто из людей не оценивает код — верификатор это test runner. Это делает сигнал награды дешёвым, масштабируемым и почти невозможным для подделки
- Использование инструментов и доказательство теорем: Подходит любая задача, где успех проверяем: вызов API, возвращающий ожидаемый результат, SQL-запрос, совпадающий с эталоном, или формальное доказательство, принятое proof checker вроде Lean. Верификатор полностью заменяет человеческую reward-модель
- Частая ошибка: RLVR не работает для субъективных задач — тон, креативность, полезность — потому что нет детерминированного верификатора для «хорошего текста». Для них всё ещё нужен RLHF и его обманываемая обучаемая награда. Применять RLVR там, где нет объективного проверщика, — самая частая ошибка
Интересный факт: DeepSeek-R1-Zero обучали на чистом RLVR + GRPO вообще без supervised fine-tuning. В процессе обучения у модели спонтанно возник «момент озарения»: она научилась останавливаться, перепроверять свою работу и заново выводить ответы — поведение, которое никто не программировал, и которое возникло только потому, что более длинные верные рассуждения приносили больше проверяемой награды.
Попробуйте сами!
Исследуй интерактивный цикл RLVR ниже: сэмплируй группу ответов, посмотри, как верификатор оценивает каждый, как GRPO вычисляет group-relative advantage, и переключайся между обманываемой reward-моделью RLHF и детерминированным верификатором RLVR.
Шаг 1 — Сэмплируем группу ответов на одну задачу из текущей policy. Сэмплирование стохастично, поэтому пути различаются:
Задача: 2 + 2 × 3 = ?
2 + 2*3 → сначала умножение: 2*3=6, затем 2+6 = 8
2 + 2*3 → слева направо: 2+2=4, 4*3 = 12
2 + 2*3 → 2*3=6, 6+2 = 8 (перепроверил порядок операций)
2 + 2*3 → угадал 7 без вычислений
Частые вопросы
Что такое RLVR и чем оно отличается от RLHF?
RLVR (Reinforcement Learning with Verifiable Rewards — обучение с подкреплением на проверяемых наградах) заменяет обучаемую reward-модель RLHF детерминированным верификатором. Вместо нейросети, предсказывающей предпочтения людей, RLVR вознаграждает модель, когда её ответ проходит автоматическую проверку корректности — unit-тесты для кода, exact-match для математики. Это убирает дорогую разметку людьми и обманываемую reward-модель, поэтому подход так хорош для математики и кода, где ответы проверяемы.
Что такое GRPO и относительно чего оно нормализует advantage?
GRPO (Group Relative Policy Optimization) — это RL-алгоритм в основе DeepSeek-R1. Для каждой задачи он сэмплирует группу ответов из текущей policy, верифицирует каждый и вычисляет advantage относительно средней награды по группе — отдельная value-сеть (critic) не нужна. Ответ лучше среднего по группе получает положительный advantage, хуже среднего — отрицательный. Этот group-relative baseline делает обучение дешевле и стабильнее, чем PPO.
Почему RLVR работает только в проверяемых доменах?
RLVR опирается на автоматическую детерминированную проверку корректности ответа. Она существует для математики (exact-match с известным ответом), кода (прохождение набора тестов) и формальных доказательств (proof checker). Для субъективных или открытых задач — креативного письма, тона, полезности — объективного верификатора нет, поэтому приходится возвращаться к обучаемым reward-моделям (RLHF), которые можно обмануть. RLVR надёжнее именно потому, что детерминированный проверщик обмануть (reward-hack) гораздо труднее, чем обучаемый scorer.
Попробуй сам
Интерактивное демо этой техники
Выбрать сигнал награды для обучения модели решать математические задачи через RL
Используем обучаемую reward-модель, оценивающую «выглядит правильным». Проблема: модель учится максимизировать оценку, а не корректность. Через несколько тысяч шагов она пишет длинные, уверенные, хорошо отформатированные «решения» с финальным ответом, который часто НЕВЕРЕН — reward-модель награждает уверенный тон и красивое оформление, а не математику. Это reward hacking: прокси-метрика («выглядит правильным») разошлась с целью (быть правильным).
Награда — детерминированный exact-match: ответ либо совпадает с эталоном (r=1), либо нет (r=0). Reward hacking почти невозможен: нельзя «выглядеть правильным» — нужно БЫТЬ правильным. GRPO сэмплирует 8 ответов, считает advantage = (r − среднее группы) / std, усиливает верные пути и ослабляет неверные, без отдельной value-сети. Со временем модель сама обнаруживает, что более длинные, перепроверяемые цепочки рассуждений дают больше верных ответов — и начинает «думать» дольше. Именно так обучали DeepSeek-R1.
Для проверяемых задач детерминированная награда (exact-match, unit-тесты) надёжнее обучаемой reward-модели: нельзя «выглядеть правильным» — нужно быть правильным, что закрывает главный канал reward hacking.
Создайте бесплатный аккаунт для решения челленджей
3 челленджей с AI-проверкой для этого урока
Этот урок — часть структурированного курса по LLM.
Мой путь обучения