В новом видео популярный блогер и исследователь Янник Килчер (Yannic Kilcher) подробно разбирает научную статью «Object-Centric Learning with Slot Attention», подготовленную инженерами из Google Brain, ETH Zurich и MPI. Работа посвящена извлечению структуры объектов из хаотичного набора пикселей с помощью специального механизма слотов внимания. Ведущий детально анализирует архитектуру нейросети, оценивает её ключевые преимущества и делится обоснованным скепсисом относительно методологии экспериментов авторов.
🎯 Постановка задачи: обнаружение объектов и предсказание множеств 0:00
Янник Килчер начинает разбор с объяснения фундаментальной проблемы компьютерного зрения — распознавания сцен на уровне отдельных объектов по пикселям. В статье рассматриваются две основные задачи:
- Объектное обнаружение (Object Discovery) — обучение без учителя, где модель должна сегментировать объекты друг от друга и определить их положение на уровне пикселей.
- Предсказание множеств (Set Prediction) — контролируемая классификация объектов, присутствующих на изображении.
Главная сложность здесь заключается в том, что объекты представляют собой неупорядоченное множество. По словам ведущего, порядок упоминания объектов (например, «зелёный куб и жёлтый цилиндр» или наоборот) не должен влиять на результат. Соответственно, архитектура нейросети обязана обладать свойством инвариантности к перестановкам.
Чтобы решить эту проблему и рассчитывать функцию потерь без штрафов за случайный порядок, авторы используют алгоритм венгерского сопоставления (Hungarian matching), аналогично архитектуре DETR от Facebook. По мнению Янника Килчера, модель даёт «кредит доверия» предсказаниям, сопоставляя их с наиболее близкими истинными метками. Штраф начисляется только в случае явных ошибок, например при дублировании одного и того же объекта, когда реальный аналог в выборке отсутствует.
🏗️ Архитектура Slot Attention: как слоты борются за пиксели 4:25
Для решения этих задач авторы вводят модуль Slot Attention. Процесс обработки изображения устроен следующим образом:
- Сначала картинка поступает на свёрточный кодер (CNN), который уменьшает разрешение и разбивает изображение на сетку признаков (features).
- Каждая ячейка этой сетки превращается в вектор признаков с большим количеством каналов информации.
- Параллельно существуют так называемые «слоты» — скрытые представления, количество которых изначально меньше, чем число признаков.
Суть механизма заключается в распределении признаков по слотам. Как объясняет Янник Килчер, цель состоит в том, чтобы заставить слоты конкурировать за пиксели изображения. В отличие от классического внимания, здесь признаки генерируют векторы ключей (keys), а слоты — векторы запросов (queries). Распределение признаков происходит с помощью функции Softmax по оси слотов. Это создаёт эффект жёсткой конкуренции: если один слот забирает себе пиксель, другие уже не могут им воспользоваться, так как сумма вероятностей распределения жестко нормирована.
Важным отличием от архитектуры DETR является инициализация слотов. По мнению Килчера, в DETR позиционные эмбеддинги слотов являются обучаемыми, что заставляет их специализироваться на конкретных областях картинки (например, верхний левый угол). В обсуждаемой работе слоты инициализируются абсолютно случайно для каждого нового изображения. По мнению ведущего, это позволяет сохранить независимость слотов от геометрии сцены и сделать их универсальными.
🔄 Итеративное роутирование и «магия» трансформаторов 15:24
С технической точки зрения Slot Attention использует не взвешенную сумму, как стандартное внимание, а взвешенное среднее. По словам ведущего, это необходимо, чтобы масштаб значений оставался стабильным независимо от изменения количества слотов.
Процесс обновления слотов устроен итеративно:
- Случайно инициализированные слоты участвуют в первом круге распределения информации.
- Полученные обновления проходят через рекуррентный блок GRU, где скрытым состоянием выступают слоты из предыдущего шага.
- Затем применяется опциональный остаточный многослойный перцептрон (residual MLP).
- Обновлённые слоты снова сопоставляются с теми же самыми исходными признаками изображения.
По мнению Янника Килчера, этот процесс концептуально идентичен работе капсульных сетей (Capsule Networks) с их итеративным роутированием. Более того, ведущий предлагает рассматривать эту систему как обычный Transformer с разделением весов (weight sharing) между слоями.
Анализируя графики авторов, Килчер отмечает, как происходит разделение обязанностей. На первой итерации сегментация выглядит грубой и размытой. Однако на втором шаге, по мнению ведущего, «происходит магия»: за счёт Softmax-конкуренции слоты начинают требовать больше пикселей своего цвета (например, только синие или только золотые) и чётко разделяют объекты. Хотя авторы добавили блок GRU между шагами, Килчер указывает на результаты абляции: этот блок практически не влияет на качество, и его можно было бы убрать.
🖼️ Декодирование сцены и выделение заднего плана 24:57
Для проверки работы в режиме обучения без учителя (Object Discovery) векторы слотов пропускаются через специальный декодер. Этот модуль напоминает генератор в GAN или архитектуру автокодировщика. Его задача — восстановить исходное изображение по скрытым представлениям слотов, минимизируя среднеквадратичную ошибку L2.
Каждый слот генерирует четыре канала информации: стандартные цветовые каналы RGB и дополнительный альфа-канал маски прозрачности (A). Маски прозрачности всех слотов объединяются через Softmax, чтобы гарантировать, что их сумма для каждого пикселя равна единице.
Ведущий обращает внимание на важную деталь: для корректной реконструкции изображений авторам приходится использовать на один слот больше, чем максимальное количество объектов в сцене. Лишний слот берёт на себя функцию отрисовки заднего плана (бэкграунда). При этом, ссылаясь на текст статьи, Килчер упоминает, что фон не всегда идеально локализуется в одном выделенном слоте и порой имеет тенденцию «размазываться» по остальным скрытым слотам, что требует дальнейших исследований.
🤨 Скепсис Килчера: идеальные датасеты и уловки в экспериментах 27:46
Несмотря на то, что модель демонстрирует отличные результаты на датасете CLEVR (например, чётко сегментирует геометрические фигуры), Янник Килчер высказывает серьёзный скепсис относительно готовности технологии к реальному миру. По его мнению, успех во многом обусловлен стерильностью обучающих данных: объекты на рендерах геометрически просты, их текстуры идеальны, а корреляция между их расположением в обучающей выборке практически равна нулю.
Основные критические замечания ведущего к авторам статьи из Google Brain:
- Априорное знание числа объектов: При тестировании модели на датасете CLEVR-6 авторы выделяют ровно 7 слотов (6 для объектов + 1 для фона). По мнению Килчера, знание максимального числа объектов является сильным допущением, облегчающим задачу нейросети.
- Чужие метрики без независимой проверки: Авторы не стали заново обучать базовые модели для сравнения (MONET, IODINE), а просто взяли цифры из их оригинальных публикаций. Ведущий считает это сомнительным решением для команды из Google, обладающей колоссальными вычислительными ресурсами.
- Специфические оптимизации: В архитектуре Slot Attention использовался разогрев скорости обучения (learning rate warm-up) и экспоненциальное затухание, уменьшающие дисперсию. В коде сравниваемых моделей таких трюков не было, а преимущество Slot Attention на графиках без этих улучшений выглядит минимальным.
Особое возмущение у Килчера вызвала манипуляция с описанием аппаратного обеспечения. Авторы заявляют, что их модель способна работать с размером батча (batch size) до 64 на одной видеокарте V100, в то время как базовая модель IODINE использовала батч размером всего 4. Однако, изучив статью IODINE, Килчер обнаружил, что те исследователи использовали старые потребительские видеокарты с 12 ГБ памяти. В то же время Google проводил тесты на профессиональном ускорителе Tesla V100 с 32 ГБ памяти, который стоит в 5–10 раз дороже. По мнению ведущего, формулировка «мы оба тестировали на одной GPU, но у нас батч больше» является манипулятивным преувеличением.
💎 Главные плюсы Slot Attention и критика этических отчётов 36:12
Чтобы обзор не выглядел излишне негативным, Янник Килчер подчёркивает, что сам алгоритм Slot Attention — это потрясающая, изящная и перспективная идея. Главным преимуществом подхода является уникальное свойство генерализации:
- Масштабирование слотов на инференсе: Модель, обученную на сценах с максимум 6 объектами, можно запустить на сценах с 10 объектами, просто увеличив количество слотов во время тестирования, и она продолжит работать корректно.
- Увеличение числа итераций: Поскольку веса между шагами роутирования общие, во время инференса можно увеличить число итераций. Это позволяет точнее рафинировать маски внимания без раздувания объёма памяти под веса модели.
В финале обзора блогер касается темы разделов о «широком общественном влиянии» (Broader Impact Statement), которые стали обязательными для конференций уровня NeurIPS. Зачитав заявление авторов, Килчер отмечает, что оно полностью лишено какого-либо социального контекста и лишь перечисляет технические свойства прозрачности масок внимания. По мнению ведущего, прагматичные исследователи быстро поняли лазейку: поскольку этот раздел не засчитывался в общий лимит страниц статьи, авторы начали маскировать под него расширенное введение или дополнительные выводы, чтобы уместить больше технической информации.