310 likes | 753 Views
Le reti neurali. Reti neurali naturali ed artificiali. Reti neurali naturali. Il neurone. Tutti i sistemi nervosi animali sono costituiti da neuroni Fondamentalmente simili in tutti gli animali Nematode c. 600 Essere umano c. 10.000.000.000.000 (10 12 ) Forma del neurone Dendriti Soma
E N D
Le reti neurali Reti neurali naturali ed artificiali
Reti neurali naturali. Il neurone • Tutti i sistemi nervosi animali sono costituiti da neuroni • Fondamentalmente simili in tutti gli animali • Nematode • c. 600 • Essere umano • c. 10.000.000.000.000 (10 12) • Forma del neurone • Dendriti • Soma • Assone Da Occhio, Cervello, Visione, D.H. Hubel, Zanichelli, 1989
Il neurone - funzione • Riceve input da altri neuroni sui dendriti • Genera impulsi che vengono trasmessi lungo l’assone • Molto lento rispetto a componenti elettronici • Comportamento influenzato da ormoni/neurotrasmettitori
Codifica dell’informazione da parte del neurone • Non è pienamente capito • 50 anni fa si pensava che il neurone fosse un dispositivo binario • accesso/spento • Ma oggi sappiamo che: • Una parte dell’informazione trasmessa dal neurone dipende dalla frequenza degli impulsi • Il neurone genera impulsi anche quando sta a riposo • Sotto stimolo aumenta/riduce la frequenza degli impulsi • Intervallo fra un impulso e il prossimo come portatore di informazione? Da, L’homme neuronale, J.P. Changeux, Fayard, 1983
Le sinapsi • Spazio fra la terminazione di un assone (o segmenti non mielinizzati) e i dendriti di un altro neurone • Trasmissione di informazione • Unidirezionale • Trasmissione elettrica • Trasmissione con neuro-trasmettitori • Sinapsi eccitatorie • Sinapsi inibitorie • Nel cervello umano circa 1015 Da L. Squire & E.R. Kandel, Memory, Scientific American, 1999
Le reti neurali naturali • Connettività estremamente ricca • alcuni neuroni ricevono input da più di 10.000 altri neuroni • Connessioni prevalentemente a breve distanza • Alcune connessioni a lunga distanza Da, L’homme neuronale, J.P. Changeux, Fayard, 1983
Reti neurali e neuroni artificiali S1 S2 • Il neurone artificiale • Connessioni/pesi • Funzione di soglia • Output binario • Rete neurale come calcolatore universale • La macchina di Von Neumann non è l’unica possibile implementazione di un calcolatore universale I strato W(1,3) W(2,3) II strato S3 SE S1*W(1,3)+S2*W(2,3)>=Soglia ALLORA S3=1 ALTRIMENTI S3=0
La funzione AND SE S1=1 E S2=1 ALLORA S3=1 ALTRIMENTI S3=0 Realizzazione della funzione AND con un neurone artificiale S1 S2 input W(1,3) W(2,3) output S3 Soglia=1.5 W(1,3)=1 W(2,3)=1
Le reti neurali e l’apprendimento • Problema di acquisizione della conoscenza • Suggerimento di Von Neumann • Un calcolatore efficace deve poter imparare come un bambino • Regola di Hebb • La stimolazione simultanea (o quasi) di due neuroni interconnessi provoca un rafforzamento della sinapsi
Dati S1 e S2 Dw(1,2) = h*S1*S2; w(t1) = w(t0) + Dw; h è il tasso di apprendimento Implementazione della Regola di Hebb Stimoli esterni S1 S2 W = peso sinaptico
Regola di Hebb “classica” I pesi sinaptici possono essere SOLO incrementati Interferenza, quando pattern di input hanno elementi in comune Regola Postsinaptica Incremento modulato dal neurone postsinaptico Regola Presinaptica Incremento modulato dal neurone presinaptico Regola della covarianza Dipende dallo stato di entrambi i neuroni Le 4 regole di Hebb
Rosenblatt (1958) Ispirati a studi sul sistema di visione del cervello Hardwired feature detectors Ognuno vede solo una parte dell’input Analoghi a “Feature detectors” nel cervello Neurone di output Connessioni da ogni feature detector al neurone di output “Peso” variabile delle connessioni fra feature detectors e neurone di output Il percettrone Neurone di output feature detectors Retina artificiale
Procedura di apprendimento del percettrone • Procedura di apprendimento che consente di apprendere qualsiasi mapping input-output teoricamente acquisibile da parte di un percettrone • Algoritmo • Presentare input (in ordine casuale) • Se l’output è corretto • Non fare nulla • Se l’output è ON quando dovrebbe essere OFF • Ridurre forza connessioni a FD che sono ON • Se l’output è OFF quando dovrebbe essere ON • Aumentare forza connessioni a FD che sono ON
Percettroni e intelligenza biologica • Numero limitato di feature detector • Una parte del cervello è geneticamente determinata • Feature detectors • Una parte è modificabile attraverso l’esperienza • Connessioni fra feature detector e neurone di output • Capacità di generalizzazione • Robusto nei confronti del rumore • “Graceful degradation”
Funzione AND: Input Output 1 1 1 0 1 0 1 0 0 0 0 0 Apprendimento della funzione AND output pesi input
Costruisco la rete neurale Costruisco gli esempi (Training Set) Addestro la rete Verifico l’apprendimento Un software per reti neurali: NetTools NetManager.exe TrsEditor.exe NetTrainer.exe NetManager.exe
NetManager.exe TrsEditor.exe NetTrainer.exe
Funzione Xor: Input Output 1 1 0 0 1 1 1 0 1 0 0 0 Apprendimento della funzione Xor output pesi input
NetManager.exe TrsEditor.exe NetTrainer.exe
Il periodo del silenzio:Minsky e Papert • Analisi del percettrone di Rosenblatt • Il percettrone hai dei limiti computazionali • NON può risolvere il problema della parità • NON può risolvere il problema dello Xor • Lo Xor è una funzione LINEARMENTE NON SEPARABILE
La separabilità lineare AND 0,1 1,1 AND, OR, NOT sono funzioni linearmente separabili Xor 0,0 1,0 0,1 1,1 Nella funzione Xor non è possibile separare con una retta i pattern che richiedono la stessa risposta dagli altri 0,0 1,0
Critica alla critica • Molti dei problemi che non possono essere risolti da un Perceptrone • XOR • Parity Sono molto difficili anche per gli esseri umani e gli animali • Gli stessi punti di debolezza del percettrone sono un indizio che il cervello potrebbe funzionare in modo analogo • Il cervello come sistema di pattern matching con limitata capacità di calcolo • I perceptroni possono comunque essere utilizzate per la creazione di modelli complessi
Percettroni multistrato: problema dell’apprendimento (non esisteva nessun algoritmo) Come superare il problema? output hidden • PDP: Algoritmo di ERROR BACK-PROPAGATION (Rumelhart e McClelland, 1986) input
La Back-Propagation • Algoritmo simile alla regola Delta • Stessa modalità di apprendimento (supervisionato) • Si propaga il segnale di errore all’indietro: • Calcolo dell’errore sull’output • Aggiornamento dei pesi tra output e hidden • Calcolo dell’errore sulle hidden • Aggiornamento dei pesi tra le hidden e l’input • Relazione tra la variazione dell’errore ed il cambiamento dei pesi (importanza della funzione di attivazione) • Discesa del Gradiente