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

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

Одним из наиболее многообещающих опубликованных методов является статья Caron et al. с этого года. В этой статье мы рассмотрим идеи, представленные авторами, архитектуру модели SwAV, а также вытекающие из этого последствия для предварительного обучения с самоконтролем. Я постарался сделать статью простой, чтобы даже читатели с небольшими предварительными знаниями могли ее прочитать. Без дальнейших церемоний, давайте погрузимся!

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

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

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

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

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

Как SwAV использует неконтролируемое обучение, чтобы понять визуальный мир вокруг себя

Конвейер обучения для SwAV разделен на несколько этапов.

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

Затем изображения передаются парами через сверточную нейронную сеть. В статье авторы используют популярную архитектуру ResNet-50 и видят рост производительности по мере увеличения ширины модели. Для каждого изображения ResNet будет выводить вектор признаков размером 128.

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

Теперь, когда мы создали эти кластерные назначения, мы делаем предположение: Если входные культуры были взяты из одного и того же изображения, мы хотим изучить модель таким образом, чтобы она выдавала аналогичные векторы для культур одного и того же изображения.

Следовательно, должна быть возможность поменять местами два выходных вектора (культура 1 получает вектор 2, культура 2 получает вектор 1) и заставить модель научиться предсказывать выходной вектор другой входной культуры.

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

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

Теперь давайте посмотрим на некоторые результаты.

Полученные результаты

При оценке модели SwAV по линейной классификации в ImageNet с использованием только замороженных весов из предварительной тренировки она превосходит все другие современные методы с самоконтролем.

Самое впечатляющее, что производительность модели с самоконтролем почти соответствует производительности полностью контролируемой модели, использующей только аннотированные данные. Все оценки проводились с использованием магистрали ResNet-50 (R50). На правом графике разница в производительности с большим количеством параметров показывает, что SwAV также превосходит другие методы.

Это преимущество в производительности для линейной классификации справедливо и для других наборов данных. Невероятно, но при использовании в качестве основы для модели обнаружения объектов, такой как Mask R-CNN, и точной настройке только с 10% помеченных данных в ImageNet все показанные архитектуры обнаружения объектов превосходят полностью контролируемое обучение тех же архитектур моделей. . Это означает, что самоконтролируемое предварительное обучение магистрали обнаружения объектов может привести к более высокой производительности, чем полностью контролируемое обучение модели.

Завершение

В этой статье вы узнали о SwAV, документе, который использует предварительное обучение с самоконтролем для достижения новых высот в производительности для последующих задач, таких как обнаружение объектов. В некоторых задачах он даже превосходит полностью контролируемые подходы. Хотя я надеюсь, что эта история дала вам хорошее первое представление о статье, еще многое предстоит узнать. Поэтому я бы посоветовал вам прочитать статью самостоятельно, даже если вы новичок в этой области. С чего-то надо начинать ;)

Если вас интересуют более подробные сведения о методе, представленном в статье, не стесняйтесь, напишите мне сообщение в Твиттере, моя учетная запись связана с моим профилем на Medium.

Надеюсь, вам понравилось это бумажное объяснение. Если у вас есть какие-либо комментарии к статье или вы видите какие-либо ошибки, не стесняйтесь оставлять комментарии.

И последнее, но не менее важное: если вы хотите глубже погрузиться в область передового компьютерного зрения, рассмотрите возможность стать моим последователем. Я стараюсь публиковать статью раз в неделю и информировать вас и всех, кто интересуется, о том, что нового в исследованиях компьютерного зрения!

Использованная литература:

[1] Реализация SwAV GitHub: https://github.com/facebookresearch/swav

[2] Карон, Матильда и др. Неконтролируемое изучение визуальных особенностей путем сопоставления кластерных заданий. препринт arXiv arXiv: 2006.09882 (2020 г.). https://arxiv.org/pdf/2006.09882.pdf