Machine Learning on Mainstream Microcontrollers

This paper presents the Edge Learning Machine (ELM), a machine learning framework for edge devices, which manages the training phase on a desktop computer and performs inferences on microcontrollers. The framework implements, in a platform-independent C language, three supervised machine learning algorithms (Support Vector Machine (SVM) with a linear kernel, k-Nearest Neighbors (K-NN), and Decision Tree (DT)), and exploits STM X-Cube-AI to implement Artificial Neural Networks (ANNs) on STM32 Nucleo boards. We investigated the performance of these algorithms on six embedded boards and six datasets (four classifications and two regression). Our analysis-which aims to plug a gap in the literature-shows that the target platforms allow us to achieve the same performance score as a desktop machine, with a similar time latency. ANN performs better than the other algorithms in most cases, with no difference among the target devices. We observed that increasing the depth of an NN improves performance, up to a saturation level. k-NN performs similarly to ANN and, in one case, even better, but requires all the training sets to be kept in the inference phase, posing a significant memory demand, which can be afforded only by high-end edge devices. DT performance has a larger variance across datasets. In general, several factors impact performance in different ways across datasets. This highlights the importance of a framework like ELM, which is able to train and compare different algorithms. To support the developer community, ELM is released on an open-source basis.

Medienart:

E-Artikel

Erscheinungsjahr:

2020

Erschienen:

2020

Enthalten in:

Zur Gesamtaufnahme - volume:20

Enthalten in:

Sensors (Basel, Switzerland) - 20(2020), 9 vom: 05. Mai

Sprache:

Englisch

Beteiligte Personen:

Sakr, Fouad [VerfasserIn]
Bellotti, Francesco [VerfasserIn]
Berta, Riccardo [VerfasserIn]
De Gloria, Alessandro [VerfasserIn]

Links:

Volltext

Themen:

ANN
ARM
Decision trees
Edge analytics
Edge computing
Embedded devices
Journal Article
K-NN
Machine learning
STM32 Nucleo
SVM
X-Cube-AI

Anmerkungen:

Date Completed 13.05.2020

Date Revised 11.06.2020

published: Electronic

Citation Status PubMed-not-MEDLINE

doi:

10.3390/s20092638

funding:

Förderinstitution / Projekttitel:

PPN (Katalog-ID):

NLM309640431