< < [[neurali:architettura della rete]] ====== Recurrent Neural Network ====== Esistono diversi tipi: * fully recurrent network * Hopfield network * Elman Network https://en.wikibooks.org/wiki/Artificial_Neural_Networks/Recurrent_Networks https://en.wikipedia.org/wiki/Recurrent_neural_network Rispetto alle reti Feed Forward, le reti RNN sono diverse nel senso che il loro output dipende dalla storia completa della rete dalla prima volta che รจ stata usata. Per ottenere questo risultato, ogni layer della rete deve avere due tipi di connessioni: * il tipo tradizionale che proviene dal layer precendete (in grigio) * il nuovo tipo che proviene anche dai layer successivi (in nero) o da se stesso {{ :neurali:pybrain-recurrent4.png?nolink&200 |}} In questo semplice esempio, l'output del passo N-1 viene rimesso in input al passo N fornendo una semplice memoria dello stato passato. Questo permette di ottenere una specie di memoria di tipo predittivo, come quella del cervello: [[neurali:funzione_memoria_predittiva]] Questa enorme complicazione delle connessioni porta sia vantaggi che svantaggi. Ad esempio, cambia l'algoritmo di addestramento.