- BrainTools - https://www.braintools.ru -
Пять лет назад я начал работать с или в проекте Comexp Research Lab – научно-исследовательской компании, в которой тогда было два человека (считая меня). На самом деле исследованиями компания в своей области занимается примерно 15 лет, просто именно на последние пять лет (и особенно на последние полтора года) пришлась самая интенсивность разработок и открытий.
На основе открытой нами Теории активного восприятия [1] или TAPe (Theory of Active Perception), мы разрабатываем новые способы обработки информации, отличные от широко известных методов. За последние пять лет мы прошли от гипотез и мечт через многочисленные барьеры и нехватки денег до реальных технологических прорывов, которыми готовы начать делиться. Например, однажды мы поняли, что можем обходиться без расстояния Хэмминга, а еще раньше для нас было очевидно, что нам не нужна операция свертки. Об этом я расскажу в других статьях. А пока
Современные модели компьютерного зрения [2] впечатляют результатами, но цена очевидна: огромные датасеты, тяжелые архитектуры, тысячи GPU и недели или месяцы обучения [3]. При этом значительная часть вычислений уходит на то, чтобы сначала разрушить структуру данных, а потом попытаться восстановить ее из патчей.
В этой статье мы даем высокоуровневый технический обзор архитектуры TAPe+ML, которая работает не с сырыми пикселями, а с элементами TAPe (Theory of Active Perception). Модель, благодаря TAPe, сразу видит структурированные «строительные блоки» с известными связями и решает задачу, опираясь на них, а не на статичные произвольные патчи.
Ниже — чем этот подход отличается от трансформеров и CNN, какие задачи он покрывает и что показывают первые эксперименты.
TAPe‑адаптированной архитектурой является архитектура, работающая изначально уже с элементами TAPe, а не с произвольными пикселями. Такая архитектура работает с данными, в которых уже заданы их изначальные связи и значения – назовем их “строительными блоками”. Архитектура занимается решением задачи, используя эти блоки и известные связи, а не нахождением этих основополагающих связей «from first principles».
То есть мы не берем «пустые» патчи и не заставляем модель методом перебора находить, как они связаны друг с другом, а даем ей элементы, в которых связи уже заложены TAPe‑представлением.
Один из наибольших ограничителей стандартных моделей (помимо самого подхода) — попытка дискретизировать изначально недискретные данные. Это один из фундаментальных посылов классического Computer Science: представлять все в виде дискретных единиц. В ML это, в сочетании с существующими архитектурами, приводит к гораздо более серьезным проблемам, чем раньше. Особенно это проявляется в CV-задачах, потому что представление изображений через пиксели изначально является аппроксимацией реальности (в отличии от, например, текста) “убивающей” структуру на нулевом шаге.
Один из примеров такой дискретизации — попытка решать изначально недискретные задачи (сегментация, детекция, сложная классификация) на дискретизированных данных в виде патчей.
Визуальные трансформеры (ViT, HieraViT и т.д.) — это последняя крупная попытка справиться с дискретизацией за счет того, что патчи начинают влиять друг на друга. Патч_1 становится описанием не только локального пространства, где он расположен, но и зависимости этого пространства от патча_2, 3 и т.д. Так удается в каком‑то смысле аппроксимировать области, размер которых отличается от размера патчей.
Проблема в том, что это влияние — дополнительная тренировочная нагрузка или дополнительное вычисление, которое само по себе тяжелое и не гарантирует, что нужные взаимосвязи будут найдены, особенно если границы и детали в данных могут быть то резкими, то плавными.
Исторически проблема патчей появилась именно в CNN. CNN работает чуть «умнее», чем трансформеры со стороны патчей — уровней патчей несколько (по одному на каждый слой), каждый со своим размером и позицией.
Но и здесь конечная «картина мира» собирается из объединения патчей друг с другом, что дает:
блочность на финальной карте признаков;
физически «странные» объединения несвязанных областей;
отсутствие глобального знания о том, как патчи связаны между собой.
Подход TAPe отличается тем, что, используя элементы TAPe как строительные блоки, можно использовать любое количество «патчей» любого размера. При этом:
нет необходимости выявлять непонятные взаимосвязи между патчами через внимание/само‑внимание — эти взаимосвязи уже известны заранее из теории TAPe;
нет необходимости на каждом уровне искать «лучшие» патчи для объединения в одно представление, как это делает CNN — «лучшие» элементы уже определены TAPe, задача архитектуры — правильно их использовать.
Универсальность архитект��ры приходит из того, что элементы теории TAPe — это набор известных строительных блоков, которые можно использовать «из коробки». Архитектура не зависит от того, с какими именно данными она работает, ей важен только класс задачи (сегментация, классификация, что‑то третье).
На уровне «черного ящика» T+ML можно воспринимать как универсальный feature extractor, работающий в TAPe‑пространстве.
Самый первый шаг для любой задачи:
input → T+ML → векторный выход TAPe‑элементов
Важно, что векторы не являются произвольными — они «живут» в одном и том же пространстве для решения любых задач. Этот выход можно использовать downstream для любых задач.
Получившийся векторный output, а также инструментарий TAPe обладают всеми необходимыми характеристиками для:
кластеризации данных;
поиска похожести между объектами;
построения устойчивого индекса для последующей работы моделей.
Кластеризацию можно спроецировать на любые необходимые классы. В отличие от стандартных моделей, архитектура:
может явно сказать, что те или иные изображения не относятся ни к одному из заданных классов;
измеряет, насколько объект близок к тому или иному классу.
Выход из сырого TAPe‑output на первом шаге натуральным образом позволяет проводить сегментацию изображения: каждый вектор относится к той или иной найденной точке в пространстве.
Отсюда:
Image Segmentation получается как разметка пространства по TAPe‑векторам;
Object Detection — как классификация сегментов, что позволяет находить не только заданные объекты, но и те, которые изначально не были предопределены.
Так как архитектура работает в одном TAPe‑пространстве, ее можно использовать для разных CV‑задач без «пересборки» с нуля:
Image Classification
Object Detection
Image Segmentation
Clustering & Similarity Search
Generative Models (GANs)
Feature Extraction (это то же самое, что и использование модели как backbone – а это уже позволяет использовать T+ML как drop-in replacement любого другого backbone, каким является та же самая DINO, например)
Здесь важен не датасет, а класс задачи: одна и та же архитектура может решать разные задачи, используя один и тот же принцип работы с TAPe‑элементами.
Несколько экспериментов, которые уже проведены.

