Embedded Binarized Neural Networks
arXiv:1709.02260
Abstract
We study embedded Binarized Neural Networks (eBNNs) with the aim of allowing current binarized neural networks (BNNs) in the literature to perform feedforward inference efficiently on small embedded devices. We focus on minimizing the required memory footprint, given that these devices often have memory as small as tens of kilobytes (KB). Beyond minimizing the memory required to store weights, as in a BNN, we show that it is essential to minimize the memory used for temporaries which hold intermediate results between layers in feedforward inference. To accomplish this, eBNN reorders the computation of inference while preserving the original BNN structure, and uses just a single floating-point temporary for the entire neural network. All intermediate results from a layer are stored as binary values, as opposed to floating-points used in current BNN implementations, leading to a 32x reduction in required temporary space. We provide empirical evidence that our proposed eBNN approach allows efficient inference (10s of ms) on devices with severely limited memory (10s of KB). For example, eBNN achieves 95\% accuracy on the MNIST dataset running on an Intel Curie with only 15 KB of usable memory with an inference runtime of under 50 ms per sample. To ease the development of applications in embedded contexts, we make our source code available that allows users to train and discover eBNN models for a learning task at hand, which fit within the memory constraint of the target device.
References in corpus (4)
- Binarized Neural Networks: Training Deep Neural Networks with Weights and Activations Constrained to +1 or -1
- BinaryConnect: Training Deep Neural Networks with binary weights during propagations
- XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks
- Identity Mappings in Deep Residual Networks
Cited by in corpus (9)
- Convergence of Edge Computing and Deep Learning: A Comprehensive Survey
- BS4NN: Binarized Spiking Neural Networks with Temporal Coding and Learning
- Distributed Deep Neural Networks over the Cloud, the Edge and End Devices
- Musical Chair: Efficient Real-Time Recognition Using Collaborative IoT Devices
- An Encoding Framework for Binarized Images using HyperDimensional Computing
- Accelerating Binarized Neural Networks via Bit-Tensor-Cores in Turing GPUs
- A Unified Optimization Approach for CNN Model Inference on Integrated GPUs
- Incomplete Dot Products for Dynamic Computation Scaling in Neural Network Inference
- Scaling Up Deep Neural Network Optimization for Edge Inference