How to train accurate BNNs for embedded systems?
Floran de Putter, Henk Corporaal

TL;DR
This paper reviews various repair methods to improve the accuracy of binary neural networks (BNNs) for embedded systems, analyzing their effectiveness and discussing future research directions.
Contribution
It provides an empirical overview of repair techniques for BNNs, categorizes them, and evaluates their benefits on benchmark datasets, highlighting promising approaches.
Findings
Feature binarizer, feature normalization, and double residual are most beneficial repair methods.
Progress has been made in reducing the accuracy gap of BNNs.
Trade-offs between accuracy improvements and energy costs are discussed.
Abstract
A key enabler of deploying convolutional neural networks on resource-constrained embedded systems is the binary neural network (BNN). BNNs save on memory and simplify computation by binarizing both features and weights. Unfortunately, binarization is inevitably accompanied by a severe decrease in accuracy. To reduce the accuracy gap between binary and full-precision networks, many repair methods have been proposed in the recent past, which we have classified and put into a single overview in this chapter. The repair methods are divided into two main branches, training techniques and network topology changes, which can further be split into smaller categories. The latter category introduces additional cost (energy consumption or additional area) for an embedded system, while the former does not. From our overview, we observe that progress has been made in reducing the accuracy gap, but…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Neural Network Applications · Machine Learning in Materials Science · Machine Learning and ELM
MethodsRepair