В задаче iBOT модели нужно сгенерировать набор патчей по другим патчам: 30% изображения скрыто, модель должна восстановить их по оставшимся 70%. Это SSL‑архитектура, требующая большого количества данных.
Результат:
стандартная DINO на 9k и даже на 120k изображений не сходится по iBOT‑loss;
та же архитектура, но на TAPe‑данных, сходится с loss порядка 0.4 уже на 9k.
Даже в архитектуре, не предназначенной для TAPe‑данных, структурированное представление позволяет получить сходимость там, где стандартный подход «ломается».
Imagenette: TAPe vs сырые пиксели


Эксперимент:
сабсет ImageNet — Imagenette (10 классов);
3‑слойная CNN, ~516k параметров;
обучение на 10% данных без аугментаций.
Результат:
та же архитектура на TAPe‑данных достигает ~92% accuracy на валидации;
baseline на сырых пикселях при тех же условиях — около 47% и с заметно более хаотичной динамикой обучения.
MNIST и собственная архитектура T+ML

Следующим шагом стала разработка собственной архитектуры для правильной работы с TAPe‑данными. Первый тест — стандартная задача классификации MNIST (с более строгим split 40% train / 60% val).
Результат:
около 98.5% accuracy к 10‑й эпохе;
плавная сходимость при более сложной схеме валидации.
TAPe + ML — это разработка универсальной и эффективной архитектуры компьютерного зрения, которая начинается с осмысленного представления данных.
Дальше – в ближайшие недели – мы планируем масштабирование на большие датасеты (полный ImageNet и другие), расширение набора задач и бенчмарков, а также постепенное раскрытие деталей теории и реализации по мере развития экосистемы TAPe.
Задавайте вопросы. Особенно интересуют возражения, критика, сомнения.
Автор: oopatow
Источник [4]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/26356
URLs in this post:
[1] восприятия: http://www.braintools.ru/article/7534
[2] зрения: http://www.braintools.ru/article/6238
[3] обучения: http://www.braintools.ru/article/5125
[4] Источник: https://habr.com/ru/articles/1004788/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1004788
Нажмите здесь для печати.