Метод Never Give Up смягчает «эффект Матфея» в RL-обучении языковых моделей
Пост опирается на статью автора об RL-дообучении (обучении с подкреплением) языковых моделей и излагает её неформально, «как в докладе»; более техническое изложение автор оставляет статье на arXiv и коду на GitHub: ссылка на статью дана в блоке Citation в конце страницы, а ссылки на код нет.
Отправная точка, вопрос, что на самом деле показывает усреднённая метрика качества. На примере RL-обучения модели Olmo 3.1 RL-Zero Math автор берёт эталон AIME 2025 из 30 задач и делит их по сложности: «сложными» считаются задачи, которые исходная (до RL) модель не решает вовсе даже за 32 попытки, а оставшиеся делятся поровну на «средние» и «лёгкие». Начальная точность (pass@1) на этих трёх группах, 0%, 3,8% и 22,7% соответственно. Усреднённая кривая роста качества скрывала, что почти весь прирост даёт переход лёгких задач из «частично решаемых» в «почти всегда решаемые», тогда как самые сложные задачи почти не сдвигаются. Ту же проверку автор проводит для кода и агентных задач, на открытых проектах Deepcoder и DeepSWE, которые публикуют свои модели и логи: бенчмарк LiveCodeBench v6 делится на уровни сложности с помощью исходной модели Deepseek-R1-Distilled-Qwen-14B, а для SWE-Bench используются уже готовые метки сложности задач. Вывод тот же: прирост от RL пропорционален тому, насколько лёгкой была задача для модели изначально.
Этот перекос автор называет «эффектом Матфея» в RL для языковых моделей, по аналогии с одноимённым явлением в сетевой науке и экономике («богатые богатеют», понятие восходит к работе социолога Мертона 1968 года): RL улучшает результат на задаче пропорционально исходной компетентности модели в ней, из-за чего лёгкие задачи становятся ещё легче, а трудные часто остаются трудными.
Дальше пост разбирает причину эффекта на примере популярного метода GRPO. Если среди k сэмплов-ответов модели на промпт нет ни одного правильного, обучающего сигнала по этому промпту не возникает, само это явление автор вслед за Xiong и др. (2025) называет signal loss (потеря сигнала), а напрашивающееся решение, увеличить k. Автор проверяет это на модели Qwen 2.5 0.5B Instruct, обучаемой GRPO на датасете GSM8k platinum: задачи делятся по начальной pass@1 на лёгкие (25%), средние (10%), трудные (5%) и очень трудные (0%), а k перебирается по значениям 4, 8, 16 и 32 при фиксированном размере батча. Неожиданно лучшим оказывается наименьшее k=4. Причина, в устройстве обучающего батча: промпты, где все k ответов правильные или все неправильные, отфильтровываются, и в батче остаются только «промежуточные» случаи. Большее k действительно чаще находит редкое верное решение трудной задачи, но так же чаще находит и редкое неверное решение уже, по сути, решённой лёгкой задачи, из-за чего она с большей вероятностью останется в батче и продолжит впустую расходовать вычисления: чтобы отфильтровать уже решённую лёгкую задачу, при k=4 достаточно 4 верных ответов из 4, а при k=32 нужно 32 из 32. Примерно на шаге 200 обучения происходит перелом: до него больший k выгоднее (находит решения трудных задач), после, выгоднее меньший k (не тратит вычисления на пересдачу лёгких). В использованной автором асинхронной схеме RL (со ссылкой на собственную более раннюю работу об Async RLHF и на PipelineRL) вычисления, сэкономленные на лёгких задачах, автоматически уходят на более трудные, отсюда вывод: дело не только в нехватке сэмплов на трудных задачах (signal loss), но и в перерасходе вычислений на лёгких; это автор называет signal efficiency (эффективность использования сигнала).
Из этого вывода рождается метод Never Give Up (NGU, «никогда не сдавайся»). Сэмплирование начинается с небольшого k; если промпт решён в пределах первых k ответов, на нём сразу обучаются и быстро его отфильтровывают; если все k ответов неверны, с вероятностью p модель «не сдаётся» и запрашивает ещё k ответов на тот же промпт, накапливая старые попытки, а когда задача наконец решена, обучение идёт сразу на всех накопленных k × (число раундов) ответах. Число сэмплов, которое в итоге понадобится на нерешаемый промпт, распределено геометрически и в среднем равно k / (1 − p). В отличие от заранее заданного порядка усложнения задач (curriculum learning), NGU подстраивается на ходу, поскольку фактическая трудность задачи для модели меняется в процессе обучения. На GSM8k конфигурация k=4 с NGU при p=0,9 превосходит по качеству GRPO с любым из перебранных k, особенно заметно на подмножестве самых трудных задач, сочетая эффект большого k в начале обучения и малого k к его концу.
Асинхронная схема порождает отдельную техническую проблему, устаревание сэмплов: пока идут повторные раунды NGU, первые k ответов «стареют», а устаревшие отрицательные примеры (по прежним результатам, включая работу Le Roux и др., 2025) особенно вредны для обучения. Решение, отсекать ответы по возрасту (порог T=4 раунда) и отдельно пересчитывать базовую линию GRPO для отфильтрованных по возрасту ответов. На игрушечном примере, 4 устаревших отрицательных ответа, 3 новых отрицательных и 1 новый положительный, автор сравнивает три варианта: игнорировать отфильтрованные ответы при расчёте базовой линии, оставить базовую линию ненулевой без пересчёта, либо «закрепить» вклад положительного ответа и домножить отрицательные на 7/3, чтобы суммарная награда группы осталась нулевой.
На более крупном масштабе, DeepScaler на базовой модели Qwen 3 4B, NGU поверх сильного базового GRPO с k=16 даёт дополнительный прирост, особенно на самых трудных подмножествах эталонов AIME и BRUMO 2025: эффект Матфея сохраняется, но смягчается, почти не теряя в качестве на лёгких задачах. Для RL в программировании автор берёт бенчмарк Manufactoria (по методике Sun и др., 2025), где, в отличие от математики с бинарным вердиктом «верно/неверно», у одной задачи много тестов разной сложности. Обычный GRPO сначала улучшает результат, но затем застревает: он раз за разом «пересдаёт» частично решённые задачи средней сложности, почти не продвигаясь, лёгкие тесты почти полностью решены, а трудные буксуют. Если первые k ответов модели проходят, скажем, 7 тестов из 12, NGU не примет следующую партию ответов, пока она не пройдёт больше 7 из 12 тестов, это раз за разом подталкивает модель улучшать результат на одной и той же задаче, пока GRPO с NGU не пройдёт все тесты полностью, тогда как обычный GRPO на этом месте останавливается.
Отдельно автор проверяет альтернативное объяснение эффекта Матфея, через т. н. primacy bias (эффект первичности) в глубоком RL (Nikishin, Schwarzer, D'Oro и др., 2022): там ранние неудачные сэмплы могут «сломать» дальнейшее обучение из-за потери пластичности сети. Чтобы проверить, вызван ли эффект Матфея именно потерей пластичности, автор берёт чекпойнт Manufactoria на 6000-м шаге обучения, который к этому моменту не улучшался как минимум 3000 шагов, и дообучает его двумя способами: либо переходит на единую награду «все тесты пройдены» вместо награды за отдельный тест, либо оставляет награду по тестам и просто добавляет NGU. Оба варианта восстанавливают сильное качество, и это, по выводу автора, говорит, что потеря пластичности не главная причина эффекта Матфея: модели в целом способны оправиться после серии неудачных ранних сэмплов.
Автор отдельно оговаривает ограничение метода: если задачи в наборе в основном очень трудные, NGU, скорее всего, не даст выигрыша, а сама схема «сэмплировать, подождать, досэмплировать» занимает на группу ответов больше времени, чем сразу взять k / (1 − p) сэмплов, из-за чего ранние данные сильнее отстают от текущей политики модели, сигнал обучения слабее, а обучение идёт медленнее. Если же подходящее k для своих данных уже известно, NGU, по словам автора, вероятно, будет эффективен. В заключении автор подытоживает: стандартное RL-обучение даёт непропорционально слабый результат на самых трудных задачах, а значит, простое усреднённое число может быть недостаточным индикатором качества модели, стоит смотреть на более подробный сигнал по подгруппам задач. Метод Never Give Up перераспределяет вычисления, снижая расходы на уже решённые лёгкие задачи в пользу трудных, и даёт заметный прирост именно на сложных задачах; дальнейшую работу автор предлагает вести на более сложных многошаговых агентных средах.
Ключевые факты
- На эталоне AIME 2025 (30 задач, RL-обучение модели Olmo 3.1 RL-Zero Math) начальная точность pass@1, 0% на сложных, 3,8% на средних и 22,7% на лёгких задачах, а почти весь прирост от RL достаётся лёгким и средним, тогда как сложные почти не сдвигаются.
- Этот перекос назван «эффектом Матфея» в RL для языковых моделей: обучение с подкреплением улучшает результат пропорционально исходной компетентности модели в задаче.
- На GSM8k platinum (Qwen 2.5 0.5B Instruct, GRPO) наименьшее k=4 после ~200-го шага обучения обходит по качеству k=8/16/32, большее k чаще впустую тратится на пересдачу уже решённых лёгких задач (для отсева нужно 32 верных ответа из 32 против 4 из 4).
- Предложен метод Never Give Up (NGU): начинать с малого k и с вероятностью p досэмплировать нерешённый промпт, пока он не будет решён; конфигурация k=4 с NGU (p=0,9) превосходит по качеству любое k стандартного GRPO, особенно на самых трудных задачах.
- На увеличенном масштабе (DeepScaler, Qwen 3 4B, GRPO k=16) и на бенчмарке кода Manufactoria NGU даёт дополнительный прирост именно на трудных подзадачах; отдельная проверка показывает, что причина эффекта Матфея, не потеря пластичности сети: модели способны восстанавливаться после серии неудачных ранних сэмплов.
Почему это важно
RL-дообучение (reinforcement learning, обучение с подкреплением), основной способ, которым современные языковые модели учат решать сложные пошаговые задачи после базового предобучения. Пост показывает слепую зону в том, как это обучение обычно оценивают: усреднённая кривая качества по бенчмарку растёт, но рост почти целиком объясняется тем, что и так частично решаемые лёгкие и средние задачи начинают решаться ещё лучше, а самые трудные, ровно те, ради которых RL и затевают, почти не сдвигаются. Автор показывает на нескольких независимых сетапах (математика на двух масштабах, код), что это не случайность одного запуска, а системный эффект стандартных методов вроде GRPO, и предлагает относительно небольшое изменение схемы сэмплирования, которое явно возвращает часть прогресса именно на трудных задачах, а не только на лёгких.
Кому это важно
Прежде всего, командам и инженерам, которые сами обучают языковые модели через RL/GRPO (в том числе в асинхронных пайплайнах) и подбирают гиперпараметры вроде числа сэмплов k на промпт: пост даёт конкретный рецепт, проверенный на небольших моделях (Qwen 2.5 0.5B, Qwen 3 4B). Также, исследователям, которые оценивают качество моделей: пост, конкретный пример того, почему одно усреднённое число по бенчмарку может маскировать отсутствие прогресса на самых сложных случаях, и довод в пользу более дробных, по подгруппам сложности, метрик.
Как это применить
Практический рецепт из поста: в асинхронной RL-схеме сэмплировать не фиксированное большое k на каждый промпт, а начинать с малого k и, если все ответы неверны, с вероятностью p (в экспериментах поста, 0,9) досэмплировать ещё k ответов на тот же промпт, накапливая попытки, пока задача не решится или сэмплы не устареют (порог возраста T=4 раунда в экспериментах поста). К этому добавляется пересчёт базовой линии GRPO для отфильтрованных по возрасту ответов (в примере поста, домножение отрицательных значений награды на 7/3). Метод не требует новой функции потерь или архитектуры, это изменение стратегии сэмплирования, применимое поверх уже существующего асинхронного GRPO-пайплайна; код обещан на GitHub, но ссылки на него в тексте поста нет.
Можно ли доверять
Пост опирается на статью того же автора и проверяет вывод на нескольких независимых сетапах, небольшая математика (Qwen 2.5 0.5B на GSM8k platinum), математика большего масштаба (Qwen 3 4B на DeepScaler, эталоны AIME и BRUMO 2025) и код (Manufactoria), с одинаковым результатом на каждом, а объяснения опираются на именованные источники (Xiong и др., 2025; Le Roux и др., 2025; Nikishin, Schwarzer, D'Oro и др., 2022; Sun и др., 2025) и собственные более ранние работы автора об асинхронном RL. Это признаки добросовестного технического разбора, а не рекламного анонса. Ограничения: это авторский пересказ собственной статьи, а не независимая проверка. Пост подписан именем автора (Michael Noukhovitch) и датирован (15 сентября 2026 года), а в блоке Citation в конце страницы даны полный список соавторов (Noukhovitch, Ivison, Lambert, Courville) и ссылка на статью на arXiv (arxiv.org/abs/2609.13443); должность и аффилиация автора нигде не указаны. Обсуждения на Hacker News к моменту сбора ещё не было (0 комментариев при 64 очках), внешней проверки сообществом пока нет.
Риски и подводные камни
Автор сам называет ограничение: если задачи в наборе в основном очень трудные (мало «средних» случаев), NGU, скорее всего, не даст выигрыша, а схема «сэмплировать, подождать, досэмплировать» занимает на группу ответов больше времени, чем сразу взять k / (1 − p) сэмплов, из-за этого ранние данные сильнее отстают от текущей политики модели, сигнал обучения слабее, а обучение идёт медленнее. Отдельно стоит иметь в виду масштаб проверки: диапазон 0,5, 4 млрд параметров верен только для двух обучаемых в экспериментах поста моделей (Qwen 2.5 0.5B и Qwen 3 4B), размер модели в RL-прогоне Olmo 3.1 RL-Zero Math источник не указывает, а для разбиения LiveCodeBench v6 по сложности взята модель Deepseek-R1-Distilled-Qwen-14B на 14 млрд параметров; бенчмарки, GSM8k, AIME, DeepScaler, Manufactoria; перенос результата на обучение куда более крупных моделей современного уровня в самом посте не показан.