Politecnico di Torino (logo)

Tiny Machine Learning for Edge Computing in IoT Systems

Andrea De Simone

Tiny Machine Learning for Edge Computing in IoT Systems.

Rel. Fabrizio Riente, Giovanna Turvani. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Elettronica (Electronic Engineering), 2023


Nowadays, Artificial Intelligence (AI) is widely employed in solving complex problems where it is difficult to define an algorithm that allows finding a reliable solution. Applications of AI include image recognition, speech-to-text translation, environmental classification, and many more. The classical approach to a classification task consists in training a Machine Learning (ML) model using a huge dataset with labeled data, where each input sample is associated with the correct class, to produce a network that using only multiplication and accumulation operations by weight, determined during training, is able to infers the correct class starting from unseen data, in the best possible way. Several types of ML models can be used to reach the goal and between the models, different configurations and parameters results in different performances. Regarding the evaluation of the model, various scores and criteria can be used to assess different capabilities and lacks of the network. One advantage of AI approach is the clear separation between the training and inference phases. Training can be conducted on a device or server with high hardware resources and large amount of memory space, in order to train the model with as much data as possible, improving the precision of the predictions. The inference operation is much easier to compute, and furthermore, can be performed on a compressed or quantized version of the model, enabling it to run on an embedded system with with limited memory and hardware resources. This allows to integrate into Internet of Thing (IoT) systems, small AI networks, that post-process the collected data directly at the edge, without the need to pass through an external cloud or device, with a improvement of efficiency and latency. The first goal of this thesis is to develop an environment in Python that is capable of building and assessing different types of classification models with variable configurations and sizes. It should also be able to import and concatenate features from different datasets and offer the possibility to quantize the network to reduce the total memory requirements for running the model. This environment can be used to select and train the best model for predicting the presence of a queen bee inside a beehive. Two open-source datasets, based on audio recordings made inside a beehive, are employed to train the model, and have been determined which are the best features and the best selection method to apply. Several tests are conducted using different types of machine learning model to identify the final model that will be integrated in the IoT system. The goal is to find a compact model, with low power consumption but high accuracy, because the device is powered by a battery. The system employs a microcontroller equipped with environmental sensors and a microphone to record audio sounds, which will serve as input for the AI network. The second part is focused on the integration of the ML model into the microcontroller, including feature extraction, preprocessing of the features, and execution of the inference.

Relators: Fabrizio Riente, Giovanna Turvani
Academic year: 2023/24
Publication type: Electronic
Number of Pages: 114
Additional Information: Tesi secretata. Fulltext non presente
Corso di laurea: Corso di laurea magistrale in Ingegneria Elettronica (Electronic Engineering)
Classe di laurea: New organization > Master science > LM-29 - ELECTRONIC ENGINEERING
Aziende collaboratrici: UNSPECIFIED
URI: http://webthesis.biblio.polito.it/id/eprint/28523
Modify record (reserved for operators) Modify record (reserved for operators)