With the ever-increasing computational capacity of today's devices, with the increase in IoT (Internet of Things) devices, and with the continued evolution of the application sectors of artificial intelligence, Edge AI (Edge Artificial Intelligence) is an AI technology that is gaining more and more ground in the current digital landscape. This is certainly due to the availability of hardware that can handle the computational weight of AI algorithms, but the main reasons for this technology being increasingly used are rooted in issues of privacy and data security, which would otherwise have to be sent to a centralized computation center located in a place far from the data source itself, as well as the need for real-time data processing applications, such as robotics, IoT, augmented reality applications, and many others. However, the vast majority of today's applications are based on cloud technologies. Therefore, a methodology for communication between edge devices and computational clusters is necessary, which can often fail due to the possible network interruptions to which the devices are subjected. This can represent a problem, as edge applications may break down in the absence of connectivity. In addition, the maintenance and continuous software update at the edge is necessary to avoid device obsolescence. The goal of this thesis is to analyze the technologies useful for the implementation of an Edge AI software. Specifically, given the nature of edge data and the ever-increasing number of data generated by sensors, an emerging technology in the field of artificial intelligence, namely streaming machine learning, has been studied. The following chapters present the work done during the internship carried out at Radicalbit. The problems inherent in the classical machine learning paradigms are then defined, followed by a deeper exploration of the technologies for streaming machine learning. Subsequently, the technologies for deploying applications in cluster architectures with a focus on those specialized in edge deployment will be explored. Finally, the development of a real-life Edge AI application is carried out using the previously described technologies, with a particular focus on the results obtained by the AI models in the classic and edge architecture.

Con la sempre crescente capacità computazionale dei dispositivi odierni, con l’aumento dei dispositivi IoT (Internet of Things), con la continua evoluzione dei settori di applicazione dell’intelligenza artificiale, l’Edge AI (Edge Artificial Intelligence) è una tecnologia di intelligenza artificiale che sta guadagnando sempre più piede nel panorama digitale odierno. Questo è certamente dovuto alla isponibilità di hardware in grado di reggere il peso computazionale di algoritmi di intelligenza artificiale, ma le motivazioni principali per cui questa tecnologia è sempre più utilizzata trovano le loro radici più profonde nelle tematiche riguardanti la privacy e sicurezza dei dati, che altrimenti dovrebbero essere mandati in un centro di calcolo centralizzato ubicato in un posto lontano dalla fonte generatrice del dato stesso, oltre che la necessità di applicazioni che elaborino i dati in tempo reale, come ad esempio la robotica, l’IoT, le applicazioni in realtà aumentata, e molte altre. Tuttavia, la stragrande maggioranza delle applicazioni odierne si basa su tecnologie cloud. Risulta quindi necessaria una metodologia per la comunicazione tra dispositivi edge ed i cluster computazionali, comunicazione che molto spesso può venir meno a causa delle possibili interruzioni di rete cui i dispositivi sono sottoposti. Questo può rappresentare un problema, in quanto le applicazioni edge potrebbero interrompersi in caso di mancanza di connettività. Inoltre, la manutenzione ed il continuo aggiornamento del software all’edge risulta necessario al fine di evitare l’obsolescenza dei dispositivi. L’obiettivo di questo lavoro di tesi è quello di effettuare un’analisi delle tecnologie utili all’implementazione di un software di Edge AI. Nello specifico, data la natura dei dati edge e la sempre crescente numerosità di dati generati da sensori, si è approfondita una tecnologia emergente per quanto riguarda il campo dell’intelligenza artificiale ovvero lo streaming machine learning. Nei capitoli che seguono viene presentato il lavoro svolto durante l’attività di tirocinio svolta presso l’azienda Radicalbit. Vengono quindi definite le problematiche inerenti i paradigmi classici di machine learning, per poi passare ad un approfondimento delle tecnologie per lo streaming machine learning. Successivamente verranno approfondite le tecnologie per il deployment di applicazioni in architetture cluster con un focus in quelle specializzate sul tema dell’edge deployment. Infine viene effettuato lo sviluppo di una applicazione di Edge AI basata su un caso d’uso reale, utilizzando le tecnologie precedentemente descritte, con una attenzione particolare ai risultati ottenuti dai modelli di intelligenza artificiale nell’architettura classica ed edge.

Analisi e Benchmarking di algoritmi per lo Streaming Machine Learning e tecnologie per l'edge deployment

D'AGOSTINO, LORENZO
2021/2022

Abstract

