TAPe-дневник, день 6: синтетика, эмбеддинги и первый уход от трансформеров

TAPe-дневник, день 6: синтетика, эмбеддинги и первый уход от трансформеров

Продолжаем серию записей об экспериментах с TAPe — подходом к компьютерному зрению на основе теории активного восприятия. В этот раз — обучение эмбеддингов на полностью синтетических данных, 74% точности в классификации на 5 тыс. изображений COCO и первые выводы о несоответствии стандартных трансформеров архитектуре TAPe.

Что такое TAPe и зачем он нужен

TAPe (Theory of Active Perception) — математическая теория и технология, моделирующая механизм активного восприятия. Она разбивает изображение на устойчивые признаки — TAPe-элементы — и задаёт структуру связей между ними. В подходе TAPe+ML эти элементы выступают как фиксированные «патчи», заменяющие сырые пиксели.

TAPe становится отдельным слоем предобработки: алгоритмы преобразуют изображение в структурированные «строительные блоки» с известными связями. На их основе мы решаем задачи — от self-supervised обучения в духе DINO/iBOT до классификации, кластеризации и детекции на COCO.

Две задачи: эмбеддинги и классификация

Мы достигли значительного прогресса в формировании эмбеддингов — это лучший результат из всех, что были получены нами на COCO. Эксперимент включал две задачи: получение эмбеддингов и классификацию по 80 классам.

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

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

Классификационная задача стандартна: по описанию одного или нескольких патчей определить, к какому из 80 классов COCO он относится.

Маленький, но насыщенный датасет

Благодаря TAPe, модель с самого начала получает богатую структурную информацию. Это позволяет эффективно обучаться даже на малом объёме данных. Например, YOLO не сходится на 5 тыс. изображениях — ему требуется предобучение на ImageNet. Мы же можем обучаться на малом и тестировать на большом, потому что структурная насыщенность компенсирует недостаток примеров.

В качестве малого датасета использовали 5 тыс. val-изображений COCO: 3,5 тыс. — для обучения, 1,5 тыс. — для валидации. Этот набор обеспечивает хорошее распределение классов и высокую сложность: val-изображения, как правило, труднее train-примеров.

Результаты: 82% реконструкции и 74% классификации

Первая задача — реконструкция патчей — сошлась с точностью 82%. Этого достаточно для решения практических задач, хотя есть пространство для улучшения.

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

Проблемы с трансформерами

На текущем этапе мы используем стандартные трансформеры для связи между патчами. Это упрощает эксперименты, но не является долгосрочным решением.

Трансформеры медленны и искажают данные. Их механизм внимания — основанный на трёх весовых матрицах — предназначен для того, чтобы «рассказать» патчам о других патчах и их взаимосвязях. Но в TAPe эти связи уже известны изначально.

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

Зачем уходить от внимания и что дальше

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

Мы планируем отказаться от трансформеров в пользу TAPe-совместимых решений — таких, которые не искажают данные и работают эффективнее. Это следующий шаг к финальной архитектуре.

Читать оригинал