RiVER: как учить LLM без правильных ответов — и получать лучше

Когда вы тренируете языковую модель решать математику или писать код — задачи с верифицируемым ответом — стандартный подход RLVR (Reinforcement Learning with Verifiable Rewards) работает отлично. Алгоритм генерирует несколько решений, проверяет каждое по правильному ответу и усиливаетPolicy в сторону успешных. Но что делать, когда ответа нет? Задачи на кнопку «улучшить текст», на соблюдение стиля, на достижение бизнес-метрик — всё это не имеет единственного правильного решения. Именно на этот случай команда исследователей предложила фреймворк RiVER (Ranking-induced Verifiable framework), и результаты оказались контринтуитивными: модель, обученная без верифицируемых ответов, иногда превосходит модель, обученную с ними.

Главное ограничение RLVR: ответ должен существовать

RLVR хорош для задач с бинарным или численным результатом:math-проблемы, тесты на программирование, уравнения с известным решением. Но реальный мир полон задач, где «правильность» — вопрос степени, а не факта. Оценить красоту текста, релевантность рекламного заголовка, соответствие tone of voice — всё это субъективно или определяется бизнес-метриками, которые нельзя вычислить напрямую.

Команда RiVER взяла 12 задач AtCoder Heuristic Contest — это соревнования по программированию оптимальных алгоритмов, где решение проверяется по заранее известным тестам, но сам «правильный» ответ не существует: выигрывает алгоритм с лучшим скором. На этих задачах нет ground truth, но есть объективная метрика — и это идеальный полигон для RiVER.

Две проблемы score-based обучения

Применить стандартный GRPO к задачам с непрерывным reward авторы не смогли с первой попытки. Обнаружились две систематические проблемы.

Scale dominance. Разные тестовые инстансы дают сильно отличающиеся абсолютные значения reward. На одном тесте алгоритм выдаёт 0.3, на другом 0.95. Если просто усреднять эти значения по батчу, масштаб доминирует над направлением улучшения: модель начинает фокусироваться на задачах с высоким absolute score, а не на качестве самого решения.

Frequency dominance. Если модель много раз сгенерировала посредственное решение某个 задачи, совокупный reward от этих попыток перевешивает редкие, но качественные. Модель конвергирует к «среднему по больнице», а не к «лучшему возможному».

Как RiVER решает обе проблемы

Фреймворк RiVER вводит калибровку reward shaping, основанную на ранговом сравнении внутри батча. Вместо абсолютного значения reward система работает с относительным рангом: решение A получает +1 если его score выше, чем у B из того же батча, и 0 в противном случае. Это отбрасывает масштаб и оставляет только информацию о качестве относительно конкурентов.

Параллельно RiVER усиливает top-ranked решения: система не просто сравнивает A и B, а назначает больший вес решениям, которые стабильно оказываются в верхних квартилях. Это решает frequency dominance — модель помнит о хороших решениях даже если они редки.

При этом RiVER сохраняет bounded feedback для всех валидных решений: даже если решение не в топе, оно получает небольшой положительный сигнал, если его approach в принципе рабочий. Модель не карается за «почти правильный» ответ, только за откровенно плохие.

Числа: Qwen3-8B +8.9%, GLM-Z1-9B +9.4%

На AtCoder Heuristic Contest задачах RiVER показал уверенные результаты. Qwen3-8B вырос на 8.9% в рейтинге ALE-Bench, GLM-Z1-9B-0414 — на 9.4%. Это при том, что модель обучалась исключительно на score-based задачах без единого примера с «правильным» ответом.

Самое интересное — трансфер на задачи с точным ответом. RiVER-чекипоинты были проверены на LiveCodeBench и USACO (эти бенчмарки имеют объективно правильные решения). Обученные только на continuous reward без ground truth модели показали среднее улучшение 2.4% на LiveCodeBench и 3.5% на USACO. Бейслайны, обученные на сырых абсолютных значениях reward, тоже росли на ALE-Bench, но проваливались на задачах с точным ответом. Калиброванный reward shaping RiVER, оказывается, создаёт более обобщающиеся представления —不是因为 модель запоминает specific solutions, а потому что она учится различать качество.

Почему это важно для индустрии

Большинство реальных задач в продакшене — это не LeetCode. A/B-тесты заголовков, оптимизация под engagement-метрики, персонализация рекомендаций, генерация текста под tone of voice — всё это требует обучения на сигнале, а не на эталоне. RiVER показывает, что такой подход работает и масштабируется на задачи, где до сих пор приходилось полагаться на humanos-in-the-loop или грубое rule-based ранжирование.

Практический вывод: если у вас есть задача с метрикой (клики, конверсия, score на тесте), но без «правильного» ответа, RiVER — это способ обучить модель оптимизировать эту метрику напрямую. Без разметки, без чек-листов, без человеческой оценки для каждого примера.

Часто задаваемые вопросы

Почему RiVER лучше, чем просто максимизировать абсолютный reward?

Абсолютный reward несёт информацию о сложности задачи, а не о качестве решения. Две задачи: в одной сложный алгоритм даёт 0.3, в другой тривиальный — 0.95. Максимизация среднего reward поощряет фокус на лёгких задачах. Ранговая система RiVER нейтральна к масштабу: +1 за лучшее решение независимо от абсолютного значения.

Тренировка без ground truth — это не supervised?

Этоself-supervised RL. Модель получает сигнал от среды (execution feedback), но не от эксперта. В отличие от RLHF, где reward model обучается на human preference, RiVER полностью автономна — нужен только environment, способный выдать численный feedback.

Какие задачи подходят для RiVER?

Идеальный случай: задача с воспроизводимой метрикой, которая коррелирует с «правильностью» решения, но не имеет аналитического «правильного» ответа. AtCoder Heuristic, оптимизация под бизнес-метрики, генерация текста под engagement score, code synthesis с performance-тестами.

Итог

RiVER расширяет область применения RL-обучения LLM за пределы задач с верифицируемым ответом. Калиброванный reward shaping на основе рангового сравнения решает обе ключевые проблемы — scale и frequency dominance — и даёт устойчивое улучшение на задачах как с непрерывным, так и с дискретным reward. Для индустрии это практичный инструмент: если метрика есть, модель можно научить её оптимизировать, даже когда «правильного» ответа не существует.

← Все записи