Представьте, что вы решаете сложную математическую задачу и где-то на середине пути у вас в голове промелькнул правильный ответ. Но вместо того чтобы остановиться, вы продолжаете «думать» и в итоге приходите к неверному результату. Звучит знакомо? Оказывается, современные диффузионные языковые модели ведут себя точно так же.
Что такое диффузионные модели и чем они отличаются от обычных
Обычные языковые модели вроде 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%
Результаты экспериментов по повышению точности ИИ
Когда методы не работают
Честности ради стоит отметить ограничения. Если модель изначально почти никогда не генерирует правильные промежуточные ответы (как в случае с судоку), то и извлечь из временной динамики особо нечего.
Также метод обучения с подкреплением требует, чтобы модель уже имела базовый уровень качества – иначе не из чего формировать осмысленный сигнал награды.
Когда предложенные методы для ИИ не работают
Выводы и перспективы
Это исследование показывает важную вещь: то, что мы воспринимаем как «шум» или «недостаток» модели, может оказаться ценным источником информации. Временные колебания в диффузионных моделях – не баг, а фича, которую можно и нужно использовать.
Более того, предложенные методы работают без дополнительных вычислительных затрат (в случае голосования) или с минимальной зависимостью от размеченных данных (в случае обучения с подкреплением).
Возможно, ключ к созданию более умных ИИ-систем лежит не только в увеличении размера моделей или количества данных, но и в более тонком понимании того, как эти системы «думают» во времени. В конце концов, и люди редко приходят к правильному ответу с первой попытки – наше мышление тоже полно колебаний, сомнений и переосмыслений.
Главное – научиться извлекать пользу из этого естественного процесса.