XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks
Résumé du communiqué de presse
Des chercheurs de l'Allen Institute for AI et de l'Université de Washington ont mis au point une manière de réduire et d'accélérer considérablement les réseaux de neurones de reconnaissance d'images qui nécessitent habituellement des GPU coûteux et énergivores pour fonctionner. L'équipe, dirigée par Mohammad Rastegari et Ali Farhadi, s'est attaquée à un problème simple mais lourd de conséquences : les réseaux de neurones convolutifs standards stockent leurs paramètres internes sous forme de nombres à virgule flottante de 32 bits et effectuent des milliards de multiplications de haute précision pour classer une seule image, ce qui les rend peu adaptés aux smartphones et autres appareils aux ressources limitées. Leur solution, décrite dans un article portant sur deux approches connexes appelées réseaux à poids binaires (Binary-Weight-Networks) et réseaux XNOR (XNOR-Networks), remplace ces nombres en pleine précision par des bits uniques — essentiellement de simples valeurs positives ou négatives — et substitue aux coûteuses opérations de multiplication-accumulation des instructions rapides de XNOR et de comptage de bits que les CPU modernes traitent efficacement. La version à poids binaires réduit l'usage de la mémoire d'environ 32 fois et a égalé la précision en pleine précision d'AlexNet standard sur le banc d'essai à grande échelle ImageNet, tandis que le XNOR-Net plus radical, qui binarise à la fois les filtres stockés et les données circulant dans le réseau, a atteint des opérations de convolution environ 58 fois plus rapides, au prix d'une certaine perte de précision. De manière cruciale, les chercheurs ont introduit un simple facteur d'échelle — essentiellement la magnitude moyenne des poids d'origine — qui compense partiellement l'information perdue lors de la binarisation, et ils montrent que ce détail est ce qui distingue leurs résultats des tentatives de binarisation antérieures, qui accusaient un retard de plus de 16 points de pourcentage en précision top-1 sur ImageNet. L'implication pratique est que des modèles de reconnaissance d'images performants pourraient s'exécuter en temps réel sur des CPU ordinaires, dans des téléphones ou des objets connectés, sans nécessiter de délestage vers le cloud ni de matériel spécialisé.
résumé
Nous proposons deux approximations efficaces des réseaux de neurones convolutifs standards : les réseaux à poids binaires (Binary-Weight-Networks) et les réseaux XNOR (XNOR-Networks). Dans les réseaux à poids binaires, les filtres sont approchés par des valeurs binaires, ce qui entraîne une économie de mémoire d'un facteur 32. Dans les réseaux XNOR, à la fois les filtres et l'entrée des couches convolutives sont binaires. Les réseaux XNOR approchent les convolutions à l'aide d'opérations principalement binaires. Cela se traduit par des opérations de convolution 58 fois plus rapides et une économie de mémoire d'un facteur 32. Les réseaux XNOR offrent la possibilité d'exécuter des réseaux à l'état de l'art sur des CPU (plutôt que des GPU) en temps réel. Nos réseaux binaires sont simples, précis, efficaces et fonctionnent sur des tâches visuelles difficiles. Nous évaluons notre approche sur la tâche de classification ImageNet. La précision de classification d'une version à poids binaires d'AlexNet n'est inférieure que de 2,9 % à celle d'AlexNet en pleine précision (en mesure top-1). Nous comparons notre méthode aux méthodes récentes de binarisation de réseaux, BinaryConnect et BinaryNets, et surpassons ces méthodes par de larges marges sur ImageNet, de plus de 16 % en précision top-1.
citation
@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},
}