Журнал · Rit.work

Почему локальная ошибка не находит важные шаги диффузионной модели

Same-State Causal Restoration измеряет, как возврат исходного FFN меняет дальнейшую генерацию, и помогает выбрать короткое окно восстановления после сжатия модели.

Rit.work
Студия разработки
30 сентября 2026 г.3 мин чтения

Материал подготовлен автоматически по первоисточникам: ссылки на них — в конце статьи.

У диффузионной языковой модели научились находить короткий участок генерации, где возврат исходных полносвязных блоков FFN почти устраняет ущерб от сжатия. Препринт Shaurya Omar из IIT Roorkee не рецензирован, а все числа получил сам автор: в агрессивно сжатой LLaDA восстановление четырёх переходов вернуло 89,9% потерянной точности при расчётной экономии 36,8% операций умножения-сложения (MAC). Это предлагает новый критерий выбора вычислений: смотреть не на размер локальной ошибки, а на то, как пропущенный блок меняет всю оставшуюся генерацию.

Почему одинаковый вход отделяет ошибку блока от ошибки траектории

Диффузионная языковая модель генерирует текст через последовательное уточнение частично заполненного ответа. Если заменить часть FFN более дешёвыми операторами, состояние модели меняется, а все следующие переходы уже получают другой вход.

Обычное сравнение исходной и сжатой модели смешивает две причины расхождения. Отличаются и сами FFN, и данные, на которых они работают после нескольких переходов. Поэтому большая локальная ошибка ещё не означает, что удалённое вычисление заметно повлияет на готовый ответ.

Метод Same-State Causal Restoration, или SSR, начинает со снимка состояния, которого достигла сжатая модель. Из него запускают две ветви. Первая продолжает работать со сжатыми FFN, а вторая на выбранных переходах подставляет исходные FFN, причём каждый блок получает тот же текущий вход своей ветви.

Скрытое состояние из исходного запуска не копируют. После подстановки траектории могут расходиться — именно это расхождение и измеряет SSR. Такой опыт отделяет эффект возвращённой операции от сдвига входа, который уже накопился между независимыми запусками.

Для сравнения автор использовал NMSE — нормированную среднеквадратичную ошибку между выходами исходного и сжатого FFN. Она показывает величину расхождения в текущей точке, но ничего не говорит о том, усилит ли его дальнейшее уточнение текста или, наоборот, погасит.

Окно выбирают без правильных ответов задачи

SSR нужен не только для анализа отдельного перехода. Метод перебирает возможные начала окна на исходной подборке, сравнивает продолжение сжатой ветви с продолжением исходной модели из того же снимка и выбирает один общий участок восстановления.

Правильные ответы задач при калибровке не используются. После выбора окно фиксируют: на проверочных запросах нет нового поиска, подгонки под запрос или сравнения с исходной ветвью. Для честного сопоставления базовый вариант по NMSE получает окно той же длины и тот же расчётный бюджет.

На агрессивно сжатой LLaDA точность выросла с 21,9% до 54,9%. Окно SSR обошло равное по бюджету окно, выбранное по NMSE, на 5,05 процентного пункта. На Dream эффект оказался другим: совпадение итоговой последовательности с исходной моделью улучшилось на 1,68 процентного пункта, но прирост точности задачи остался в пределах погрешности.

Это различие отделяет восстановление поведения модели от исправления ответа. Траектория может приблизиться к исходной, но не пересечь границу между неправильным и правильным вариантом. В умеренно сжатой LLaDA SSR и NMSE также дали одинаковую точность, поэтому преимущество нового критерия проявилось не во всех режимах.

Что менять в плане сжатия модели

Работа меняет план для команд, которые сокращают вычисления внутри итеративной генерации и выбирают, где вернуть полный FFN. Локальную ошибку не стоит считать достаточной функцией оптимизации: два окна с близким бюджетом могут по-разному влиять на оставшуюся траекторию и итоговую валидность ответа.

Практический вариант — использовать SSR как офлайн-диагностику. Команда измеряет последствия пропущенных вычислений на калибровочной подборке, фиксирует общее окно и исполняет исходные FFN только в нём. Отдельный запуск исходной модели после калибровки не требуется.

Это не готовый динамический маршрутизатор. Проверенные признаки состояния модели плохо переносились между наборами данных, поэтому работа не обосновывает выбор окна отдельно для каждого запроса. Исходные веса FFN также остаются в памяти: метод сокращает число исполняемых операций, а не размер модели.

Проверка охватывает LLaDA-8B-Instruct и Dream-v0-Instruct-7B, одну схему структурного уменьшения ширины FFN и 297 запросов, преимущественно с выбором ответа. Расчёт экономии основан на числе MAC, а не на замерах задержки или памяти. Поэтому перед изменением инфраструктурного бюджета результат нужно воспроизвести на своём компрессоре, длине генерации и оборудовании.

Главный вывод применим уже на этапе экспериментов: качество сжатия итеративной модели нельзя оценивать только по тому, насколько точно дешёвый блок повторяет исходный. Полезнее измерять, что возвращённое вычисление меняет после себя, а затем отдельно проверять, исправляет ли это конечную задачу.

Источники

Пауза в чтении

Похоже на вашу задачу?

Расскажите, что собираете. За полчаса разложим на этапы и назовём сроки — это бесплатно и ни к чему не обязывает.

Rit.work

Студия разработки

Собираем мобильные приложения и помогаем командам получать от AI реальную пользу. Основатель и команда, работаем удалённо — с клиентами в России и за рубежом.

← Ко всем материалам
Понравилось? Обсудим вашу задачу