Как некоторые из самых крупных моделей видят мир

Визуализация CNN позволила нам узнать больше о том, как работают эти модели. Теперь, когда Vision Transformers выходят на сцену, в новой статье объясняется, как мы можем увидеть, как эти широкие модели видят мир.

Визуализируйте преобразователи видения

Поскольку сверточные нейронные сети (CNN) стали успешной моделью компьютерного зрения, различные исследовательские группы сосредоточились на понимании того, чему учат эти модели.

С одной стороны, нейронные сети появились в нескольких областях (от языкового анализа до компьютерного зрения), но считались «черными ящиками». В отличие от многих других алгоритмов, их гораздо сложнее интерпретировать. На самом деле, чем более способными становятся модели (рост числа параметров), тем сложнее становится понять, что происходит внутри.

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

  • Визуализируйте фильтры (или визуализируйте веса).
  • Визуализация активации слоя
  • Чтобы получить изображение, которое максимально активирует нейрон
  • Встраивание векторов признаков с помощью t-SNE.
  • GradCAM, карты заметности.

В 2016 году на сцену вышли трансформеры. Было показано, что эти широкие модели, основанные на самовнимании, достигают гораздо более высоких результатов в НЛП (машинный перевод, языковая классификация и т. д.). Вскоре они стали стандартом для НЛП, а с появлением преобразователей зрения их стали применять и в компьютерном зрении.

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

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

Недавно была опубликована статья исследователей из Нью-Йоркского университета и Университета Мэриленда, которая дает лучшее понимание того, что происходит внутри модели (независимо от того, являются ли они преобразователями зрения или моделями). например КЛИП).

В статье исследователи резюмируют свой вклад:

  1. В то время как стандартные методы приводят к неинтерпретируемым результатам (особенно при применении к ключам, запросам и значениям), можно получить информативную визуализацию, применяя те же методы к следующему слою прямой связи того же блока преобразования (и они продемонстрировали это с помощью различных моделей: трансформаторы ViTs, DeiT, CoaT, ConViT, PiT, Swin и Twin).
  2. Паттерны активации изображений для функций ViT ведут себя как карты заметности, демонстрируя, что модель сохраняет позиционные отношения между патчами (и изучает это во время обучения).
  3. CNN и ViT создают сложное и прогрессивное представление (в CNN первые слои представляют края и текстуры, а более поздние слои изучают более сложные шаблоны, и авторы показывают, что то же самое происходит и в ViT). ViT, в отличие от CNN, могут лучше использовать справочную информацию.
  4. Авторы также применили свой метод к моделям, использующим языковой контроль (например, CLIP), и показали, что из этих моделей можно извлечь функции, связанные с текстом подписи (например, предлоги, прилагательные и концептуальные категории).

Авторы сравнили ViTs со свёрточными сетями и отметили, что представление усложняется по шаблону (более ранние слои изучают более простые структуры, в то время как более сложные шаблоны изучаются более продвинутыми слоями). На практике и CNN, и ViT разделяют то, что называется прогрессивной специализацией.

Есть и отличия. Авторы исследовали зависимость ViT и CNN от особенностей изображения фона и переднего плана (используя ограничивающие рамки в ImageNet). ViT могут обнаруживать фоновую информацию, присутствующую в изображении (на изображении, например, трава и снег). Кроме того, маскируя фон или передний план на изображении, исследователи показали, что ViT не только лучше используют фоновую информацию, но и менее подвержены ее удалению.

Мы находим удивительным, что хотя каждый патч может влиять на представление любого другого патча, эти представления остаются локальными даже для отдельных каналов в глубоких слоях сети. Хотя подобное открытие для CNN, нейроны которых могут иметь ограниченное рецептивное поле, неудивительно, даже нейроны в первом слое ViT имеют полное рецептивное поле. Другими словами, ViT учатся сохранять пространственную информацию, несмотря на отсутствие индуктивной предвзятости CNN. -источник: оригинальная статья

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

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

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

Модель показывает наличие признаков, связанных с предположениями, такими как «до и после» или «сверху». Другими словами, есть признаки, которые представляют концептуальные категории и четко различимы:

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

Выводы

Чтобы понять, увидеть всегда лучше. В последние годы все больше внимания уделяется необходимости интерпретируемости моделей. Хотя существует множество отработанных методов для CNN, визуализировать особенности ViT было невозможно.

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

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

Код: здесь, статья: здесь

если вам было интересно:

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

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



Или не стесняйтесь проверить некоторые из моих других статей на Medium: