Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Sliding Window Attention

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

Внимание в скользящем окне (SWA) ограничивает множество токенов, которые может учитывать каждый токен: в причинно-следственной языковой модели это последние w токенов, а не вся последовательность, как при полном самовнимании. В результате объём вычислений для внимания растёт линейно, а не квадратично относительно длины последовательности, и генерирующей модели достаточно хранить ключи и значения последних w токенов в KV-кэше. В 2020 году Longformer сделала скользящее окно основой своего механизма внимания. В 2023 году Mistral AI перенесла этот подход в широко используемую открытую большую языковую модель (LLM) Mistral 7B с окном в 4 096 токенов.

Как окно расширяется с глубиной#

Один слой SWA видит только w токенов, но слои Transformer выстраиваются друг за другом. На втором слое токен считывает скрытые состояния, каждое из которых уже суммирует w токенов первого слоя, поэтому на каждом последующем слое информация может проходить примерно на w − 1 позиций дальше. Похожим образом расширяется рецептивное поле свёрточной нейронной сети (CNN) при добавлении свёрточных слоёв. В PyTorch окно задаётся булевой маской внимания, а умножение этой маски на саму себя показывает, как далеко распространяется информация:

import torch

seq_len, window = 16, 4
pos = torch.arange(seq_len)
offset = pos[:, None] - pos[None, :]

# Causal sliding window: each token attends to itself and the window - 1 tokens before it
mask = (offset >= 0) & (offset < window)
print(f"Scores per layer: {mask.sum().item()} with the window, {(offset >= 0).sum().item()} with full causal attention")

# Stacking layers widens the reach: each layer adds window - 1 more tokens of history
reach = mask
for layer in range(1, 5):
    print(f"Layer {layer}: last token draws on {reach[-1].sum().item()} tokens")
    reach = (mask.int() @ reach.int()) > 0

Для 16 токенов в каждом слое окно вычисляет 58 оценок вместо 136, а область охвата последнего токена увеличивается на 3 токена за слой: с 4 до 7, 10 и 13. Ту же маску можно передать в PyTorch как attn_mask функции scaled_dot_product_attention. Для Mistral 7B 32 слоя с окном в 4 096 токенов дают теоретический охват внимания примерно в 131K токенов, хотя информации из далёких слоёв нужно пройти много шагов, чтобы дойти до текущего.

Mistral 7B также хранит ключи и значения в циклическом буфере из w слотов: позиция i записывается в слот i mod w, заменяя самую старую запись. Для последовательности из 32K токенов это уменьшило объём памяти под кэш в восемь раз без потери качества, а фиксированный размер кэша не меняется при увеличении длины генерации.

Чередование локальных и глобальных слоёв#

Чисто оконные слои не могут за один шаг скопировать факт из далёкого прошлого, поэтому в современных моделях слои SWA чередуются с полностью глобальными слоями. В Gemma 2 от Google они чередовались один к одному с окном в 4 096 токенов, а в Gemma 3 на каждый глобальный слой приходится пять локальных с окном всего в 1 024 токена, что позволяет поддерживать небольшой кэш KV при контекстном окне длиной до 128K токенов. Только глобальные слои хранят ключи и значения для всего контекста, поэтому в пяти из каждых шести слоёв содержится всего по 1 024 токена.

Визуальные трансформеры используют такое же сочетание для изображений высокого разрешения, где каждый патч — это токен. SAM 3 от Meta, работающая в пакете Ultralytics для сегментации изображений, использует внимание в неперекрывающихся окнах размером 24 × 24 патча в 28 из 32 блоков энкодера изображений и глобальное внимание по всей сетке 72 × 72 патча изображения размером 1 008 пикселей в блоках 7, 15, 23 и 31.

  • Swin Transformer: Разбивает изображение на фиксированные неперекрывающиеся окна, общие для всех токенов внутри окна, и сдвигает сетку между слоями, чтобы соседние окна обменивались информацией.
  • Разреженное внимание: Более широкое семейство фиксированных шаблонов. SWA — его простейший вариант; другие методы добавляют расширенные окна, глобальные токены или случайные связи.
  • Стоки внимания: Первые токены последовательности, которые поглощают избыточный вес внимания. Если при инференсе применить окно к модели, обученной с полным вниманием, удаление этих токенов нарушит генерацию; StreamingLLM сохраняет их в кэше рядом с окном.
  • Деформируемое внимание: Каждый запрос обращается к нескольким точкам выборки, смещения которых модель обучается предсказывать, поэтому окрестность зависит от содержимого.
  • Flash attention: Ядро GPU для точного вычисления внимания. Его реализации поддерживают размер окна, поэтому модели SWA полностью пропускают блоки за пределами окна.

Explore solutions

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

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

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее
Компьютерное зрение в спорте
Компьютерное зрение в спорте
Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки
Компьютерное зрение для аэросъёмки
Преобразуй изображения с дронов и других воздушных платформ в аналитические данные в реальном времени для сельского хозяйства, аквакультуры, экологического мониторинга, охраны природы и геопространственного анализа с помощью Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли
Компьютерное зрение в аэрокосмической отрасли
Используй модели Ultralytics YOLO для мониторинга с воздуха с помощью ИИ для компьютерного зрения. Применяй решения компьютерного зрения для дронов, аэрокосмических рабочих процессов, охраны окружающей среды и геопространственных отраслей.
Подробнее
Компьютерное зрение в сфере безопасности
Компьютерное зрение в сфере безопасности
Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике
Компьютерное зрение в робототехнике
Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике
Компьютерное зрение в логистике
Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле
Компьютерное зрение в розничной торговле
Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении
Компьютерное зрение в здравоохранении
Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве
Компьютерное зрение в производстве
Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли
Компьютерное зрение в автомобильной отрасли
Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве
Компьютерное зрение в сельском хозяйстве
Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее
Компьютерное зрение в спорте
Компьютерное зрение в спорте
Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки
Компьютерное зрение для аэросъёмки
Преобразуй изображения с дронов и других воздушных платформ в аналитические данные в реальном времени для сельского хозяйства, аквакультуры, экологического мониторинга, охраны природы и геопространственного анализа с помощью Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли
Компьютерное зрение в аэрокосмической отрасли
Используй модели Ultralytics YOLO для мониторинга с воздуха с помощью ИИ для компьютерного зрения. Применяй решения компьютерного зрения для дронов, аэрокосмических рабочих процессов, охраны окружающей среды и геопространственных отраслей.
Подробнее
Компьютерное зрение в сфере безопасности
Компьютерное зрение в сфере безопасности
Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике
Компьютерное зрение в робототехнике
Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике
Компьютерное зрение в логистике
Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле
Компьютерное зрение в розничной торговле
Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении
Компьютерное зрение в здравоохранении
Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве
Компьютерное зрение в производстве
Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли
Компьютерное зрение в автомобильной отрасли
Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве
Компьютерное зрение в сельском хозяйстве
Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения