Матричные сети (xNets) — это нейросетевая архитектура, которая специально адаптирована под задачу распознавания объектов на изображении. xNet учитывает пропорции объектов на изображении. На задаче key-point based распознавания объектов xNet обошла другие single-shot архитектуры. При этом параметров нейросеть требует вполовину меньше и обучается в три раза быстрее.
Существующие single-shot детекторы для задачи key-point based распознавания объектов имеют два ограничения. Ограничения связаны с использованием одного выходного слоя. Первый — модели требуют крупных, вычислительно сложных базовых моделей (backbones). Второе — модели имеют сложности с точным соотнесением верхнего левого и нижнего правого углов. Чтобы обойти эти ограничения, исследователи предлагают keypointmatrixnet (KP-xNet). keypointmatrixnet испольует ResNet50, Resnet-101 и ResNeXt-101 в качестве базовых моделей. Модель распознает углы для объектов разных размеров и пропорций через разные матричные слои.
xNet переносит объекты разных размеров и пропорций в слои, где пропорции объектов с их слоями близки к равномерному распределению. Ниже видно сравнение стандартного подхода для распознавания объектов, — Feature Pyramid Network, — и матричной нейросети. В матричной нейросети 5 FPN слоев представляются на диагонали матрицы. Остальная часть матрицы заполняется слоями из диагонали, к которым был применен даунсемплинг.
Как это работает изнутри
Ключевое преимущество матричной нейросети заключается в том, что они слои сети формируют квадратный сверточный кернел, который позволяет кодировать информацию о пропорциях распознанного объекта. В стандартных моделях для распознавания объектов таких, как RetinaNet, квадратный сверточный кернел должен выдавать границы объектов разного масштаба и пропорций. Такая логика контринтуитивна, потому как границы объектов разных форм и размеров требуют разные контексты.
В матричных нейросетях это ограничение обходится. Разные матричные слои представляют разные контексты. Поэтому модель распознают границы объектов разного размера и формы. MatrixNets можно использовать как базовую модель для любой архитектуры модели для распознавания объектов.
KP-xNet — это матричная нейросеть, адаптированная под задачу key-based распознавания объектов. Модель состоит из 4-х компонентов. Первые два компонента — это стандартная xNet. Затем подсеть для каждого матричного слоя предсказывает тепловые карты для верхнего левого и нижнего правого углов. Предсказания центрируются. Углы границ объекта объединяются на том же слое подсети.
Сравнение с другими архитектурами
Исследователи протестировали xNet и state-of-the-art модели на данных MS COCO. В качестве метрики использовали mAP. Ниже видно, что xNet достигает 47.8% mAP, что выше, чем результаты остальных моделей.