Modelli simulativi
per le Scienze Cognitive
Paolo Bouquet
(Università di Trento)
Marco Casarotti
(Università di Padova)
La regola del percettrone
Usata per reti feedforward con un unico strato di pesi sinaptici. Le
unità di input e output possono utilizzano valori bipolari (-1, 1). Gli
esempi di’addestramento sono costituiti da un vettore d’ingresso x e
da una risposta desiderata t (target o teaching input).
L’output della rete per un certo vettore d’ingresso è calcolato con:
N

1 se  wi xi  0
y
i 0
1 altrimenti

Questo valore viene confrontato con la risposta desiderata t. Se t e y
differiscono (errore), i pesi sinaptici vengono modificati in base alla
risposta corretta:
wi  txi
La regola delta
• Simile alla regola del percettrone, ma applicabile a reti feedforward
con un singolo strato di pesi e unità di output con attivazione
continua e differenziabile:
wij   (ti  yi ) x j
• Descriviamo la prestazione della rete con una funzione di errore o
funzione di costo, che si basa sullo scarto quadratico medio tra
risposta desiderata t ed output effettivo y:
EW 
1
(ti  yi ) 2

2  i
la funzione di costo E dipende unicamente dal valore delle
connessioni sinaptiche W.
L’apprendimento consiste nel
minimizzare la funzione di
costo E, modificando i pesi nella
direzione opposta al gradiente
della funzione stessa (discesa del
gradiente):
E
wij  
wij
Risolvendo l’equazione,
otteniamo che il cambiamento
dei pesi è dato dalla differenza
tra target e output moltiplicata
per l’attività presinaptica.
La regola delta è plausibile dal punto di vista psico-biologico e corrisponde
formalmente alla regola di Rescorla-Wagner del condizionamento classico.
La backpropagation
• Deriva dalla regola delta, permette di calcolare l’errore di unità
nascoste, attraverso la propagazione all’indietro dell’errore (da
cui il nome dell’algoritmo) usando i pesi sinaptici che servono per
la propagazione dell’attivazione.
• La propagazione all’indietro dell’errore rende l’algoritmo
implausibile dal punto di vista biologico.
• Reti feedforward multistrato (con unità nascoste) possono
risolvere un ampio insieme di trasformazioni NON lineari (es.
XOR): algoritmo molto potente dal punto di vista computazionale.
Problema fondamentale
Output
Come calcolare l’errore?
Unità nascoste
Input esterno
1. Presentazione pattern d’ingresso
Unità di output
Unità nascoste
Unità di input
2. Propagazione in avanti dell’attivazione
Unità di output
Unità nascoste
Unità di input
2. Propagazione in avanti dell’attivazione
Unità di output
Unità nascoste
Unità di input
2. Propagazione in avanti dell’attivazione
Unità di output
Unità nascoste
Unità di input
2. Propagazione in avanti dell’attivazione
Unità di output
Unità nascoste
Unità di input
3. Calcolo dell’errore delle unità di output
Unità di output
Unità nascoste
Unità di input
4. Propagazione all’indietro dell’errore
Unità di output
Unità nascoste
Unità di input
4. Propagazione all’indietro dell’errore
Unità di output
Unità nascoste
Unità di input
5. Modifica dei pesi sinaptici
Unità di output
Unità nascoste
Unità di input
5. Modifica dei pesi sinaptici
Unità di output
Unità nascoste
Unità di input
Pro
• efficienza computazionale
• permette di addestrare reti con un qualsiasi numero di strati nascosti
Contro
• problema dei minimi locali
• discesa del gradiente lenta
Sviluppi
• numerose varianti introdotte per velocizzare la discesa del gradiente. La
resilient backpropagation (Riedmiller & Braun, 1992), per esempio,
utilizza solo il segno della derivata e non il valore.
• backpropagation through time (BPTT): permette di addestrare reti
ricorrenti. L’algoritmo consente di apprendere serie temporali, estraendo
come i dati cambiano nel tempo.
Scarica

slides