Обучение ИИ на текстах: как метод VirTex заменяет огромные датасеты

Yannic Kilcher 6,4 тыс. 29 мин 6 мин 12.06.2020
Главное

В новом видео на своём канале известный ИИ-исследователь Янник Килчер (Yannic Kilcher) подробно разбирает научную работу «VirTex: Learning Visual Representations from Textual Annotations», авторами которой являются Карен Десаи (Karen Desai) и Джастин Джонсон (Justin Johnson) из Мичиганского университета. В центре внимания исследователей — инновационный подход к обучению компьютерного зрения, который предлагает использовать генерацию текстовых описаний к картинкам для создания эффективных визуальных моделей. Главная идея заключается в том, что вместо наращивания объема данных можно сделать ставку на их качество и смысловую плотность.

📸 Суть подхода и проблема переноса знаний 0:00

В сфере компьютерного зрения существует стандартный пайплайн: нейросеть получает на вход изображение, обрабатывает его с помощью глубокой архитектуры и выдает результат в зависимости от задачи. Это может быть классификация (например, определение категории на ImageNet), поиск объектов с помощью ограничивающих рамок (object detection) или попиксельная семантическая сегментация. Несмотря на разнообразие финальных задач, все эти архитектуры объединяет общая основа — так называемый визуальный «бэкбон» (backbone), обычно представляющий собой сверточную нейросеть (CNN).

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

Существует два основных подхода к предобучению:

По словам Янника Килчера, современный тренд в ИИ упрямо движется в сторону увеличения объемов данных: чем больше картинок, тем лучше бэкбон. Однако авторы работы VirTex решили пойти в противоположном направлении. Они задались вопросом: можно ли пожертвовать количеством изображений ради радикального повышения качества информации, приходящейся на один шаг обучения?

🧠 Качество против количества: Плотность аннотаций 5:09

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

Янник Килчер приводит пример текстового описания из датасета: «Рыже-белый кот рядом с тарелкой и белым тортом». Из этого короткого предложения нейросеть может извлечь сразу несколько важнейших сигналов:

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

🏗️ Архитектура VirTex: Симбиоз ResNet и трансформера 8:31

Конструктивно модель VirTex устроена достаточно элегантно и состоит из двух ключевых компонентов:

  1. Визуальный бэкбон: стандартная сверточная нейросеть ResNet-50. На выходе она формирует карту признаков размером 7x7x2048.
  2. Языковая модель: линейная проекция переводит визуальные признаки в пространство, понятное текстовому декодеру, построенному на базе архитектуры Transformer.

Фактически задача формулируется как перевод с «языка картинок» на человеческий язык. Визуальные признаки подаются через механизм перекрестного внимания (cross-attention) в декодер, во многом повторяя классическую архитектуру трансформера из статьи «Attention is all you need».

Важной особенностью VirTex является использование двунаправленного авторегрессионного декодирования (bi-directional captioning). На этапе обучения задействованы сразу два трансформера: один предсказывает текст в прямом порядке (слева направо), а второй — в обратном (справа налево, на перевернутом тексте). Янник Килчер подчеркивает, что это возможно благодаря технике «teacher forcing» во время обучения.

Примечательно, что авторы намеренно сделали текстовую часть очень «мелкой» — она содержит всего 1 слой со скрытой размерностью 1024. По мнению ведущего, такое ограничение мощности трансформера является стратегическим решением: оно заставляет визуальный бэкбон выполнять основную часть работы по извлечению смыслов из картинки, что делает его структуру более качественной. При инференсе (использовании модели) языковая часть просто «отрезается», а готовый бэкбон отправляется на целевые задачи компьютерного зрения.

📊 Эксперименты: Как 10% данных обходят ImageNet 14:38

В первой серии тестов исследователи заморозили обученный бэкбон VirTex и обучили поверх него простой линейный классификатор, сравнив результаты с сильными конкурентами. В качестве основной базы данных использовался капшенинг-датасет COCO, который составляет всего около 10% от объема ImageNet по количеству изображений.

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

Результаты тестов на независимом датасете Pascal VOC превзошли ожидания: VirTex уверенно обошел контролируемый ImageNet-базовый уровень при одинаково малом количестве доступных изображений. Более того, когда модель задействовала несколько капшенов на одно изображение, точность заметно возрастала. Чтобы достичь аналогичных показателей качества, классическому супервизорному подходу на ImageNet требовалось в 10 раз больше картинок.

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

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

🔬 Тонкая настройка и магия карт внимания 21:59

Во втором цикле тестов бэкбон не замораживали, а полноценно дообучали (fine-tuning) под сложные задачи, такие как детекция объектов на COCO, классификация iNaturalist и сегментация масок LVIS. В этих тестах VirTex стабильно шел наравне или даже опережал традиционный супервизорный бэкбон. Особое превосходство проявилось в сложных сегментационных задачах LVIS, где качество и глубина текстового описания помогли модели лучше улавливать мелкие нюансы форм и текстур.

Одним из самых красивых результатов работы стала визуализация карт внимания (attention maps) текстового декодера. Эксперименты наглядно продемонстрировали, что ИИ действительно сопоставляет слова с визуальными концептами:

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

🔮 Будущее концепции и скептицизм Янника Килчера 27:26

В заключительной части статьи авторы VirTex высказывают оптимистичные прогнозы. По их мнению, данную технологию очень легко масштабировать, ведь интернет переполнен изображениями, вокруг которых всегда есть текст — посты в социальных сетях (например, Twitter), статьи, подписи к фото и блоги. Можно просто собирать эти данные в промышленных масштабах и обучать огромные бэкбоны.

Однако сам Янник Килчер относится к этой идее скептически. По мнению ведущего, такой прогноз прямо противоречит главному тезису самого исследования VirTex. Успех архитектуры строился именно на сверхвысоком качестве и академической чистоте аннотаций в датасете COCO, где люди скрупулезно описывали то, что видят глазами.

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

💬 Цитаты

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

Янник Килчер 08:05

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

Янник Килчер 28:58
👥 Спикер
📖 Термины
Бэкбон (Backbone)
Основная базовая часть нейросети (обычно сверточная модель), которая отвечает за извлечение общих признаков из изображения перед выполнением конкретной задачи.
Перенос обучения (Transfer learning)
Метод в машинном обучении, при котором модель, обученная для одной задачи, повторно используется в качестве отправной точки для решения другой задачи.
Капшенинг (Image captioning)
Задача автоматического создания текстового описания (подписи) к поданному на вход изображению.
Трансформер (Transformer)
Популярная архитектура нейросетей, основанная на механизме внимания, которая совершила революцию в обработке текста и естественного языка.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект VirTex Янник Кильхер ResNet-50 Переносное обучение