ICCV2021 | Tokens-to-Token ViT: обучение трансформера зрения с нуля на ImageNet

глубокое обучение компьютерное зрение

предисловие

В этом документе представлен новый преобразователь видения токена в токен (T2T-ViT), который уменьшает количество параметров и MAC-адрес исходного ViT наполовину, при этом достигая улучшения более чем на 3,0% при обучении с нуля в ImageNet. Он также превосходит ResNet и достигает производительности, сравнимой с MobileNet, за счет обучения непосредственно на ImageNet.

Эта статья взята из технического руководства по публичному аккаунту CV.Серия обмена бумагой

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

图片

Документ: Tokens-to-Token ViT: обучение трансформеров видения с нуля в ImageNet

Код:GitHub.com/intent-откройте, чтобы…

Background

Vision Transformer (ViT) — первая полная модель Transformer, которую можно напрямую применять для классификации изображений. В частности, ViT делит каждое изображение на блоки фиксированной длины 14×14 или 16×16 (также называемые маркерами); затем ViT применяет слой Transformer для моделирования глобальных отношений между этими маркерами для классификации.

несмотря на то чтоViTдоказали, что полностью трансформерная архитектура перспективна в задачах зрения, ноПри обучении с нуля на наборах данных среднего размера (например, ImageNet) его производительность по-прежнему уступает эквивалентным архитектурам CNN аналогичного размера (например, ResNets).

В документе предполагается, что этот разрыв в производительности связан с двумя основными ограничениями ViT:

1) Простая токенизация входного изображения с помощью жесткого разделения делает ViT неспособным моделировать локальные структуры, такие как края и линии изображения, поэтому для получения требуется гораздо больше обучающих выборок, чем CNN (например, JFT-300M для предварительного обучения). аналогичная производительность;

2) Основа внимания ViT не так хорошо спроектирована, как CNN, для задач зрения, например, ViT имеет недостаток избыточности и ограниченного набора функций, что затрудняет обучение модели.

Чтобы проверить гипотезу статьи, в документе проводится предварительное исследование различий в усвоенных функциях ViTL/16 и ResNet5 с помощью визуализации на рисунке 2. В статье рассматривается функциональность ResNet для захвата желаемой локальной структуры (краев, линий, текстур и т. д.). Он постепенно увеличивается от нижнего слоя (Cv1) к среднему слою (Cv25).

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

图片

Рисунок 2. Функциональная визуализация предложенных в статье ResNet50, ViT-L/16 и T2T-VIT-24, обученных на ImageNet. Зеленые прямоугольники выделяют изученные структурные элементы низкого уровня, такие как ребра и линии; красные прямоугольники выделяют недопустимые карты признаков с нулевыми или слишком большими значениями. Примечание. Визуализированные здесь карты функций для ViT и T2T-ViT — это не карты внимания, а функции изображения, преобразованные из токенов.

Инновационные идеи

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

1) В отличие от наивной токенизации, используемой в ViT,В документе предлагается модуль прогрессивной токенизации, который объединяет соседние токены в один токен (называемый модулем токены-к-токену), который может моделировать локальную структурную информацию окружающих токенов и итеративно уменьшать количество токенов.. В частности, на каждом шаге токена к токену (T2T) токены, выдаваемые уровнем преобразователя, реконструируются в изображение (реструктуризация), затем изображение разбивается на перекрывающиеся (мягкое разделение) токены, и, наконец, передаются окружающие токены. с помощью Flatten разделенные патчи группируются вместе. Таким образом, локальная структура из окружающих патчей встраивается в токены для ввода в следующий слой преобразователя. T2T выполняется итеративно, локальные структуры объединяются в токены, а длина токенов уменьшается в процессе агрегирования.

2)Чтобы найти эффективную основу Vision Transformer, в документе используются некоторые архитектурные проекты CNN для создания слоев Transformer для улучшения разнообразия функций. в той же модели.И производительность намного лучше в случае MAC (Multi-Adds). В частности, в статье рассматриваются Wide ResNet (мелкая широкая VS глубокая узкая структура), DenseNet (плотное соединение), структура ResneXt, работа Ghost и внимание к каналу. В документе показано, что среди них глубоко-узкая структура является наиболее эффективной и действенной для ViT, значительно уменьшая количество параметров и MAC-адресов с небольшим снижением производительности. Это также показывает, что архитектурное проектирование CNN может помочь в проектировании основы Vision Transformer.

