Progetto di architetture digitali di machine learning su logica programmabile per applicazioni automotive
Autore
Enrico Musciacchio - Università degli studi di Genova - [2006-07]
Documenti
Abstract
La tesi si inquadra nel filone della ricerca di metodi per la realizzazione
hardware di architetture per "pattern recognition" all'interno di circuiti programmabili (FPGA): in particolare, si considera la loro evoluzione più recente, ovvero le Support Vector Machine (SVM). La realizzazione hardware di algoritmi di machine learning, come le reti neurali e SVM, ha infatti recentemente attratto un grande interesse della comunità scientifica, riscuotendo ottimi risultati nei vari ambiti applicativi. I principali vantaggi della tecnica di SVM riguardano il processo di apprendimento (che è un problema di ottimizzazione quadratica convesso, di cui si può trovare la soluzione ottima) e la capacità di generalizzazione sui dati, che, in molti casi, è maggiore rispetto ad altre tecniche. Le possibili applicazioni pratiche della realizzazione hardware di SVM sono molteplici; ad esempio, alcuni campi di utilizzo sono l'automotive, la video sorveglianza, i sistemi di comunicazione e, recentemente, anche la medicina e la genetica, in cui sono largamente impiegate per l'analisi di microarray. L'attenzione è rivolta in particolare alla fase feed-forward di SVM, che permette la classificazione dei dati facendo uso di una funzione Kernel hardware friendly: questo consente una riduzione sia delle risorse hardware utilizzate, sia del tempo di calcolo. L'aspetto peculiare della tesi consiste nella progettazione di un IP-Core, ovvero di un modulo in linguaggio VHDL, che sia parametrizzabile dall'utente e quindi adattabile alla specifica applicazione. A partire dalle varie architetture realizzabili, fornite dall'IP-Core, l'utente ha la possibilità di scegliere la piattaforma hardware più consona alle specifiche del proprio problema. L'attività svolta durante la tesi ha permesso quindi di acquisire e approfondire le competenze relative alla realizzazione hardware di un algoritmo, attraverso i tool di sviluppo professionali utilizzati dalle aziende del settore dell'Information and Communication Technology (ICT). Per verificare le funzionalità dell'IP-Core generato in VHDL si considererà l'applicazione automotive proposta da Daimler-Chrysler, riguardante il problema del riconoscimento di pedoni all'interno di immagini fornite da una telecamera montata su un veicolo. L'applicazione ha lo scopo di realizzare un modulo per la guida automatizzata.
Il progetto si articola nelle seguenti fasi:
Studio delle problematiche relative al problema, mediante un approccio
di tipo top-down.
Progetto delle possibili architetture realizzative.
Analisi delle prestazioni e delle caratteristiche di velocità e di occupazione di area per le architetture individuate.
Studio dei vincoli realizzativi sulla base delle caratteristiche di varie piattaforme commerciali (ad esempio Xilinx).
Realizzazione dei moduli software per la generazione automatica del
codice VHDL delle varie architetture.
Integrazione del codice VHDL all'interno dell'IP-Core.
Test delle architetture sul problema del riconoscimento di pedoni per
l'applicazione di guida automatica proposta da Daimler-Chrysler.
hardware di architetture per "pattern recognition" all'interno di circuiti programmabili (FPGA): in particolare, si considera la loro evoluzione più recente, ovvero le Support Vector Machine (SVM). La realizzazione hardware di algoritmi di machine learning, come le reti neurali e SVM, ha infatti recentemente attratto un grande interesse della comunità scientifica, riscuotendo ottimi risultati nei vari ambiti applicativi. I principali vantaggi della tecnica di SVM riguardano il processo di apprendimento (che è un problema di ottimizzazione quadratica convesso, di cui si può trovare la soluzione ottima) e la capacità di generalizzazione sui dati, che, in molti casi, è maggiore rispetto ad altre tecniche. Le possibili applicazioni pratiche della realizzazione hardware di SVM sono molteplici; ad esempio, alcuni campi di utilizzo sono l'automotive, la video sorveglianza, i sistemi di comunicazione e, recentemente, anche la medicina e la genetica, in cui sono largamente impiegate per l'analisi di microarray. L'attenzione è rivolta in particolare alla fase feed-forward di SVM, che permette la classificazione dei dati facendo uso di una funzione Kernel hardware friendly: questo consente una riduzione sia delle risorse hardware utilizzate, sia del tempo di calcolo. L'aspetto peculiare della tesi consiste nella progettazione di un IP-Core, ovvero di un modulo in linguaggio VHDL, che sia parametrizzabile dall'utente e quindi adattabile alla specifica applicazione. A partire dalle varie architetture realizzabili, fornite dall'IP-Core, l'utente ha la possibilità di scegliere la piattaforma hardware più consona alle specifiche del proprio problema. L'attività svolta durante la tesi ha permesso quindi di acquisire e approfondire le competenze relative alla realizzazione hardware di un algoritmo, attraverso i tool di sviluppo professionali utilizzati dalle aziende del settore dell'Information and Communication Technology (ICT). Per verificare le funzionalità dell'IP-Core generato in VHDL si considererà l'applicazione automotive proposta da Daimler-Chrysler, riguardante il problema del riconoscimento di pedoni all'interno di immagini fornite da una telecamera montata su un veicolo. L'applicazione ha lo scopo di realizzare un modulo per la guida automatizzata.
Il progetto si articola nelle seguenti fasi:
Studio delle problematiche relative al problema, mediante un approccio
di tipo top-down.
Progetto delle possibili architetture realizzative.
Analisi delle prestazioni e delle caratteristiche di velocità e di occupazione di area per le architetture individuate.
Studio dei vincoli realizzativi sulla base delle caratteristiche di varie piattaforme commerciali (ad esempio Xilinx).
Realizzazione dei moduli software per la generazione automatica del
codice VHDL delle varie architetture.
Integrazione del codice VHDL all'interno dell'IP-Core.
Test delle architetture sul problema del riconoscimento di pedoni per
l'applicazione di guida automatica proposta da Daimler-Chrysler.
Questa tesi è correlata alle categorie