Примечание. В этой статье мы пытаемся дать вам хорошее понимание темы интуитивно с минимальными усилиями, игнорируя некоторые детали.

Оглавление

· 🔥 Самовнимание в CNN
· 🔥 Блок осевого внимания
· 🔥 Резюме
Бонус: официальная реализация PyTorch
· Цитирование

🔥 Самостоятельное внимание в CNN

Сверточные нейронные сети (CNN) отлично подходят для использования локальных функций. Однако они обычно не могут исследовать объекты на больших расстояниях. Однако механизмы самовнимания неспособны исследовать локальные особенности, но отлично подходят для изучения отдаленных особенностей. Таким образом, модули самоконтроля широко объединяются с модулями CNN для изучения как краткосрочной, так и долгосрочной информации.

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

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

❗️Поэтому предлагается аксиальное внимание, которое обеспечивает эффективность вычислений и богатое рецептивное поле, что устраняет недостатки обычных модулей само-внимания.

🔥 Осевой блок внимания

Подводя итог в одном предложении

Осевое внимание разлагает двухмерное внимание на два одномерных внимания последовательно по осям высоты и ширины.

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

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

В Axial Transformer существует три основных типа слоев Axial Attention (два типа и соответствующие им подтипы показаны на рис. 3), а именно row- мудрое внимание, внимание по столбцам и внимание по каналам.

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

Конвейер осевого модуля внутреннего внимания показан на рис. 3. H — это карта признаков. A – осевой блок внимания. H’ — это карта признаков после применения осевого внимания. Аффинность — это особый тип преобразования (его нельзя объяснить в нескольких предложениях, поэтому, если вы не знаете, не стесняйтесь посмотреть это видео). Агрегация — это просто поэлементное суммирование.

🔥 Резюме

Предлагая осевое внимание, CNN, основанные на внимании, теперь могут более эффективно обрабатывать изображения, сохраняя при этом глобальное рецептивное поле, что решает проблемы традиционных модулей собственного внимания. Благодаря применению осевого внимания возникли определенные архитектуры, такие как CCNet, Axial Transformer и Axial-DeepLab. Все они продемонстрировали превосходную производительность и почти самые современные результаты на тот момент (однако в этой статье они не будут подробно описаны).

Спасибо! ❤️

Если вы считаете, что эта статья помогла вам, проголосуйте за нее! ❤️

Бонус: официальная реализация PyTorch



Цитата

[1] ОСЕВОЕ ВНИМАНИЕ В МНОГОМЕРНЫХ ТРАНСФОРМАТОРАХ