TTPO: LLM учится на самом экзамене без правильных ответов
Представьте студента, который пришёл на олимпиаду по математике, не зная ни одного правильного ответа, и прямо во время экзамена стал решать лучше. Звучит как жульничество, но именно это делает TTPO (Test-Time Policy Optimization): метод из свежей статьи на arXiv (2608.27448), который дообучает языковую модель на самих тестовых задачах, без единой метки, и при этом обходит подходы, у которых правильные ответы есть.
Что такое test-time training
Test-time training (TTT) — это обучение модели прямо на тех задачах, которые ей предстоит решить. Вместо того чтобы заморозить веса после пост-тренировки, модель продолжает обновляться на тестовом наборе. Идея не новая, но для рассуждающих LLM она упиралась в фундаментальную проблему: все сильные методы пост-тренировки требуют правильных ответов.
RL с верифицируемыми наградами (RLVR) сверяет финальный ответ с эталоном и раздаёт один скаляр на всю последовательность. On-policy self-distillation (OPSD) идёт дальше и даёт потокенный сигнал: учитель, которому подсунули правильный ответ как привилегированный контекст, переоценивает собственные rollout'ы ученика токен за токеном. Уберите метки, и оба подхода разваливаются: награде не с чем сверяться, учителю не на что условляться.
Единственный доступный сигнал без меток — голосование большинства. Сэмплируем группу решений, берём самый частый ответ как псевдометку. Так работает TTRL: псевдометка становится бинарной наградой. Проблема в том, что на олимпиадных задачах толпа ошибается чаще, чем бывает права, а ошибочная награда подкрепляет ошибку.
Асимметрия ошибок: главный инсайт
Авторы замерили качество псевдометок на AIME 2026 с Qwen3-1.7B и получили удручающую цифру: голосование большинства неверно примерно для 85% задач. Наивная дистилляция на такой учитель отравляет каждый токен каждого rollout'а. Грубая скалярная награда вредит один раз на траекторию, а испорченный учитель вредит на каждой позиции.
Но дальше начинается интересное. Когда псевдометка неверна, около 79% rollout'ов, которые с ней не согласны, тоже неправы. То есть штраф за несогласие с большинством почти всегда бьёт по настоящей ошибке, независимо от того, верна ли сама псевдометка. А вот награда за согласие такой устойчивостью не обладает: если большинство ошиблось, дистилляция тянет модель к чужой ошибке.
Это та же логика, что в negative learning для зашумлённых меток: утверждение «это точно неправильный ответ» остаётся надёжным даже тогда, когда утверждение «это правильный ответ» уже нет. Авторы прямо ссылаются на эту линию работ (Kim et al., 2019) как на теоретическую мотивацию.
Как устроен TTPO
Метод разводит два типа сигнала по разным веткам, применяя каждый там, где он надёжен.
Для rollout'ов, согласных с псевдометкой, работает ветка OPSD: учитель, условленный на ответ большинства, потокенно дистиллирует ученика через forward KL. Здесь ошибка псевдометки тоже не смертельна. Учитель условлен на ответ, который модель выдала сама в режиме размышлений, так что даже неверная дистилляция переносит стиль рассуждения из thinking-режима в обычный, а не чужую бессмыслицу.
Для несогласных rollout'ов работает ветка GRPO: бинарная награда и групповые advantage'ы штрафуют отклонение от большинства. Этой ветке не нужно знать содержание псевдометки вообще, достаточно факта «ответ не из кластера большинства», а это утверждение верно для подавляющего большинства негативных примеров.
Поверх обеих веток работает селекция на уровне токенов. В ветке дистилляции веса вычисляются через Soft-OR двух сигналов: энтропии ученика и расхождения ученика с учителем. Позиции, где ученик уже уверен и согласен с учителем, почти обнуляются, потому что учить там нечего. Высокий вес получает токен, где ученик либо неуверен, либо уверенно ошибается. В ветке RL штраф маскируется так, чтобы бить только по уверенным ошибкам, которые и привели к провалу, а не по всем токенам неудачной траектории подряд. Это решает известную проблему ложных штрафов: в стандартном GRPO положительные градиенты компенсируют ошибочные штрафы на локально верных токенах, а в асимметричной схеме TTPO этой компенсации нет, поэтому маскирование критично.
Почему прежние подходы провалились
До TTPO исследователи уже пробовали подставить псевдометку вместо ground truth в OPSD, и оба варианта оказались хрупкими. Первый: дистиллировать все rollout'ы на учителя, условленного псевдометкой. При 85% ошибочных меток это означает, что учитель в восьми случаях из десяти несёт неверный ответ, и ошибка распространяется на каждый токен каждой траектории. Второй: дистиллировать только несогласные rollout'ы, подтягивая их к мнению большинства. Это ещё хуже: метод целенаправленно переписывает меньшинство под диктовку большинства, которое на сложных задачах обычно и есть источник ошибки.
Грубая скалярная награда, как в TTRL, страдает иначе. Она подкрепляет всю траекторию целиком, включая правильные промежуточные шаги в неверных решениях и неверные шаги в угаданных. Потокенный анализ показывает, что обучающий сигнал при этом размывается по тысячам позиций, большинство которых не нуждаются в коррекции.
Асимметричная конструкция TTPO минимизирует то, что авторы называют blast radius ошибки псевдометки. При чистой дистилляции на всех примерах испорченным оказывается весь батч. При асимметричной схеме напрямую от псевдометки зависит только небольшое множество согласных rollout'ов, а штрафная ветка вообще опирается лишь на факт несогласия.
Настройка эксперимента
Эксперименты шли на Qwen3-1.7B, 4B и 8B с LoRA-адаптерами на всех линейных слоях. Для каждой задачи сэмплировалась группа rollout'ов с максимальной длиной генерации 16 000 токенов, чтобы длинные цепочки рассуждений не обрезались до извлечения ответа. Из каждой группы в градиентное обновление шла половина позитивных и половина негативных примеров. Оценка на пяти олимпиадных бенчмарках: AIME 2025 и 2026, HMMT 2025 и 2026, BRUMO 2025. Метрика: Avg@12 при температуре 1.0, то есть среднее по двенадцати независимым генерациям на задачу.
Авторы рассматривали два сеттинга. В первом, OpenThoughts, модели тренируются на размеченных данных, но TTPO метки не видит: они нужны только бейзлайнам с ground truth. Во втором, чистый TTT, обучение идёт прямо на тестовых задачах вообще без аннотаций.
Цифры: маленькая модель догоняет вдвое большую
В сеттинге OpenThoughts TTPO, не видя ни одной метки, сравнялся или обошёл OPSD, который метки использует: 40.1 против 39.7 средней точности на 1.7B, 58.6 против 58.4 на 4B, 62.6 против 61.7 на 8B. Отдельно стоит подчеркнуть: Qwen3-4B с TTPO набрал 58.6 в среднем, ровно столько же, сколько базовый Qwen3-8B без обучения. Рецепт фактически подтягивает модель до уровня вдвое большей.
В чистом TTT-сеттинге картина ещё выразительнее. Qwen3-1.7B вырос с 38.0% до 45.2% средней точности, это +7.2 пункта против +2.2 у TTRL и +3.9 у OPSD-TTT (самодистилляция на собственный temperature-0 вывод). На 4B: с 57.4 до 61.1. На 8B: с 60.7 до 65.3, при этом TTRL дал 63.0, а OPSD-TTT 63.7. Разрыв с TTRL показывает цену плотного сигнала: бинарная награда на траекторию проигрывает потокенной дистилляции даже без меток.
Самый неожиданный результат ждёт в режиме без размышлений. Когда thinking-режим отключён, прирост от TTPO достигает от +25.2% до +36.4% в зависимости от масштаба, в несколько раз больше, чем даёт OPSD с правильными ответами. Дистилляция буквально вшивает манеру рассуждать в короткие ответы: модель учится сразу выдавать то, к чему раньше приходила длинной цепочкой.
Почему это важно за пределами математики
TTPO меняет экономику дообучения. Ground truth для сложных задач — дорогой ресурс: олимпиадную математику, медицинские кейсы, юридические заключения размечают эксперты, и их время стоит дорого. Метод показывает, что согласие модели с самой собой, правильно разложенное на согласие и несогласие, заменяет экспертную разметку без потери качества.
Второе следствие: самоэволюция на потоке. Поскольку псевдометки становятся точнее по мере роста модели, маршрутизация согласных и несогласных rollout'ов автоматически подстраивается под текущие возможности. Авторы называют это virtuous cycle: чем лучше модель, тем чище сигнал, тем быстрее рост. Маршрутизация по ground truth такого цикла не даёт, она статична.
Третий аспект практический. TTPO обучался всего 100 шагов против 500 у RL-базelines и при этом выиграл. Для инженеров это означает меньший счёт за compute при дообучении на собственных данных без разметки: логи поддержки, внутренние документы, кодовая база.
Часто задаваемые вопросы
Это не читерство, учиться на тестовых задачах?
В классическом ML — да, а в TTT-парадигме это и есть постановка задачи. Модель не получает ответов, только сами задачи, и улучшается через самосогласованность. Для честного сравнения авторы отдельно отчитываются на размеченных данных, где TTPO тоже выигрывает у методов с метками.
Почему штраф за несогласие надёжнее награды за согласие?
Потому что несогласие не зависит от содержания псевдометки. Если 79% несогласных rollout'ов неправы даже при неверном большинстве, штраф почти всегда попадает в цель. Награда же целиком опирается на ответ большинства, и при 85% ошибочных псевдометок систематически подкрепляет ошибку.
Чем TTPO отличается от TTRL?
TTRL использует псевдометку как единственную бинарную награду на всю траекторию: один скаляр, никакой потокенной структуры, а при ошибке большинства прямое подкрепление неверного ответа. TTPO добавляет плотную дистилляцию на согласных примерах, переносит штраф только на несогласные и взвешивает оба сигнала потокенно. На 1.7B разница: +7.2 пункта у TTPO против +2.2 у TTRL.
Сколько стоит такое дообучение по сравнению с обычным RL?
Заметно дешевле по шагам: TTPO обучался 100 шагов против 500 у GRPO и TTRL и при этом показал лучший пиковый результат. Основные затраты, как и везде в RLVR, уходят на сэмплирование группы rollout'ов на задачу, но метки и верификаторы не нужны вовсе.
Работает ли это за пределами математических бенчмарков?
Авторы проверяли кросс-задачное обобщение и сообщают о переносе между типами задач, но основная валидация — соревновательная математика, где ответы верифицируемы автоматически. Метод применим везде, где финальные ответы можно кластеризовать и посчитать большинство: код с тестами, структурированные извлечения, классификация. Для открытых генераций без чёткого ответа голосование придётся заменять другим агрегатором.
Итог
TTPO превращает главную слабость test-time training, ненадёжные псевдометки, в рабочий сигнал через асимметрию: дистиллировать согласных, штрафовать несогласных, взвешивать и маскировать на уровне токенов. Результат: модель без единой метки догоняет методы с полным доступом к ответам, а маленькая модель догоняет вдвое большую. Если вы строите пайплайны дообучения рассуждающих моделей, посмотрите на связку голосования большинства с потокенной селекцией: она уже сегодня стоит дешевле экспертной разметки.