Published 2022
| Version v1
Publication
Memory Efficient Binary Convolutional Neural Networks on Microcontrollers
Creators
Contributors
Description
Binarization is a machine learning optimization for limited resource devices that has achieved significant results in edge applications. As microcontrollers are the mainstream platform for field applications in industry, this article investigates memory efficient deployment of binary neural networks (BNNs) to such devices. To this end, we developed a library of binarized NN layers in platform-independent C language. The implementation optimizes the memory footprint by adapting the number of filters and neurons for each layer to the C language specifications (8 bit addressable spacing and 32 bit floating points). We tested the library by implementing a BNN for robotic touch classification on a Cortex-M7 microcontroller. Experimental results show the validity of the proposed hardware and software architecture, with improvements over the state of the art in robotic touch classification in terms of accuracy (+2%), memory footprint (+15%), and latency (+25%).
Additional details
Identifiers
- URL
- https://hdl.handle.net/11567/1106233
- URN
- urn:oai:iris.unige.it:11567/1106233
Origin repository
- Origin repository
- UNIGE