Eugenio Ressa
An Efficient Hardware Accelerator for Class Incremental Deep Neural Networks.
Rel. Guido Masera, Alberto Marchisio. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2023
|
PDF (Tesi_di_laurea)
- Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives. Download (1MB) | Preview |
Abstract: |
Il machine learning (ML) e le reti neurali (NN) hanno grosse potenzialità in molti campi, tra cui quello della classificazione di immagini, suoni, segnali, ecc. Alcuni task di riconoscimento e classificazione, come lo speech e l’image recognition, non sarebbero possibili con algoritmi classici, ma solo tramite algoritmi di ML. Tuttavia, gli algoritmi di ML sono molto pesanti da un punto di vista computazionale, di consumo di memoria e di energia, che non li rendono quindi adatti per sistemi embedded, i quali sono equipaggiati con processori dell’ordine del Mhz e pochi MB di memoria. Per questo motivo, molti acceleratori HW sono stati sviluppati, che riescono a mantenere un basso consumo di potenza e a ridurre i tempi di calcolo di decine di volte. Ciononostante questi acceleratori sono statici nelle task che possono eseguire, nel senso che non possono essere allenati ulteriormente per imparare e quindi incrementare il numero di task eseguibili, senza dimenticare i task precedentemente imparati. Da qui nascono gli studi sul Continual Learning (CL), ovvero la capacità di aumentare la quantità di task eseguibili degli acceleratori, come, ad esempio, il numero di immagini riconoscibili e classificabili nell’ image recognition. Gli studi sul CL hanno proposto diversi algoritmi che permettono di continuare ad allenare la NN con nuove task, evitando che essa dimentichi i task precedentemente imparati. Uno di questi, il GDumb, è riuscito ad ottenere tra i migliori risultati su dataset quali CIFAR 100 e ImageNet 100, salvando in numero omogeneo le immagini di training: nella memoria atta a salvare una parte dei dati di training, ogni classe deve avere lo stesso numero di immagini, cosicché dopo un ciclo di training, la rete imparerà in egual modo le varie task L'obiettivo di questa tesi è quindi quello di sviluppare un acceleratore per l’image recognition capace di incrementare il numero di classi riconoscibili, utilizzando l’algoritmo GDumb. La classificazione di immagini avviene tramite algoritmi di tipo convoluzionale pesati, i cui pesi vengono ottimizzati e migliorati per raggiungere la miglior accuratezza possibile. Nel caso di una richiesta di aumento di classi da riconoscere, un ciclo di ottimizzazione verrà eseguito per ri-allenare i pesi. L’acceleratore integra una serie di multiply and accumulate, delle memorie atte a salvare i pesi e le immagini per l’allenamento, un'unità di controllo che coordina le fasi di inference e training, a seconda della necessità. L’implementazione dell’acceleratore proposto, sintetizzato usando una libreria 65nm CMOS, ottiene una riduzione 6x dei tempi di training e di inference, rispetto alla versione originale eseguita su una NVIDIA Tesla P100. |
---|---|
Relators: | Guido Masera, Alberto Marchisio |
Academic year: | 2023/24 |
Publication type: | Electronic |
Number of Pages: | 45 |
Subjects: | |
Corso di laurea: | Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering) |
Classe di laurea: | New organization > Master science > LM-32 - COMPUTER SYSTEMS ENGINEERING |
Aziende collaboratrici: | Politecnico di Torino |
URI: | http://webthesis.biblio.polito.it/id/eprint/29314 |
Modify record (reserved for operators) |