Основываясь на модуле T2T и глубокой узкой магистральной сетевой архитектуре, в документе разрабатывается преобразователь видения токены-токен (T2T-ViT), который значительно повышает производительность при обучении с нуля в ImageNet и является более легким, чем обычный ViT.

Methods

T2T-ViT состоит из двух основных частей (рисунок 4):

1) Иерархический «модуль Tokens-to-Token» (модуль T2T) используется для моделирования локальной структурной информации изображения и постепенного уменьшения длины токенов;

2) Эффективная «магистраль T2T-ViT» для извлечения глобальных отношений внимания к токенам из модуля T2T.

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

图片

Рисунок 4. Общая сетевая архитектура T2T-ViT. В модуле T2T входное изображение сначала мягко разбивается на фрагменты, а затем разворачивается в последовательность маркеров T0. В модуле T2T длина токена постепенно уменьшается (здесь используются две итерации и выводится Tf). Затем магистраль T2T-VIT принимает фиксированные токены в качестве входных данных и выводит прогнозы. Два блока T2T такие же, как на рисунке 3, а PE — это позиционное вложение.

Tokens-to-Token

Модуль Tokens-to-Token (T2T) направлен на преодоление ограничений простой токенизации в ViT. Он постепенно структурирует изображения в представления и моделирует локальную структурную информацию, что многократно сокращает длину представлений. Каждый процесс T2T состоит из двух этапов: рекомбинации и мягкого разделения (SS) (рис. 3).

图片

Рисунок 3. Иллюстрация потока T2T.

После преобразования и изменения формы токены Ti реконструируются в изображение Ii, а затем перекрываются и разбиваются на токены Ti+1. В частности, как показано на розовой панели, четыре маркера (1, 2, 4, 5) ввода Ii объединяются, чтобы сформировать маркер в Ti+1. Преобразователи T2T могут быть обычными слоями преобразователя или другими эффективными преобразователями, такими как слои Performer, в ограниченной памяти графического процессора.

При выполнении мягкого разделения каждый блок имеет размер k×k, и s накладываются на изображение, где k- аналогично шагу в операции свертки. Следовательно, для реконструированного изображения I_∈_rh×w×c длина выходных маркеров после мягкого разделения равна

图片

Размер каждого фрагмента разделения равен k×k×c. Сгладить все участки в пространственном измерении, обозначенном To. После мягкого разделения выходные токены передаются для следующего процесса T2T.

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

图片

Для входного изображения I0 сначала примените мягкое разделение, чтобы разделить его на токены: T1=SS(I0). После последней итерации выходные токены Tf модуля T2T имеют фиксированную длину, поэтому основа T2T-ViT может моделировать глобальные отношения на Tf.

T2T-ViT Backbone

В документе исследуются различные конструкции архитектуры VIT и используются некоторые конструкции CNN для повышения эффективности магистральной сети и увеличения количества изученных функций. Поскольку каждый уровень преобразователя имеет пропускные соединения, простая идея состоит в том, чтобы использовать плотные соединения, такие как DenseNet, для расширения возможностей подключения и расширения возможностей, или использовать структуры Wide-ResNet или ResNeXt для изменения размера канала и количества головок в магистрали VIT.

В статье рассматриваются пять архитектурных проектов от CNN до VIT:

  • Плотные соединения, такие как DenseNet;

  • Глубоко-узкие и мелко-широкие структуры, такие как широкий ResNet];

  • Канал внимания, такой как сети сжатия-возбуждения (SE);

  • Больше подзаголовков на уровне внимания с несколькими заголовками, например ResNeXt;

  • Призрачные операции, такие как Ghost Net.

Эксперименты показали, что: 1) Глубоко-узкая структура, которая просто уменьшает размер канала, используется для уменьшения избыточности в канале, а глубина слоя увеличивается для улучшения многофункциональности в VIT Размер модели и MAC уменьшаются, но производительность улучшается. 2) Внимание канала блока SE также улучшает VIT, но эффект не так хорош, как глубоко-узкая структура.

