Analyzing Machine Learning on Mainstream Microcontrollers

Machine learning in embedded systems has become a reality, with the first tools for neural network firmware development already being made available for ARM microcontroller developers. This paper explores the use of one of such tools, namely the STM X-Cube-AI, on mainstream ARM Cortex-M microcontrollers, analyzing their performance, and comparing support and performance of other two common supervised ML algorithms, namely Support Vector Machines (SVM) and k-Nearest Neighbours (k-NN). Results on three datasets show that X-Cube-AI provides quite constant good performance even with the limitations of the embedded platform. The workflow is well integrated with mainstream desktop tools, such as Tensorflow and Keras.

[1]  Liangzhen Lai,et al.  Enabling Deep Learning at the LoT Edge , 2018, 2018 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[2]  Weisong Shi,et al.  Edge Computing: Vision and Challenges , 2016, IEEE Internet of Things Journal.

[3]  Elisabetta Farella,et al.  Convolutional Neural Network on Embedded Platform for People Presence Detection in Low Resolution Thermal Images , 2019, ICASSP 2019 - 2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP).

[4]  Kyungsook Han,et al.  Computational Identification of Interaction Motifs in Hepatitis C Virus NS5A and Human Proteins , 2007, 2007 International Conference on Convergence Information Technology (ICCIT 2007).

[5]  Liliana Andrade,et al.  Overview of the state of the art in embedded machine learning , 2018, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).