XNOR Net: ImageNet Classification Using Binary Convolutional Neural Networks
We propose two efficient approximations to standard convolutional neural networks: Binary Weight Networks and XNOR Networks. In Binary Weight Networks, the filters are approximated with binary values resulting in 32\\times memory saving. In XNOR Networks, both the filters and the input to convolutional layers are binary. XNOR Networks approximate convolutions using primarily binary operations. This results in 58\\times faster convolutional operations (in terms of number of the high precision operations) and 32\\times memory savings. XNOR Nets offer the possibility of running state of the art networks on CPUs (rather than GPUs) in real time. Our binary networks are simple, accurate, efficient, and work on challenging visual tasks. We evaluate our approach on the ImageNet classification task. The classification accuracy with a Binary Weight Network version of AlexNet is the same as the full precision AlexNet. We compare our method with recent network binarization methods, BinaryConnect and BinaryNets, and outperform these methods by large margins on ImageNet, more than (16\ in top 1 accuracy. Our code is available at: http:/allenai.org/plato/xnornet.
ECCV