Reti Neurali Ricorrenti
La memoria è portata dentro la rete RETI NEURALI RICORRENTI RR-1 Elaborazione di informazione temporale TLFN focused TLFN focused Semplice addestramento La memoria è portata dentro la rete TLFN distribuite Sono presenti connessioni ricorrenti tra neuroni diversi Reti ricorrenti
SEMPLICI TOPOLOGIE RICORRENTI Le TLFN focused sono mappatori universali MA potrebbe essere necessaria una memoria di dimensione enorme ELMAN JORDAN 1 m Input Context 1 m Context Input Parametri di feedback fissi Non c’e ricorrenza I/O (gli output dello strato Context sono come input esterni controllati dalla rete
ADATTARE IL PARAMETRO DI FEEDBACK RR-3 ADATTARE IL PARAMETRO DI FEEDBACK m1 controlla la profondità della memoria m2 + y(n) x(n) Z-1 m1 Adattare m1 per minimizzare l’MSE (m1 =1-m) L’effetto di una variazione di m2 si ripercuote solo sul campione corrente L’effetto di una variazione di m1 dura per sempre BP statica La BP statica calcola i gradienti per ogni topologia ordinata, secondo una lista di dipendenze topologica che NON considera la dipendenza temporale tra le variabili.
Effetto della ricorsione: RR-4 m2 + y(n) x(n) Z-1 m1 Effetto della ricorsione: L’effetto di un cambiamento di m1 dura per sempre
Learning di traiettorie RR-5 CRITERIO DI ERRORE Learning di traiettorie Criterio di performance in un intervallo di tempo (T campioni) (analogo al batch mode) Learning di un punto fisso Criterio di performance istantaneo
SVOLGERE UNA RETE RICORRENTE NEL TEMPO Rete feedforward con coefficienti ripetuti BP statica Mappaggio tempo-spazio Ad ogni istante viene creata una porzione della rete svolta e viene posta in cascata con la porzione precedente. La rete opera per un tempo finito T campioni = T+1 porzioni
Esempio y1(n) y2(n) x(n) w1 Z-1 + m1 y1(0)=0 y2(0)=f(w1y1(0)) y2(0)=0 RR-7 y1(0)=0 y2(0)=f(w1y1(0)) + y2(0)=0 y1(0)=0 w1
y2(0) + w1 x(T) m y1(T) y2(T) + w1 x(1) m y1(1) y2(1) y2(1) + w1 w1 RR-8 y2(0) + w1 x(T) m y1(T) y2(T) + w1 x(1) m y1(1) y2(1) y2(1) + w1 w1 y1(1) y1(0)=0 + m x(1) Rete feedforward T+1 input T+1 output
Lista della dipendenze RR-9 Lista della dipendenze L = m,w1, y1(0) , y2(0), y1(1) , y2(1), …, y1(T), y2(T) pesi variabili di stato ordinate secondo la topologia Ora si può applicare la BackPropagation
BACKPROPAGATION THROUGH TIME (BPTT) RR-10 BACKPROPAGATION THROUGH TIME (BPTT) Variabile di stato yh(k) In questo caso h=1,2; k=0,…T Compare il tempo e l’informazione topologica t> n dipendenze delle variabili a destra della variabile considerata j>1 nella lista ordinata d contributo diretto alla derivata Gli altri contributi alla derivata sono indiretti (attraverso la topologia)
Derivando rispetto ai pesi w = (w1,m) RR-11 Derivando rispetto ai pesi w = (w1,m) Sommatoria estesa a tutti gli istanti e a tutti gli stati
Osservazioni t> n Il calcolo del gradiente è ANTICIPATORIO RR-12 t> n Il calcolo del gradiente è ANTICIPATORIO Un sistema anticipatorio risponde prima che l’input sia applicato; NON E’ FISICAMENTE REALIZZABILE Un sistema anticipatorio è IMPLEMENTABILE in sistemi digitali con memoria. VANTAGGIO Nel calcolo del gradiente compaiono solo dipendenze DIRETTE di yj(t) da yi(n)
Nel tempo e nella topologia RR-13 CALCOLO DEL GRADIENTE Dipendenze dirette Nel tempo e nella topologia
RR-14
Backpropagation Through Time RR-14 Backpropagation Through Time la lista ordinata è invertita non solo nella topologia ma anche nel tempo Non è locale nel tempo: compare piu’ di un indice temporale nel gradiente Ha un alto costo computazionale Ha un’elevata occupazione di memoria E’ necessaria se il segnale desiderato è noto solo alla fine della sequenza di learning se sono presenti feedback.
REAL TIME RECURRENT LEARNING (RTRL) Dalla regola a catena applicata alla funzione costo la regola a catena otteniamo: sia: Calcolando il gradiente ad ogni time-step:
Il RTRL è locale nel tempo consente IMPLEMENTAZIONE ON LINE RR-15 Il RTRL è locale nel tempo consente IMPLEMENTAZIONE ON LINE Il RTRL non è locale nello spazio compaiono le derivate rispetto a tutti i pesi
y2(n)=f( w1m y1(n-1)+w1x(n) ) 1 uscita w1 , ,m 2 pesi RR-16 y1(n) y2(n) x(n) w1 + Z-1 + m1 y2(n)=f( w1m y1(n-1)+w1x(n) ) 1 uscita w1 , ,m 2 pesi f’<1
E’ applicabile solo a reti piccole Rete costituita da N neuroni totalmente connessi; T campioni N2 pesi N3 gradienti a campione O(N) operazioni/gradiente O(N4) operazioni a campione O(TN4) operazioni O(N3) variabili da immagazzinare RR- E’ applicabile solo a reti piccole
RETI RICORRENTI I modelli dinamici visti finora si generalizzano con le reti ricorrenti completamente interconnesse. Una possibile regola per implementare queste reti è quella di attribuire un ritardo a tutte le connessioni in retroazione
RETI DI HOPFIELD Non c'è addestramento! Attratori della funzione energia