Nowadays, the research and industrial interest in embedded-system applications and deep learning is steadily growing, leading to an expected wide diffusion of smart devices. Unfortunately, the completely different and contrasting technological and application requirements, e.g., in terms of computational and memory resources, seem to be an insurmountable obstacle for the novel distributed embedded real-time applications that ask for very low “data production to decision making”-latency to support autonomy and intelligence. In this challenging scenario, this thesis comes into play to propose a family of Convolutional Neural Networks aiming at tailoring deep learning to off-the-shelf embedded systems, hence extending the set of hardware platforms supporting deep learning in real-world distributed embedded applications. This novel family of Convolutional Neural Networks, called Approximated Convolutional Neural Networks, relies on ad-hoc CNN structure and on approximated mechanisms such as precision scaling and tasks dropping to reduce the required computational complexity and the memory occupation. The outcome of the thesis is a methodology that, given as input a dataset, a set of Convolutional Neural Networks and the technological constraints representing the embedded system scenario, provides the set of Approximated CNNs characterized by the largest accuracy and satisfying the required constraints. Then, the specific Approximated CNN selected by the designer is transformed into a C-code representation ready to run on the considered embedded system. In addition, a completely new hybrid architecture, called Exit-When-Ready, is proposed in this thesis. Its novelty resides in the ability of incrementally exploring the CNN and making the classification as soon as enough confidence is achieved. The proposed methodology has been deeply evaluated on a large experimental campaign on a publicly-available benchmark dataset and successfully applied to a real embedded system scenario, based on a STM32-F7 architecture.

Negli ultimi anni, l’interesse industriale e di ricerca nell’ambito dei sistemi dedicati e del deep learning è cresciuto costantemente. Sfortunatamente, i requisiti tecnologici e applicativi richiesti dalle due “tecnologie” sono contrastanti e sembrano un ostacolo insormontabile per lo sviluppo di nuove classi di applicazioni intelligenti e distribuite, vincolate da tempi molto ridotti per l’elaborazione dei dati raccolti. In questo scenario, questa tesi propone una famiglia di Convolutional Neural Networks capace di portare il deep learning sui sistemi dedicati off-the-shelf. In questo modo l’insieme di piattaforme hardware capaci di supportare tecniche di deep learning potrebbe essere notevolmente aumentato, aprendo a nuovi ambiti applicativi. Questa nuova famiglia di CNNs, denominata “CNNs approssimate”, si basa su nuove architetture e su meccanismi di computazione approssimata, come il tasks dropping o il precision scaling, per ridurre la complessità computazionale e la memoria occupata. Il risultato di questa tesi è una metodologia che, avendo a disposizione un dataset, un insieme di CNNs e i vincoli tecnologici rappresentanti il sistema dedicato considerato, propone, a un progettista di applicazioni embedded distribuite, un insieme di CNNs approssimate capaci di soddisfare i vincoli tecnologici e di affrontare efficacemente il problema di classificazione dato. Dopodiché, la CNN approssimata selezionata dal progettista può essere convertita in una versione implementata in Linguaggio C pronta per essere utilizzata sul sistema dedicato desiderato. Inoltre, questa tesi propone una CNN innovativa, chiamata Exit- When-Ready. La sua originalità risiede nella capacità di esplorare passo dopo passo la CNN, fornendo una predizione non appena ha raggiunto una confidenza nella classificazione sufficientemente alta. La metodologia proposta è stata testata su un dataset pubblico e applicata con successo in uno scenario reale basato su una architettura STM32-F7.

Approximated convolutional neural networks : where deep learning meets embedded systems

DISABATO, SIMONE
2016/2017

Abstract

Nowadays, the research and industrial interest in embedded-system applications and deep learning is steadily growing, leading to an expected wide diffusion of smart devices. Unfortunately, the completely different and contrasting technological and application requirements, e.g., in terms of computational and memory resources, seem to be an insurmountable obstacle for the novel distributed embedded real-time applications that ask for very low “data production to decision making”-latency to support autonomy and intelligence. In this challenging scenario, this thesis comes into play to propose a family of Convolutional Neural Networks aiming at tailoring deep learning to off-the-shelf embedded systems, hence extending the set of hardware platforms supporting deep learning in real-world distributed embedded applications. This novel family of Convolutional Neural Networks, called Approximated Convolutional Neural Networks, relies on ad-hoc CNN structure and on approximated mechanisms such as precision scaling and tasks dropping to reduce the required computational complexity and the memory occupation. The outcome of the thesis is a methodology that, given as input a dataset, a set of Convolutional Neural Networks and the technological constraints representing the embedded system scenario, provides the set of Approximated CNNs characterized by the largest accuracy and satisfying the required constraints. Then, the specific Approximated CNN selected by the designer is transformed into a C-code representation ready to run on the considered embedded system. In addition, a completely new hybrid architecture, called Exit-When-Ready, is proposed in this thesis. Its novelty resides in the ability of incrementally exploring the CNN and making the classification as soon as enough confidence is achieved. The proposed methodology has been deeply evaluated on a large experimental campaign on a publicly-available benchmark dataset and successfully applied to a real embedded system scenario, based on a STM32-F7 architecture.
ING - Scuola di Ingegneria Industriale e dell'Informazione
27-lug-2017
2016/2017
Negli ultimi anni, l’interesse industriale e di ricerca nell’ambito dei sistemi dedicati e del deep learning è cresciuto costantemente. Sfortunatamente, i requisiti tecnologici e applicativi richiesti dalle due “tecnologie” sono contrastanti e sembrano un ostacolo insormontabile per lo sviluppo di nuove classi di applicazioni intelligenti e distribuite, vincolate da tempi molto ridotti per l’elaborazione dei dati raccolti. In questo scenario, questa tesi propone una famiglia di Convolutional Neural Networks capace di portare il deep learning sui sistemi dedicati off-the-shelf. In questo modo l’insieme di piattaforme hardware capaci di supportare tecniche di deep learning potrebbe essere notevolmente aumentato, aprendo a nuovi ambiti applicativi. Questa nuova famiglia di CNNs, denominata “CNNs approssimate”, si basa su nuove architetture e su meccanismi di computazione approssimata, come il tasks dropping o il precision scaling, per ridurre la complessità computazionale e la memoria occupata. Il risultato di questa tesi è una metodologia che, avendo a disposizione un dataset, un insieme di CNNs e i vincoli tecnologici rappresentanti il sistema dedicato considerato, propone, a un progettista di applicazioni embedded distribuite, un insieme di CNNs approssimate capaci di soddisfare i vincoli tecnologici e di affrontare efficacemente il problema di classificazione dato. Dopodiché, la CNN approssimata selezionata dal progettista può essere convertita in una versione implementata in Linguaggio C pronta per essere utilizzata sul sistema dedicato desiderato. Inoltre, questa tesi propone una CNN innovativa, chiamata Exit- When-Ready. La sua originalità risiede nella capacità di esplorare passo dopo passo la CNN, fornendo una predizione non appena ha raggiunto una confidenza nella classificazione sufficientemente alta. La metodologia proposta è stata testata su un dataset pubblico e applicata con successo in uno scenario reale basato su una architettura STM32-F7.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2017_07_Disabato.pdf

solo utenti autorizzati dal 11/07/2020

Descrizione: Tesi
Dimensione 8.8 MB
Formato Adobe PDF
8.8 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi 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/10589/135124