На основе этих выводов в документе разрабатывается узкая структура магистральной сети T2T-VIT. В частности, он имеет меньшее количество каналов и скрытую размерность d, но больше слоев b. Для токена фиксированной длины последнего слоя модуля T2T документ прикрепляет к нему токен класса, а затем добавляет встраивание синусоидального положения (PE), которое классифицируется как VIT:

图片

T2T-ViT Architecture

图片

Конструктивные детали Т2Т-ВИТ. Размер модели T2T-VIT-14/19/24 сопоставим с ResNet50/101/152. Размер модели T2T-VIT-7/12 сопоставим с MobileNetV1/V2. Для уровня преобразователя T2T при ограниченной памяти графического процессора в документе используется уровень преобразователя T2T-VITT-14 и уровень исполнителя T2T-VIT-14. Для VIT «S» означает «маленький», «B» означает «базовый», а «L» означает «большой». «ВИТ-С/16» — это вариант исходного ВИТ-Б/16 с меньшим размером МЛП и глубиной слоя.

Conclusion

Как показано на рис. 1, 215 миллионов параметров бумаги и 5,2G MACS T2T-ViT могут обеспечить точность TOP-1 81,5% на ImageNet, что намного выше, чем 48,6M параметров ViT и точность TOP-1 MAC 10,1G (78,1%). Этот результат также выше, чем у популярных CNN аналогичного размера, таких как ResNet50 с параметрами 25,5 млн (76%-79%). Кроме того, в статье также получены результаты, сравнимые с MobileNets (рис. 1), за счет простой разработки экономичного варианта T2T-ViT с меньшим количеством слоев.

图片

Сравнение обучения T2T-VIT и VIT de novo на ImageNet

图片

Перенос некоторых распространенных проектов CNN в VIT и T2T-VIT, включая DenseNet, Wide-ResNet, модуль SE, ResNeXt, работу Ghost. Тот же цвет указывает на соответствующую миграцию. Все модели обучаются с нуля на ImageNet.

图片

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

Другие статьи

Краткое изложение навыков предварительной обработки данных и обучения моделей в области компьютерного зрения

Panoptic SegFormer: комплексный преобразователь общей структуры паноптической сегментации

ICCV2021 | Простая и эффективная новая схема визуального распознавания длинного хвоста: самоконтроль дистилляции (SSD)

AAAI2021 | Динамическое обучение привязок при обнаружении объектов произвольной ориентации

ICCV2021 | Изучение пространственно-временных преобразователей для визуального отслеживания

ICCV2021 Преобразователь технического зрения с прогрессивной выборкой

MobileVIT: легкий визуальный трансформер + мобильное развертывание

ICCV2021 | SOTR: Сегментация объектов с помощью преобразователей

ICCV2021 | PnP-DETR: эффективный визуальный анализ с помощью трансформаторов

ICCV2021 | Отражение и улучшение кодирования относительного положения в Vision Transformer

ICCV2021 | Переосмысление пространственного измерения визуальных трансформеров

CVPR2021 | TransCenter: Преобразователи для алгоритмов многообъектного отслеживания

CVPR2021 | Обнаружение объектов в открытом мире

CVPR2021 | Transformer для сквозной сегментации экземпляров видео

ICCV2021 | TOOD: одноэтапное обнаружение объектов, ориентированное на задачу

Научное письмо и философия статей

Резюме инновационных идей модели трансформатора в компьютерном зрении

Краткое изложение традиционных методов извлечения признаков в компьютерном зрении

Краткое изложение общих приемов в потоке данных Pytorch

PNNX: формат обмена нейронной сетью PyTorch

Опыт работы и восприятие алгоритма CV от года

Совместное использование ресурсов | Ускорьте написание эссе с FiftyOne

2021 - Обзор многообъектного отслеживания в видеонаблюдении

Всестороннее понимание якорей в обнаружении целей | Резюме сегментации экземпляра Резюме Полное издание
Обзор одноэтапной сегментации экземпляров | Обзор оценки позы | Обзор семантической сегментации

Резюме функции потерь регрессии при обнаружении цели | Краткое изложение распространенных методов обнаружения малых целей

Обзор понимания видео: распознавание действий, расположение последовательности действий, встраивание видео

Разница между обнаружением видеообъекта и обнаружением объекта изображения