XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks
publication

XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks

Mohammad Rastegari, Vicente Ordonez, Joseph Redmon, Ali Farhadi.
European Conference on Computer Vision. ECCV 2016. Amsterdam, The Netherlands. October 2016.
Новостная редакция лаборатории

Краткое изложение пресс-релиза

Этот раздел намеренно написан в стиле журналистского пресс-релиза для широкой аудитории.

Исследователи из Allen Institute for AI и University of Washington разработали способ радикально уменьшить и ускорить нейронные сети распознавания изображений, для работы которых обычно требуются дорогие, энергоёмкие GPU. Команда под руководством Mohammad Rastegari и Ali Farhadi взялась за простую, но важную проблему: стандартные свёрточные нейронные сети хранят свои внутренние параметры в виде 32-битных чисел с плавающей точкой и выполняют миллиарды высокоточных умножений для классификации одного изображения, что делает их непрактичными для смартфонов и других устройств с ограниченными ресурсами. Их решение, описанное в статье о двух связанных подходах под названиями Binary-Weight-Networks и XNOR-Networks, заменяет эти полноточные числа отдельными битами — по сути, просто положительными или отрицательными единицами — и заменяет дорогостоящие операции умножения с накоплением быстрыми инструкциями XNOR и подсчёта битов, которые современные CPU обрабатывают эффективно. Версия с бинарными весами сокращает использование памяти примерно в 32 раза и сравнялась с полноточной точностью стандартного AlexNet на крупномасштабном бенчмарке ImageNet, тогда как более агрессивная XNOR-Net, которая бинаризует как хранимые фильтры, так и данные, проходящие через сеть, достигла примерно 58-кратного ускорения свёрточных операций ценой некоторой потери точности. Принципиально, что исследователи ввели простой масштабирующий коэффициент — по сути, среднюю величину исходных весов, — который частично компенсирует информацию, теряемую при бинаризации, и они показывают, что именно эта деталь отличает их результаты от прежних попыток бинаризации, отстававших более чем на 16 процентных пунктов по top-1 точности на ImageNet. Практический вывод в том, что эффективные модели распознавания изображений могли бы работать в реальном времени на обычных CPU в телефонах или носимых устройствах, не нуждаясь в выгрузке в облако или специализированном оборудовании.

аннотация

Мы предлагаем два эффективных приближения для стандартных свёрточных нейронных сетей: Binary-Weight-Networks и XNOR-Networks. В Binary-Weight-Networks фильтры аппроксимируются бинарными значениями, что даёт 32-кратную экономию памяти. В XNOR-Networks бинарными являются как фильтры, так и входные данные свёрточных слоёв. XNOR-Networks аппроксимируют свёртки, используя преимущественно бинарные операции. Это даёт 58-кратное ускорение свёрточных операций и 32-кратную экономию памяти. XNOR-Nets открывают возможность запуска сетей современного уровня на CPU (а не на GPU) в реальном времени. Наши бинарные сети просты, точны, эффективны и работают на сложных задачах зрения. Мы оцениваем наш подход на задаче классификации ImageNet. Точность классификации у версии AlexNet с Binary-Weight-Network всего на 2,9% ниже, чем у полноточного AlexNet (по показателю top-1). Мы сравниваем наш метод с недавними методами бинаризации сетей, BinaryConnect и BinaryNets, и превосходим эти методы с большим отрывом на ImageNet — более чем на 16% по top-1 точности.

цитирование

@inproceedings{rastegari2016xnor,
  title = {XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks},
  author = {Rastegari, Mohammad and Ordonez, Vicente and Redmon, Joseph and Farhadi, Ali},
  year = {2016},
  booktitle = {European Conference on Computer Vision. ECCV 2016},
  url = {http://arxiv.org/abs/1603.05279},
}