Università degli Studi della Calabria Facoltà di lettere e filosofia Corso di laurea in D.A.M.S Indirizzo multimediale Psicologia Generale II Prof. Eleonora Bilotta Arcella Antonella Mat.50587 Le reti neurali. Caratteristiche generali. Struttura. Apprendimento. Percettrone. Back-Propagation. Generalizzazione delle RN. 2 Caratteristiche generali. Le Reti Neurali nascono dall’idea di poter riprodurre alcune delle funzioni e capacità del cervello umano. L’area di applicazione dominante delle Reti Neurali (RN) è il riconoscimento di regolarità, o pattern recognition, e l’obiettivo fondamentale di tale caratteristica è la classificazione: dato un input la rete è in grado di analizzarlo e di formulare un output che corrisponda ad una determinata e significativa categorizzazione. Un esempio delle sue potenzialità è la possibilità di riconoscere volti, voci etc. La classificazione della RN consiste nel decidere a quale delle categorie indicategli, un pattern di input si avvicina maggiormente in termini di distanza. Struttura. La RN è strutturata in modo da essere un semplice modello della struttura e delle funzionalità del cervello umano. Una RN è costituita da un determinato numero di neuroni e da connessioni tra essi che rappresentano le connessioni sinottiche tra i neuroni biologici. La funzione di un neurone biologico è quella di sommare i suoi input e produrre un output qualora tale somma sia maggiore di un dato valore di soglia. Tali output vengono poi trasmessi a successivi neuroni attraverso le giunzioni sinottiche; alcune di esse sono buone giunzioni per cui il segnale trasmesso è alto, mentre altre sono cattive giunzioni per cui il segnale trasmesso risulta più basso. L’efficienza delle giunzioni è modellata considerando un fattore moltiplicativo (peso) per ciascun input del neurone: una buona sinapsi avrà un peso maggiore di quello della sinapsi cattiva. In linea di principio, in una RN, ogni unità può essere connessa con qualunque altra unità. Apprendimento. Il principio guida che permette alla rete di apprendere è quello di lasciare che la rete impari dai suoi errori. Le reti hanno, inizialmente, dei pesi scelti a caso; a questo punto esistono diversi metodi con cui le reti modificano automaticamente questi pesi fino ad assegnare loro quei valori che consentono di rispondere nel modo desiderato ad una certa stimolazione esterna. Le reti non danno risultati completamente corretti o completamente sbagliati, ma solo approssimativamente corretti o sbagliati (non 1 o 0 ma 0.96 o 0.03). Inoltre, se una rete ha imparato, ad esempio, a dare B in risposta ad A, quando le si presenta uno stimolo A’ che sia simile ad A, risponde automaticamente e spontaneamente in modo sensato: o dà la stessa risposta data per A, cioè B, o risponde con B’, cioè dà una risposta simile a quella data per A. Questa capacità di estrapolare, di rispondere sensatamente al nuovo, è una delle più importanti proprietà delle RN, è uno dei loro principali vantaggi rispetto ai sistemi simbolici tradizionali. 3 Percettrone. Il Percettrone è stato la prima RN utilizzata; essa era costituita da un singolo strato di neuroni che riceveva un input e calcolava direttamente l’output. In questo modo la rete era limitata al calcolo di una singola retta, nello spazio geometrico dei pattern, di separazione tra le classi senza essere quindi in grado di classificare problemi complessi. Per poter superare il limite di separabilità lineare delle classi mantenendo intatta la capacità di apprendere, sono state eseguite alcune variazioni strutturali aggiungendo uno o più strati di neuroni in modo che ogni neurone di ciascuno strato ricevesse come input l’output dei neuroni dello strato precedente e che l’output di rete fosse quello calcolato dall’ultimo strato. La rete così ottenuta è stata chiamata “Multilayer Perceptron”. I neuroni (o unità) che costituiscono questo tipo di reti, quindi, sono organizzati in strati, layer: uno strato di input, uno di output e un certo numero di strati intermedi tra input e output detti nascosti, hidden. Back-Propagation. Poiché l’apprendimento delle reti consiste nella modificazione dei pesi, è evidente che tutto il decorso dell’apprendimento e il suo risultato finale varieranno da rete a rete. Quindi se si ripete lo stesso esperimento su reti diverse, cioè aventi assegnazione iniziale di pesi differenti (diverse scelta casuale dei pesi), non si possono aspettare risultati identici ma soltanto risultati simili. Il metodo BP di apprendimento viene anche chiamato gradiente discendente in quanto le variazioni vengono eseguite verso il minimo della funzione errore. Generalizzazione della Rete Neurale. Una delle maggiori caratteristiche delle RN è la loro abilità a generalizzare ovvero a classificare con successo pattern che non sono stati precedentemente mostrati (cioè mostrati durante l’apprendimento). Un vantaggio della rete multi strato è quello di poter classificare input contenenti fattori di disturbo: ad essi verranno associate le classi relative all’input senza rumore. Questa abilità permette di applicare con successo queste reti a problemi reali, e quindi disturbati, con risultati migliori rispetto a quelli ottenuti con altri metodi di riconoscimento di regolarità o sistemi esperti. Nel caso in cui l’input sia diverso da quelli già classificati dalla rete nel ciclo di apprendimento, l’output sarà meno preciso, ed in particolare si potranno considerare due casi: se il pattern di input è posto tra due pattern già visti; la rete lo classifica come il pattern in esso dominante. Se invece non è simile a nessun pattern già visto, la classificazione avviene con un errore maggiore. 4 NET TOOLS. Esempio 1. DISCRIMINAZIONE TRA VOLATILI E NON VOLATILI. Domande: 1. Vola? 2. Ha il becco? 3. Depone le uova? INPUT Rondine Cane Gallo Passero Pipistrello 1 1 0 0 1 1 2 1 0 1 1 1 3 1 0 0 1 0 OUTUP 1 0 0 1 1 3 1 1 OUTUP 0 0 Per verificare se la rete ha generalizzato: INPUT Ape Struzzo 1 1 0 2 0 1 5 Net Manager Numero di strati: 3 Numero di gruppi per strato: 1 1 1 Numero di neuroni per gruppo: 2 2 1 Trs Editor Numero di pattern: 5 Numero di unità di input: 3 Numero di unità di output: 1 6 Net Trainer Parametri di Back Propagation: Momento = 0.8 Tasso di apprendimento = 0.75 Presentazione: Sequenziale Modifica dei pesi: On line Epoche: 100 Grafico errore 7 Apprendimento della rete: INPUT 111 000 010 111 110 APPRENDIMENTO 0.9477 0.0795 0.4505 0.9477 0.9464 Generalizzazione della rete: INPUT 101 011 GENERALIZZAZIONE 0.9000 0.4788 8