ICCV2021 | MicroNet: Улучшение распознавания изображений с очень низкими значениями FLOP

компьютерное зрение

​**Предисловие: **Эта статья направлена ​​на решение проблемы значительного ухудшения производительности при чрезвычайно низких вычислительных затратах. Предложена свертка с дифференциальной декомпозицией, которая разлагает матрицу свертки на матрицу низкого ранга и интегрирует разреженные связи в свертка. Предлагается новая функция динамической активации, Dynamic Shift Max, для улучшения нелинейности за счет максимизации множественных динамических слияний между входными картами объектов и их циклическими сдвигами каналов.

На основе этих двух новых операций получается семейство сетей под названием MicroNet, в котором достигается значительное улучшение производительности по сравнению с современными технологиями в механизме с низким FLOP. При ограничении в 12 млн FLOP MicroNet достигает 59,4% точности по классификации ImageNet, что на 9,6% выше, чем у MobileNetV3.

Диссертация: MicroNet: улучшение распознавания изображений с чрезвычайно низкими значениями FLOP.

Код:GitHub.com/Ли Юньшэн1…

Обратите внимание, сосредоточьтесь на техническом обзоре компьютерного зрения, новейших технологий отслеживания и интерпретации классических статей.

отправная точка диссертации

Недавние достижения в области эффективных архитектур CNN успешно снизили вычислительные затраты на классификацию ImageNet с 3,8G FLOP (ResNet-50) на два порядка до примерно 40M FLOP (например, MobileNet, ShuffleNet) при разумном снижении производительности.

Однако при дальнейшем снижении вычислительных затрат они страдают от значительного снижения производительности. Например, первая точность MobileNetV3 резко падает с 65,4% до 58,0% и 49,8%, когда вычислительные затраты падают с 44 млн до 21 млн и 12 млн MAdd соответственно.

Целью этой статьи является снижение точности с 21M до 4M MAdds при очень низком уровне FLOP, что означает снижение вычислительных затрат еще на один порядок.

Очень сложно решить проблему чрезвычайно низкой вычислительной стоимости (4M-21M FLOP), учитывая, что размер входных данных составляет 224x224x3, 2,7M MAdd потребляются на первом слое свертки 3x3, выходной канал 8 операции . Остальные ресурсы слишком ограничены для разработки сверточных слоев и классификаторов на 1000 классов, необходимых для эффективной классификации.

图片

Как показано на рисунке выше, общие стратегии уменьшения ширины или глубины существующих эффективных CNN, таких как MobileNet и ShuffleNet, приводят к серьезному снижению производительности.

В этой статье основное внимание уделяется новому дизайну оператора с фиксированным входным разрешением 224×224 с запланированной стоимостью 4 млн флопс.

Инновационные идеи

В этой статье рассматриваются чрезвычайно низкие FLOP с двух точек зрения: связность узлов и нелинейность, которые связаны с шириной и глубиной сети.

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

Methods

Micro-Factorized Convolution

Разделен на две части: микрофакторизованная точечная свертка и микрофакторизованная глубинная свертка, которые по-разному комбинируются.

Micro-Factorized Pointwise Convolution

В статье предлагается свертка с дифференциальной декомпозицией (MF-Conv) для разложения точечной свертки на два слоя групповой свертки, где количество групп G адаптируется к количеству каналов C следующим образом: G = sqrt(C/R)

где R - коэффициент уменьшения канала между ними.

При заданных вычислительных затратах это уравнение обеспечивает хороший компромисс между количеством каналов и узловыми соединениями.

图片

Как показано на рисунке выше, количество входных каналов C делится на группы G, а затем группа G уменьшается с помощью матрицы перестановки Φ в середине (C/R × C/R), которая аналогична перестановке матрица в shufflenet.

Micro-Factorized Depthwise Convolution

图片

Эта часть относится к декомпозированной свертке в Inception_v2, На основе использования Depthwise ядро ​​свертки KxK разделено на части Kx1 и 1xK.

Микрофакторизованные точечные и глубинные свертки можно комбинировать двумя различными способами: (а) обычная комбинация и (б) облегченная комбинация.

图片

Первый просто объединяет две свертки. Показанная выше упрощенная комбинация использует дифференциально разложенные свертки по глубине для увеличения количества каналов путем применения нескольких пространственных фильтров к каждому каналу. Затем применяется набор адаптивных сверток для объединения и сжатия количества каналов. По сравнению с его обычной комбинацией, он тратит больше ресурсов на изучение пространственных фильтров (по глубине) за счет экономии вычислений слияния каналов (поточечно), что эмпирически доказывается более эффективным для реализации более низких сетевых уровней.

Dynamic Shift-Max

Учитывая, что точечная свертка Micro-Factorized уделяет больше внимания связям внутри групп, мы предлагаем Dynamic Shift-Max, новую динамическую нелинейность для усиления связей между группами, созданными Micro-Factorized.

Dynamic Shift-Max выводит максимальное значение K объединений, каждое из которых объединяет несколько (J) наборов сдвигов как

图片

Где J представляет количество групп, i представляет количество каналов, а K представляет количество выходов после слияния. Когда J=K=2, может быть достигнут хороший компромисс между точностью и сложностью.

Эта формула поясняется одним предложением: для каждой группы J взвешивается и суммируется x каждой группы, всего имеется K слияний, а затем максимальное значение K берется в качестве значения функции активации на i-й группе. й канал.

Таким образом, DY-Shift-Max реализует две формы нелинейности: (а) за счет вывода максимального значения K слияний J групп и (б) за счет динамических параметров.

Первая нелинейность дополняет точечную свертку Micro-Factorized, которая фокусируется на связях внутри каждой группы, укрепляя связи между группами. Второй позволяет сети корректировать это подкрепление на основе входных данных x. Эти две операции увеличивают репрезентативную мощность сети, компенсируя потери, вызванные уменьшением количества слоев.

MicroNet

图片

图片

Conclusion

图片

При ограничении в 12 млн FLOP MicroNet достигает 59,4% точности по классификации ImageNet, что на 9,6% выше, чем у MobileNetV3.

图片

Оценка классификации ImageNet. Слева: точность топ-1 против флопов. Справа: первая точность по сравнению с задержкой. Обратите внимание на добавление MobileNetV3 × 0,75 для сравнения. MicroNet превосходит MobileNetV3, особенно с чрезвычайно низкими вычислительными затратами (улучшение точности более чем на 5%, когда FLOP менее 15M или задержка менее 9 мс).

图片

Сравнение динамического Shift-Max с другими функциями активации на ImageNet.