Журнал · Rit.work

SGDR разделяет смысл и позицию в разреженном внимании

SGDR выбирает блоки длинного контекста без обучения маршрутизатора и поиска по токенам, сохраняя близкую к полному вниманию точность.

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

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

Маршрутизацию разреженного внимания удалось свести к выбору блоков без отдельного обучения и поиска по отдельным токенам. Команда Tsinghua University и Tongyi Lab с коллегами показала в препринте, который не прошёл рецензирование и где все числа получили сами авторы, что SGDR на контексте 128K ускоряет этап внимания в 5,03 раза относительно FlashAttn. Подход может сократить задержку при обработке длинного запроса, не меняя веса основной модели.

Почему усреднение после RoPE портит маршрут

Полное внимание сопоставляет каждый токен со всеми предыдущими, поэтому объём вычислений растёт квадратично вместе с контекстом. Блочно-разреженное внимание делит последовательность на непрерывные фрагменты, выбирает для каждого нового блока несколько подходящих старых блоков и считает точное внимание только внутри них.

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

Проблема возникает из-за вращательного позиционного кодирования (RoPE). Оно кодирует позицию поворотом частей вектора: соседние токены получают разные фазы, особенно в высокочастотных компонентах. Когда маршрутизатор усредняет уже повёрнутые векторы, эти компоненты частично гасят друг друга. Блок сохраняет общий смысл, но хуже передаёт близость позиций и локальную структуру.

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

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

Такое упрощение опирается на предположение, что локальные отклонения внутри блоков при усреднении ведут себя достаточно стабильно. Геометрический профиль компенсирует структуру, которую одно смысловое среднее восстановить не может. В опытах удаление этого профиля сильнее всего вредило длинным последовательностям.

Выигрыш проявился на самой длинной обработке

SGDR проверяли на Llama-3.1-8B-Instruct, Qwen3-8B и Qwen3-VL-8B-Instruct с контекстами от 4K до 128K. Набор задач включал поиск фактов в RULER, работу с документами в LongBench, предсказание длинного текста в PG19 и рассуждение по видео в VideoMME и LongVideoBench. Сравнение охватывало полное внимание FlashAttention-2 и пять разреженных методов без обучения.

На одном GPU H100 маршрутизация занимала меньше 3,4 мс на всех проверенных длинах. Это принципиальная часть результата: у методов с поиском по токенам служебная работа растёт вместе с контекстом и может съесть выигрыш от разреженных вычислений.

Точность при этом не совпадала с полным вниманием во всех условиях. На RULER с Qwen отставание на максимальной длине осталось меньше одного процентного пункта, а с Llama достигло 4,2 пункта. На LongBench SGDR оказался близок к другому чисто блочному маршрутизатору Prism, но не превзошёл лучший метод с дополнительным эвристическим поиском.

На PG19 средняя перплексия — показатель ошибки при предсказании следующего токена — совпала с полным вниманием до сотых. В видеозадачах разница также осталась в пределах долей процентного пункта. Результат не сводится к одному сценарию поиска иголки в стоге: метод проверили на генерации, документах и видео.

Когда SGDR стоит включать в план продукта

Работа меняет планы команд, у которых длинная начальная обработка уже ограничивает задержку или стоимость. SGDR не требует дообучать модель и не добавляет отдельный маршрутизатор, поэтому его можно оценить как замену ядра внимания, а не как новый цикл обучения.

Интеграция всё же не сводится к переключателю конфигурации. Нужен доступ к векторам до применения RoPE, заранее построенный профиль и ядро, которое исполняет блочно-разреженное внимание. Авторы написали собственные ядра на Triton; без сопоставимой реализации теоретически дешёвая оценка блоков не гарантирует ускорения на GPU.

Профиль строят отдельно для выбранной модели: из корпуса извлекают внутренние представления каждого слоя и оценивают поправки для разных расстояний. Для текста использовали Paul Graham Essays, а для видео — материалы VideoChatGPT. Это не обучение весов, но профиль становится новым артефактом сборки, который нужно хранить и проверять вместе с моделью.

Область применения очерчена устройством метода. SGDR рассчитан на стандартное самовнимание с Softmax и на RoPE, включая проверенные в работе варианты. Он напрямую не переносится на линейное внимание, архитектуры без матрицы Softmax и модели с абсолютными обучаемыми позиционными векторами.

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

Источники

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

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

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

Rit.work

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

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

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