Новая архитектура нейросети — EfficientDet

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
Привет, Хабр! представляю вашему вниманию разбор статьи «EfficientDet: Scalable and Efficient Object Detection» автора Mingxing Tan, Ruoming Pang, Quoc V. Le.

В последние годы был достигнут огромный прогресс в направлении более точного обнаружения объектов, в то же время современные детекторы объектов также становятся все более затратными. Затраты на вычислительные процессы и дорогостоящие вычисления сдерживают их развертывание во многих реальных приложениях, таких как робототехника и автомобили с автопилотом, где размер модели и задержка сильно ограничены. Учитывая эти ограниченные ресурсы реального мира, эффективность модели становится все более важной для обнаружения объектов.
Было много предыдущих работ, направленных на разработку более эффективных архитектур детекторов. Часто такие работы имеют тенденцию достигать большей эффективности, жертвуя точностью. Возникает естественный вопрос: можно ли построить масштабируемую архитектуру обнаружения с более высокой точностью и большей эффективностью при широком спектре ограничений ресурсов? Создатели EfficientDet считают, что нашли ответ на этот вопрос.

EfficientDet: масштабируемое и эффективное обнаружение объектов


image

В приведенной выше таблице видно, что EfficientDet
достигает гораздо более высокой точности при меньшем количестве вычислений,
чем другие детекторы.

Что же представляет из себя архитектура EfficientDet?


image
Общая архитектура EfficientDet в значительной степени соответствует парадигме одноступенчатых (one-stage) детекторов. За основу взята EfficientNet, предобученная на ImageNet, к ней приделан слой со взвешенной двунаправленной
пирамидой признаков (BiFPN), за которым идёт классовая и блочная сеть для генерации предсказаний класса объекта и ограничивающего прямоугольника соответственно.

Немного о BiFPN:


Идея создания двунаправленной пирамиды признаков появилась после изучения производительности и эффективности сетей для улучшения масштабирования: FPN, PANet и NAS-FPN. PANet достигает лучшей точности, чем FPN и NAS-FPN, но с затратами на большее количество параметров и вычислений. Чтобы повысить эффективность модели, предлагалось несколько оптимизаций для кросс-масштабных соединений:
  • во-первых, удалить те узлы, которые имеют только один входной фронт. Интуиция проста: если у узла есть только один входной фронт без объединения функций, то он будет иметь меньший вклад в сеть объектов, которая нацелена на объединение различных функций. Это приводит к упрощенной PANet, как показано на рисунке 2 (е);
  • Во-вторых, добавить дополнительное ребро из исходного ввода в выходной узел, если они находятся на одном уровне, чтобы объединить больше функций без дополнительных затрат, как показано на рисунке 2 (е);
  • В-третьих, в отличие от PANet, который имеет только один путь сверху вниз и один путь снизу вверх, мы рассматриваем каждый двунаправленный (сверху вниз и снизу вверх) путь как один слой сети объектов и повторяем один и тот же уровень несколько раз, чтобы включить более высокоуровневый фьюжн.

image
Конструкция сети признаков —
(a) FPN вводит нисходящий путь для того чтобы сплавить многомасштабные характеристики от уровня 3 к 7 (P3 — P7);
(b) PANet добавляет дополнительный путь снизу вверх поверх FPN;
© NAS-FPN использует нейронную архитектуру
поиск для поиска нерегулярной топологии сети объектов;
(d) добавляет дорогие соединения от всех входных объектов к выходным объектам;
(e) упрощает панель путем удаления некоторых узлов;
(f) наш BiFPN с более лучшими компромиссами точности и эффективности.

image
В таблице показано, как начиная с RetinaNet (ResNet50 + FPN), энкодер был заменен на EfficientNet-B3, а затем базовый FPN был заменен на BiFPN, точность при каждом изменении выростала.

image
Также в EfficientDet используется хитрая фунцкия вместо SoftMax, в основе которой лежит метод быстрой нормализации слияния, который обеспечивает такую ​​же точность, что и слияние на основе Softmax, но работает быстрее в 1,26-1,31 раза на графических процессорах.

image
Также была улучшена производительность в классификации изображений с помощью совместного увеличения всех размеров сети, глубины и входного разрешения.
На графике показано сравнение различных методов масштабирования. Все методы улучшают точность, но комплексный метод масштабирования обеспечивает лучшую компромиссную точность и эффективность.

image
На рисунке можно увидеть сравнение размера модели и задержки вывода:
задержка измеряется с размером батча 1 на одной и той же машине,
оснащенной графическим процессором Titan V и процессором Xeon. AN обозначает AmoebaNet + NAS-FPN, предобученную с аугментациями.

Вывод:


В результате систематического изучения различных вариантов проектирования архитектуры сети для эффективного обнаружения объектов предложена взвешенная двунаправленная функциональная сеть и настраиваемый метод составного масштабирования для повышения точности и эффективности. На основе этих оптимизаций было разработано новое семейство детекторов под названием EfficientDet, которые последовательно достигают большей точности и эффективности, чем предшествующий уровень техники, при широком спектре ограничений по ресурсам. В частности, наш EfficientDet-D7 достигает современной точности с меньшим количеством параметров и FLOPS, чем лучший из существующих детекторов. EfficientDet также в 3,2 раза быстрее на GPU и в 8,1 раза быстрее на CPU.

Источник: Mingxing Tan Ruoming Pang Quoc V. Le
Google Research, Brain Team «EfficientDet: Scalable and Efficient Object Detection»
arxiv.org/abs/1911.09070
Источник: https://habr.com/ru/post/503766/


Интересные статьи

Интересные статьи

Не так давно я писал про волейбольный сервис, теперь пришло время описать его с технической точки зрения. Возможно, общественное сознание найдет изъяны в архитектуре и подтолкнет к луч...
Судя по числу вопросов, которые нам стали прилетать по SD-WAN, технология начала основательно приживаться в России. Вендоры, естественно, не дремлют и предлагают свои концепции, а нек...
В прошлом посте я рассказал об эволюции систем BI и о том, как мы пришли к пониманию, что лучше создать свою платформу, чем приспосабливаться к существующим. Сегодня, как и обещал, рассказ...
Логические элементы Доброго времени суток, я начинаю серию статей по написанию виртуальной машины на языке Golang. Я выбрал этот язык так как он прост для чтения и имеет в стандартной библиотеке...
Согласно многочисленным исследованиям поведения пользователей на сайте, порядка 25% посетителей покидают ресурс, если страница грузится более 4 секунд.