Фокус на этике
Доступность
Культурная адаптация
Представьте, что вы решаете сложную математическую задачу и где-то на середине пути у вас в голове промелькнул правильный ответ. Но вместо того чтобы остановиться, вы продолжаете «думать» и в итоге приходите к неверному результату. Звучит знакомо? Оказывается, современные диффузионные языковые модели ведут себя точно так же.
Что такое диффузионные модели и чем они отличаются от обычных
Обычные языковые модели вроде ChatGPT работают как опытный писатель – пишут текст слово за словом, слева направо. Диффузионные модели больше похожи на художника, который сначала набрасывает общие контуры картины, а потом постепенно прорисовывает детали.
Технически это выглядит так: модель берёт «зашумленный» текст (где многие слова заменены специальными масками) и на каждом шаге пытается угадать, что должно стоять вместо масок. После каждого предположения она оставляет те слова, в которых уверена больше всего, а остальные снова прячет под маски и повторяет процесс.
Казалось бы, логично использовать только финальный результат – ведь модель дольше всего «думала» именно над ним. Но исследования показали удивительную вещь: правильный ответ часто появляется где-то в середине процесса, а потом... исчезает.
Феномен «временных колебаний»
Учёные назвали это явление «временными колебаниями» (temporal fluctuations). Чтобы понять масштаб проблемы, они ввели специальную метрику EverPass@1 – она показывает, появлялся ли правильный ответ хотя бы на одном из промежуточных шагов.
Результаты оказались поразительными: на многих задачах разрыв между финальной точностью модели и показателем EverPass@1 превышал 10%. Иными словами, модель «знала» правильный ответ, но почему-то от него отказывалась.
Это немного напоминает ситуацию с Дейви Джонсом из «Пиратов Карибского моря» – у него есть вся нужная информация в его мистическом органе, но он не всегда может правильно ею воспользоваться в нужный момент.
Почему так происходит
Углубившись в анализ, исследователи обнаружили интересные закономерности:
На простых задачах правильные ответы появляются рано и обычно сохраняются до конца. Модель быстро «схватывает» суть и не сомневается.
На сложных задачах всё сложнее. Верный ответ может появиться в середине процесса, но потом модель начинает «переосмысливать» его и в итоге приходит к неверному выводу.
Также выяснилось, что неправильные ответы обычно сопровождаются более высокой «энтропией токенов» – грубо говоря, модель больше сомневается в своих предположениях. А вот правильные решения демонстрируют более стабильное поведение на всех временных шагах.
Два способа решения проблемы
Понимая природу проблемы, исследователи предложили два элегантных решения.
Метод 1: Temporal Self-Consistency Voting
Первый подход не требует никакого дополнительного обучения модели. Идея проста: вместо того чтобы брать только финальный ответ, давайте посмотрим на все промежуточные варианты и выберем тот, который встречается чаще всего.
Но есть нюанс – не все шаги равнозначны. Ранние предположения часто бывают слишком «сырыми», поэтому их вес в итоговом голосовании уменьшается. Лучше всего себя показала экспоненциальная схема взвешивания, при которой более поздние шаги имеют больший вес, но и ранние не игнорируются полностью.
Метод 2: Temporal Consistency Reinforcement
Второй подход более радикальный – он обучает модель быть более последовательной в своих предсказаниях. Для этого используется специальная метрика TSE (Temporal Semantic Entropy) – она измеряет, насколько сильно «прыгает» смысл ответа от шага к шагу.
Модель получает награду за низкий TSE, то есть за стабильность предсказаний во времени. Если у неё есть доступ к правильным ответам, TSE можно комбинировать с обычной наградой за точность, что даёт ещё лучшие результаты.
Результаты экспериментов
Оба метода показали впечатляющую эффективность на различных математических задачах:
Temporal Self-Consistency Voting дал прирост точности до 4,7% на сложном датасете Countdown и до 2,4% на математических задачах MATH500.
Temporal Consistency Reinforcement показал ещё более впечатляющие результаты. Даже используя только отрицательный TSE (без доступа к правильным ответам), метод улучшил результаты на 24,7% на Countdown по сравнению с базовой моделью.
А при комбинировании с наградой за точность приросты составили:
- GSM8K: +2,0%
- MATH500: +4,3%
- SVAMP: +6,6%
- Countdown: +25,3%
Когда методы не работают
Честности ради стоит отметить ограничения. Если модель изначально почти никогда не генерирует правильные промежуточные ответы (как в случае с судоку), то и извлечь из временной динамики особо нечего.
Также метод обучения с подкреплением требует, чтобы модель уже имела базовый уровень качества – иначе не из чего формировать осмысленный сигнал награды.
Выводы и перспективы
Это исследование показывает важную вещь: то, что мы воспринимаем как «шум» или «недостаток» модели, может оказаться ценным источником информации. Временные колебания в диффузионных моделях – не баг, а фича, которую можно и нужно использовать.
Более того, предложенные методы работают без дополнительных вычислительных затрат (в случае голосования) или с минимальной зависимостью от размеченных данных (в случае обучения с подкреплением).
Возможно, ключ к созданию более умных ИИ-систем лежит не только в увеличении размера моделей или количества данных, но и в более тонком понимании того, как эти системы «думают» во времени. В конце концов, и люди редко приходят к правильному ответу с первой попытки – наше мышление тоже полно колебаний, сомнений и переосмыслений.
Главное – научиться извлекать пользу из этого естественного процесса.