POLITECNICO DI TORINO
Facoltà di Ingegneria
Corso di Laurea in Ingegneria Elettronica
Tesi di Laurea
|
Metodi Neurali dinamici per il riconoscimento
della scrittura umana su Notepad
|
Relatore:
Prof. Eros Pasero |
|
Candidato:
Alessandro Lia
|
Febbraio 1995
Le reti neurali
Applicazioni:
-
riconoscimento
-
classificazione
-
approssimazione di funzioni
Vantaggi:
-
non necessitano di analisi dettagliate
-
trattano problemi non lineari
-
relativa facilità di utilizzo
Svantaggi:
-
grandi database per l'addestramento
-
tempi lunghi per l'addestramento
-
impossibilità di predire le prestazioni
Il neurone biologico
Schema di neurone biologico con, in evidenza, una sinapsi.
Il Perceptron
-
risale agli anni '50
-
modella il neurone con una somma pesata e una funzione a gradino:
Schema di un Perceptron semplice:
Multilayer Perceptron o MLP
Limite del Perceptron:
-
soluzione di problemi non lineari solo con aggiustamenti manuali dei pesi
Caratteristiche del MLP:
-
definizione di una funzione d'errorefunzioni d'uscita lineari
-
addestramento come discesa del gradiente
-
possibilità di avere più strati addestrabili connessi tra
loro
Vantaggi:
-
soluzione di problemi non lineari
Schema di un MLP
I rappresenta la strato di ingresso H uno o più strati
nascosti O è lo strato d'uscita
Xp è il dato in ingresso Yp è l'uscita della rete
Dp è l'uscita desiderata
Descrizione analitica del MLP
Funzione d'errore

Funzione d'uscita del neurone:
Funzionamento del neurone:
Addestramento del MLP
Gradiente della funzione d'errore:
Il parametro vale:
per lo strato di uscita, e:
per gli strati nascosti.
La variazione dei pesi vale:
Le reti TDNN
(Time Delay Neural Networks)
-
sviluppate per riconoscere la voce
-
MLP con condivisione dei pesi
Struttura di una rete TDNN:
Il formato vettoriale
Confronto tra l'immagine di una carattere e la sua rappresentazione
vettoriale.
Windows for Pen Computing
E' costituito da:
-
Windows 3.1 o superiori
-
Pen Extensions
-
opportuni driver
Collocazione delle Pen Extensions in Windows
Sviluppo del riconoscitore
La fase di sviluppo si può dividere in:
-
costruzione del simulatore
-
raccolta dei dati
-
studio della rete
-
implementazione del riconoscitore
Il simulatore
-
strutturato ad oggetti
-
nucleo portabile
-
versioni con interfacce diverse
Schema del simulatore:
Versione interattiva
-
gira sotto DOS
-
ampie possibilità di interazione
Schermata di una sessione di addestramento
Versione a carattere
-
interfaccia a comandi
-
portabile su altre piattaforme
Sessione di utilizzo del simulatore
Raccolta dei dati
Programma di acquisizione degli esempi:
Studio della rete
Le capacità di una rete dipendono da:
-
numero di strati
-
numero di neuroni
-
numero di connessioni
La costruzione avviene per passi successivi:
-
ricerca di una struttura ottima
-
ottimizzazione del numero di neuroni
-
influenza dei database sulle prestazioni
Influenza dei database
Qualità dei campioni:
| Training set |
Esempi |
Prestazione |
| completo |
4110 |
45,8 |
| selezionato |
1068 |
78,8 |
Addestramento personalizzato:
| Training set |
Test set |
Prestazione |
| multi utente |
multi utente |
78,8 |
| multi utente |
singolo utente |
53,3 |
| singolo utente |
singolo utente |
72,9 |
| singolo utente |
multi utente |
49,1 |
La rete finale
Caratteristiche:
-
3 strati
-
299 neuroni
-
9195 connessioni
-
7151 parametri
Struttura:
Implementazione
Si può dividere in:
-
discretizzazione della rete
-
costruzione del riconoscitore
-
integrazione in Windows
Discretizzazione
Rete in virgola mobile:
Rete discretizzata:
| Limite |
Prestazione |
| 1 |
52,8 |
| 2 |
63,9 |
| 3 |
69,4 |
| 4 |
70,4 |
| 5 |
71,3 |
| 6 |
69,4 |
| 7 |
69,4 |
| 8 |
69,4 |
| 9 |
71,3 |
Velocità di classificazione:
| Virgola mobile |
Aritmetica intera |
| 26 |
40 |
Integrazione in Windows
Accesso al riconoscitore:
Finestra di configurazione:
Addestramento personalizzato
Finestra di addestramento:
Programma di addestramento della rete in background: