Qual è una spiegazione intuitiva di Echo State Networks?


17

Sono nuovo di Recurrent Neural Networks (RNN) e sto ancora imparando i concetti. Comprendo a livello astratto che una Echo State Network (ESN) è in grado di (ri) produrre una sequenza di ingressi, cioè un segnale, anche dopo che l'ingresso è stato rimosso. Tuttavia, ho trovato l' articolo di Scholarpedia troppo difficile da comprendere e comprendere completamente.

Qualcuno può spiegare come l'apprendimento funziona matematicamente nella forma più semplice possibile.

Risposte:


17

Una Echo State Network è un'istanza del concetto più generale di Reservoir Computing . L'idea alla base di ESN è quella di ottenere i benefici di un RNN (elaborare una sequenza di input che dipendono l'uno dall'altro, ovvero dipendenze temporali come un segnale) ma senza i problemi di addestramento di un RNN tradizionale come il problema del gradiente di svanimento .

Gli ESN ottengono questo risultato avendo un serbatoio relativamente grande di neuroni scarsamente connessi usando una funzione di trasferimento sigmoidale (rispetto alla dimensione di input, qualcosa come 100-1000 unità). Le connessioni nel serbatoio vengono assegnate una volta e sono completamente casuali; i pesi del serbatoio non vengono allenati. I neuroni di input sono collegati al serbatoio e alimentano le attivazioni di input nel serbatoio - anche a questi vengono assegnati pesi casuali non allenati. Gli unici pesi che vengono allenati sono i pesi di uscita che collegano il serbatoio ai neuroni di uscita.

Durante l'addestramento, gli input verranno inviati al serbatoio e un output dell'insegnante verrà applicato alle unità di output. Gli stati del serbatoio vengono acquisiti nel tempo e memorizzati. Una volta applicati tutti gli input di training, è possibile utilizzare una semplice applicazione della regressione lineare tra gli stati del serbatoio acquisiti e gli output target. Questi pesi di output possono quindi essere incorporati nella rete esistente e utilizzati per nuovi input.

L'idea è che le connessioni casuali sparse nel serbatoio consentano agli stati precedenti di "eco" anche dopo che sono passati, in modo che se la rete riceve un nuovo input simile a qualcosa su cui si è allenato, le dinamiche nel serbatoio inizieranno a seguire la traiettoria di attivazione appropriata per l'input e in tal modo in grado di fornire un segnale corrispondente a ciò su cui si è allenato, e se è ben addestrato sarà in grado di generalizzare da ciò che ha già visto, seguendo traiettorie di attivazione che avrebbero senso dato il segnale di ingresso che guida il serbatoio.

Il vantaggio di questo approccio è nella procedura di allenamento incredibilmente semplice poiché la maggior parte dei pesi viene assegnata una sola volta e in modo casuale. Tuttavia sono in grado di catturare dinamiche complesse nel tempo e sono in grado di modellare le proprietà dei sistemi dinamici. Di gran lunga i documenti più utili che ho trovato su ESN sono:

Entrambi hanno spiegazioni facili da comprendere insieme al formalismo e consigli eccezionali per la creazione di un'implementazione con una guida per la scelta dei valori dei parametri appropriati.

AGGIORNAMENTO: Il libro Deep Learning di Goodfellow, Bengio e Courville ha una discussione ad alto livello leggermente più dettagliata ma comunque piacevole di Echo State Networks. La Sezione 10.7 discute il problema del gradiente in via di estinzione (e che esplode) e le difficoltà di apprendimento delle dipendenze a lungo termine. La Sezione 10.8 è dedicata alle reti statali Echo. Spiega in dettaglio i motivi per cui è cruciale selezionare i pesi del serbatoio che hanno un valore del raggio spettrale appropriato : collabora con le unità di attivazione non lineari per incoraggiare la stabilità, pur propagando le informazioni nel tempo.


1

L'apprendimento in un ESN non è principalmente forzato all'adattamento dei pesi, più rispettivamente il livello di output impara quale output produrre per lo stato attuale della rete. Lo stato interno si basa sulla dinamica della rete ed è chiamato stato del serbatoio dinamico. Per capire come si formano gli stati del serbatoio, dobbiamo esaminare la topologia di un ESN.

Topologia ESN

Le unità di input sono collegate ai neuroni nelle unità interne (unità del serbatoio), i pesi vengono inizializzati in modo casuale. Le unità del serbatoio sono collegate casualmente e scarsamente e hanno anche pesi casuali. L'unità di uscita è inoltre collegata a tutte le unità del serbatoio, quindi riceve lo stato del serbatoio e produce un'uscita corrispondente.

tt

Prima di poter spiegare in dettaglio come funziona la formazione, dobbiamo spiegare e definire alcune cose:

TtWfB

Decisioni variabili:

  • r
  • o
  • t
  • o
  • Tto

Infine, come funziona la formazione in dettaglio?

  • tMtr
  • WoutMWout=T>Wout=MT1

Poiché l'apprendimento è molto veloce, possiamo provare molte topologie di rete per ottenerne una adatta.

Per misurare le prestazioni di un ESN:

  • Wfb
  • ||MWoutT||2

Raggio spettrale ed ESN

Spec-tral1

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.