Vantaggi dell'impilamento di LSTM?


Risposte:


7

Da Quali sono i vantaggi di impilare più LSTM? (Aggiornerò solo la risposta lì):

Da {1}:

Sebbene non sia teoricamente chiaro quale sia la potenza aggiuntiva acquisita dall'architettura più profonda, è stato osservato empiricamente che gli RNN profondi funzionano meglio di quelli meno profondi in alcuni compiti. In particolare, Sutskever et al (2014) riportano che un'architettura profonda a 4 strati è stata cruciale per ottenere buone prestazioni di traduzione automatica in un framework encoder-decoder. Irsoy e Cardie (2014) riportano anche risultati migliorati dal passaggio da un BI-RNN a un livello a un'architettura con più livelli. Molti altri lavori riportano risultati usando architetture RNN a strati, ma non si confrontano esplicitamente con RNN a 1 strato.


Riferimenti:


4

Una situazione in cui è vantaggioso impilare gli LSTM è quando vogliamo imparare la rappresentazione gerarchica dei nostri dati di serie temporali. In LSTM sovrapposti, ogni livello LSTM genera una sequenza di vettori che verranno utilizzati come input per un livello LSTM successivo. Questa gerarchia di livelli nascosti consente una rappresentazione più complessa dei dati delle nostre serie temporali, acquisendo informazioni su scale diverse.

Ad esempio, gli LSTM in pila possono essere utilizzati per migliorare la precisione nella classificazione delle serie temporali, come la previsione dell'attività, in cui la frequenza cardiaca, il conteggio dei passi, il GPS e altri segnali possono essere utilizzati per prevedere attività come camminare, correre, andare in bicicletta, salire le scale o riposare. Per un esempio di classificazione delle serie temporali con LSTM in pila che utilizzano i dati EEG, dai un'occhiata al seguente notebook ipython .


1

Nel modello da sequenza a sequenza: il lavoro della rete dell'encoder consiste nel leggere la sequenza di input nel nostro modello Seq2Seq e generare un vettore di contesto C dimensionale fisso per la sequenza. Per fare ciò, l'encoder utilizzerà una cella di rete neurale ricorrente - di solito un LSTM - per leggere i token di input uno alla volta. Lo stato nascosto finale della cella diventerà quindi C. Tuttavia, poiché è così difficile comprimere una sequenza di lunghezza arbitraria in un singolo vettore di dimensioni fisse (specialmente per compiti difficili come la traduzione), l'encoder sarà solitamente costituito da LSTM sovrapposti : una serie di "layer" LSTM in cui gli output di ogni layer sono la sequenza di input per il layer successivo. Lo stato nascosto LSTM del layer finale verrà utilizzato come vettore di contesto.

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.