Революция восприятия данных: как Perceiver меняет архитектуру нейросетей 0:00
Исследователи из Google DeepMind представили модель Perceiver, предлагающую новый подход к архитектуре нейронных сетей, который позволяет эффективно работать с различными типами данных — изображениями, видео, аудио и 3D-облаками точек,. В основе идеи лежит отказ от специфических для конкретных модальностей архитектурных ограничений, таких как использование сверток (convnets) в компьютерном зрении. Янник Килхер отмечает, что модель делает важный шаг к созданию более глубоких архитектур трансформеров, сохраняя при этом возможность обработки сотен тысяч входных элементов без вычислительной перегрузки,.
🧩 Проблема «квадратичного узкого места» трансформеров 5:07
Классические трансформеры при обработке длинных последовательностей данных сталкиваются с проблемой высокой вычислительной сложности и потребления памяти.
- Квадратичная сложность: Механизм самовнимания (self-attention) требует вычисления весов между каждым элементом входной последовательности и каждым элементом выходной, что приводит к сложности $O(m^2)$, где $m$ — длина последовательности.
- Ограничения памяти: Для NLP-задач длина последовательности $m$ обычно составляет около 1000, что приемлемо. Однако в задачах компьютерного зрения количество входных данных может достигать 50 000 (например, при разрешении 224x224 пикселя), что делает классический подход невозможным на текущем оборудовании.
💡 Как работает Perceiver: итеративное внимание 7:12
Ключевая инновация авторов заключается в разделении входных данных и скрытого состояния модели через механизм перекрестного внимания (cross-attention).
- Латентный массив: В отличие от стандартных трансформеров, где данные «смешиваются» в процессе внимания, Perceiver использует фиксированный латентный массив небольшого размера $n$.
- Сжатие информации: При перекрестном внимании данные (изображение или аудио) поступают в модель, но трансформируются не в последовательность той же длины, а в короткое латентное состояние.
- Итеративный процесс: Изображение подается в стек слоев несколько раз, при этом веса могут быть общими, что концептуально делает модель схожей с рекуррентной нейронной сетью (RNN),.
- Оптимизация: Поскольку размерность $n$ латентного состояния невелика (около 500–1000 элементов), вычисления внутри «латентного трансформера» становятся эффективными, позволяя обходить квадратичное ограничение.
🔄 Позиционное кодирование через Фурье-признаки 19:04
Поскольку архитектура Perceiver не делает предположений о структуре данных (например, о том, что пиксели соседствуют друг с другом), она инвариантна к порядку входных данных. Для того чтобы модель могла учитывать пространственную или временную информацию, исследователи внедрили позиционное кодирование.
- Фурье-признаки: Используется банк частот, аналогичный тому, что был предложен в оригинальной статье "Attention Is All You Need".
- Гибкость: Этот подход позволяет модели распознавать близость элементов на разных уровнях разрешения и не ограничивает жестко максимальную длину входной последовательности, как это делают обучаемые позиционные эмбеддинги.
🔬 Результаты экспериментов и критика 23:20
По словам Килхера, в области компьютерного зрения модель показывает результаты на уровне архитектуры ResNet-50, не используя при этом никаких априорных знаний о том, что входные данные являются именно изображением.
Однако Янник Килхер выражает скепсис относительно интерпретируемости карт внимания. Он отмечает, что на визуализациях карт внимания во внутренних слоях заметны повторяющиеся сеточные структуры. По мнению Килхера, возникает вопрос: насколько эти карты зависят от конкретного входного изображения, а насколько они являются просто выученными «общими» паттернами обработки.
- Абляции: Авторы подтверждают, что с увеличением размера латентных переменных, количества итераций (проходов данных) и глубины трансформера производительность модели растет.
- Перспективы: Килхер считает идею крайне многообещающей, но предполагает, что для полноценного понимания механизма работы модели требуются дополнительные исследования взаимодействия между глубиной сети и итеративностью обработки.