With the ever-increasing computational capacity of today's devices, with the increase in IoT (Internet of Things) devices, and with the continued evolution of the application sectors of artificial intelligence, Edge AI (Edge Artificial Intelligence) is an AI technology that is gaining more and more ground in the current digital landscape. This is certainly due to the availability of hardware that can handle the computational weight of AI algorithms, but the main reasons for this technology being increasingly used are rooted in issues of privacy and data security, which would otherwise have to be sent to a centralized computation center located in a place far from the data source itself, as well as the need for real-time data processing applications, such as robotics, IoT, augmented reality applications, and many others. However, the vast majority of today's applications are based on cloud technologies. Therefore, a methodology for communication between edge devices and computational clusters is necessary, which can often fail due to the possible network interruptions to which the devices are subjected. This can represent a problem, as edge applications may break down in the absence of connectivity. In addition, the maintenance and continuous software update at the edge is necessary to avoid device obsolescence. The goal of this thesis is to analyze the technologies useful for the implementation of an Edge AI software. Specifically, given the nature of edge data and the ever-increasing number of data generated by sensors, an emerging technology in the field of artificial intelligence, namely streaming machine learning, has been studied. The following chapters present the work done during the internship carried out at Radicalbit. The problems inherent in the classical machine learning paradigms are then defined, followed by a deeper exploration of the technologies for streaming machine learning. Subsequently, the technologies for deploying applications in cluster architectures with a focus on those specialized in edge deployment will be explored. Finally, the development of a real-life Edge AI application is carried out using the previously described technologies, with a particular focus on the results obtained by the AI models in the classic and edge architecture.
2021
2023-02-17
Analysis and Benchmarking of algorithms for Streaming Machine Learning and technologies for edge deployment
Con la sempre crescente capacità computazionale dei dispositivi odierni, con l’aumento dei dispositivi IoT (Internet of Things), con la continua evoluzione dei settori di applicazione dell’intelligenza artificiale, l’Edge AI (Edge Artificial Intelligence) è una tecnologia di intelligenza artificiale che sta guadagnando sempre più piede nel panorama digitale odierno. Questo è certamente dovuto alla isponibilità di hardware in grado di reggere il peso computazionale di algoritmi di intelligenza artificiale, ma le motivazioni principali per cui questa tecnologia è sempre più utilizzata trovano le loro radici più profonde nelle tematiche riguardanti la privacy e sicurezza dei dati, che altrimenti dovrebbero essere mandati in un centro di calcolo centralizzato ubicato in un posto lontano dalla fonte generatrice del dato stesso, oltre che la necessità di applicazioni che elaborino i dati in tempo reale, come ad esempio la robotica, l’IoT, le applicazioni in realtà aumentata, e molte altre. Tuttavia, la stragrande maggioranza delle applicazioni odierne si basa su tecnologie cloud. Risulta quindi necessaria una metodologia per la comunicazione tra dispositivi edge ed i cluster computazionali, comunicazione che molto spesso può venir meno a causa delle possibili interruzioni di rete cui i dispositivi sono sottoposti. Questo può rappresentare un problema, in quanto le applicazioni edge potrebbero interrompersi in caso di mancanza di connettività. Inoltre, la manutenzione ed il continuo aggiornamento del software all’edge risulta necessario al fine di evitare l’obsolescenza dei dispositivi. L’obiettivo di questo lavoro di tesi è quello di effettuare un’analisi delle tecnologie utili all’implementazione di un software di Edge AI. Nello specifico, data la natura dei dati edge e la sempre crescente numerosità di dati generati da sensori, si è approfondita una tecnologia emergente per quanto riguarda il campo dell’intelligenza artificiale ovvero lo streaming machine learning. Nei capitoli che seguono viene presentato il lavoro svolto durante l’attività di tirocinio svolta presso l’azienda Radicalbit. Vengono quindi definite le problematiche inerenti i paradigmi classici di machine learning, per poi passare ad un approfondimento delle tecnologie per lo streaming machine learning. Successivamente verranno approfondite le tecnologie per il deployment di applicazioni in architetture cluster con un focus in quelle specializzate sul tema dell’edge deployment. Infine viene effettuato lo sviluppo di una applicazione di Edge AI basata su un caso d’uso reale, utilizzando le tecnologie precedentemente descritte, con una attenzione particolare ai risultati ottenuti dai modelli di intelligenza artificiale nell’architettura classica ed edge.
File in questo prodotto:
File Dimensione Formato  
Tesi_di_laurea_Lorenzo_DAgostino.pdf

accesso aperto

Descrizione: Tesi di laurea Lorenzo D'Agostino
Dimensione 4.89 MB
Formato Adobe PDF
4.89 MB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12075/12010