Davide Valentino
iNNvestigate-GUI: analisi e visualizzazione di reti neurali convoluzionali a portata di click.
Rel. Fabrizio Lamberti, Lia Morra. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2019
|
PDF (Tesi_di_laurea)
- Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives. Download (5MB) | Preview |
Abstract: |
Dalla fine degli anni ’80 del Novecento ai primi anni 2000, una serie di passi avanti negli algoritmi utilizzati e il superamento di alcuni limiti tecnologici, ha permesso la grande diffusione delle reti neurali fino alla nascita del deep learning come è noto ai giorni nostri. Questo ha incrementato la necessità di comprendere il funzionamento interno delle reti neurali, sia per poter agire più consapevolmente nello sviluppo delle stesse, sia per poterle utilizzare anche negli ambiti più critici, dove la definizione di “black-box”, fino ad allora attribuita alle reti, non risultava sufficiente. Se negli ultimi anni sono state perciò introdotte svariate tecniche di visualizzazione, in grado di fornire rappresentazioni delle reti neurali utili proprio per aumentarne la comprensibilità, pochi invece risultano gli strumenti disponibili per la loto l’integrazione nel processo di sviluppo o di utilizzo di una rete: la necessità di dover scrivere del codice ad-hoc e la mancanza di implementazioni di riferimento per tali tecniche ne scoraggia spesso l’utilizzo, soprattutto da parte di utenti meno esperti. Nella ricerca di strumenti utili per risolvere tale problema, e prendendo in considerazione le Convolutional Neural Network, sia per la loro estrema diffusione sia perché proprio per questo maggiormente oggetto di ricerca, si è rintracciato iNNvestigate, uno strumento a linea di comando che rappresenta una soluzione piuttosto completa, offrendo un’implementazione standard e unificata per molte delle tecniche di visualizzazione di attivazioni proposte in letteratura. In questa tesi viene presentato iNNvestigate-GUI, uno strumento che sfrutta tutte le funzionalità offerte da iNNvestigate e ne aumenta le potenzialità in un’interfaccia grafica in ambiente web semplice ed intuitiva. Oltre ad ampliare il già vasto parco di tecniche di visualizzazione delle attivazioni incluse in iNNvestigate, e arrichendolo di funzionalità pensate appositamente per enfatizzare i confronti tra i risultati ottenuti, iNNvestigate-GUI offre un’altra importante funzione. È infatti possibile ottenere diverse viste che forniscono informazioni e grafici interattivi utili ad evidenziare i casi più interessanti da analizzare, evitando all'utente di dover effettuare tale operazione manualmente. Ad esempio, fornendo un certo numero di modelli di reti in input, è possibile visualizzare graficamente come questi si comportino nella classificazione di un dataset di immagini, visualizzando in particolare la relazione tra confidenza e coerenza dei risultati ottenuti. Le immagini così suggerite possono dunque venire utilizzate come input per le tecniche di visualizzazione disponibili, per effettuare analisi più mirate. Nonostante sia equipaggiato con funzionalità interessanti per tutti i progettisti e utilizzatori di reti neurali, si ritiene che il target principale di iNNvestigate-GUI siano gli utenti meno esperti. Per questo motivo, si è scelto di includere una valutazione dell’usabilità e delle potenzialità del tool riferendosi in particolar modo a questo tipo di utenza, raccogliendo i loro feedback riguardo alle principali modalità di utilizzo. iNNvestigate-GUI è una web-application realizzata in Python utilizzando Flask e, sulla base di iNNvestigate, opera in Keras utilizzando TensorFlow come back-end. L’interfaccia web è stata creata utilizzando HTML, JavaScript, CSS e le librerie jQuery e D3 e tutte le interazioni tra client e server avvengono tramite AJAX. |
---|---|
Relatori: | Fabrizio Lamberti, Lia Morra |
Anno accademico: | 2019/20 |
Tipo di pubblicazione: | Elettronica |
Numero di pagine: | 135 |
Soggetti: | |
Corso di laurea: | Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering) |
Classe di laurea: | Nuovo ordinamento > Laurea magistrale > LM-32 - INGEGNERIA INFORMATICA |
Aziende collaboratrici: | NON SPECIFICATO |
URI: | http://webthesis.biblio.polito.it/id/eprint/12451 |
Modifica (riservato agli operatori) |