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 neurotrasmettitori
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

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
S1
S2
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
Realizzazione della funzione
AND con un neurone artificiale
La funzione AND
S1
S2
input
SE S1=1
ALLORA
E
S2=1
W(1,3)
W(2,3)
S3=1
output
ALTRIMENTI
S3=0
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
Implementazione della Regola
di Hebb
Dati
Stimoli esterni
S1 e S2
Dw(1,2) = h*S1*S2;
S1
w(t1) = w(t0) + Dw;
h è il tasso di apprendimento
S2
W = peso sinaptico
Le 4 regole di Hebb




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
D w(1,2)  hS1* S 2  S1 1S 2;
D w(1,2)  hS1* S 2  S 2 1S1;
Il percettrone






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
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


Se l’output è ON quando dovrebbe essere OFF


Non fare nulla
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


Una parte è modificabile attraverso l’esperienza




Feature detectors
Connessioni fra feature detector e neurone di output
Capacità di generalizzazione
Robusto nei confronti del rumore
“Graceful degradation”
Apprendimento della funzione
AND
Funzione AND:
Input
Output
1 1
1
0 1
0
1 0
0
0 0
0
output
pesi
input
Un software per reti neurali:
NetTools
1)
2)
3)
4)
Costruisco la rete
neurale
Costruisco gli
esempi (Training
Set)
Addestro la rete
Verifico
l’apprendimento
NetManager.exe
TrsEditor.exe
NetTrainer.exe
NetManager.exe
NetManager.exe
TrsEditor.exe
NetTrainer.exe
Apprendimento della funzione
Xor
Funzione Xor:
Input
Output
1 1
0
0 1
1
1 0
1
0 0
0
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
S1 w1  S 2  w2  soglia  0
AND
0,1
1,1
AND, OR, NOT sono funzioni
linearmente separabili
0,0
0,1
0,0
Xor
1,0
1,1
1,0
Nella funzione Xor non è
possibile separare con una
retta i pattern che richiedono
la stessa risposta dagli altri
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
Come superare il problema?


Percettroni
multistrato:
problema
dell’apprendimento
(non esisteva
nessun algoritmo)
output
hidden
PDP: Algoritmo di
ERROR BACKPROPAGATION
(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