Vantagens de empilhar LSTMs?

Respostas:

6

De Quais são as vantagens de empilhar vários LSTMs? (Atualizarei apenas a resposta lá):

A partir de 1}:

Embora não esteja teoricamente claro qual é o poder adicional adquirido pela arquitetura mais profunda, foi observado empiricamente que as RNNs profundas funcionam melhor do que as menos profundas em algumas tarefas. Em particular, Sutskever et al (2014) relatam que uma arquitetura profunda de 4 camadas foi crucial para alcançar um bom desempenho de tradução automática em uma estrutura de codificador-decodificador. Irsoy e Cardie (2014) também relatam melhores resultados ao passar de um BI-RNN de uma camada para uma arquitetura com várias camadas. Muitos outros trabalhos relatam resultados usando arquiteturas RNN em camadas, mas não se comparam explicitamente com RNNs de uma camada.


Referências:

Franck Dernoncourt
fonte
3

Uma situação em que é vantajoso empilhar LSTMs é quando queremos aprender a representação hierárquica de nossos dados de séries temporais. Nos LSTMs empilhados, cada camada LSTM produz uma sequência de vetores que será usada como entrada para uma camada LSTM subsequente. Essa hierarquia de camadas ocultas permite uma representação mais complexa de nossos dados de séries temporais, capturando informações em diferentes escalas.

Por exemplo, LSTMs empilhados podem ser usados ​​para melhorar a precisão na classificação de séries temporais, como previsão de atividade, na qual freqüência cardíaca, contagem de passos, GPS e outros sinais podem ser usados ​​para prever atividades como caminhar, correr, andar de bicicleta, subir escadas ou descansar. Para um exemplo de classificação de séries temporais com LSTMs empilhados usando dados de EEG, consulte o seguinte bloco de notas ipython .

Vadim Smolyakov
fonte
0

No modelo de sequência para sequência: O trabalho da rede do codificador é ler a sequência de entrada para o nosso modelo Seq2Seq e gerar um vetor de contexto C de dimensão fixa para a sequência. Para fazer isso, o codificador usará uma célula de rede neural recorrente - geralmente um LSTM - para ler os tokens de entrada, um de cada vez. O estado oculto final da célula se tornará C. No entanto, como é muito difícil compactar uma sequência de tamanho arbitrário em um único vetor de tamanho fixo (especialmente para tarefas difíceis como tradução), o codificador geralmente consiste em LSTMs empilhados : uma série de "camadas" LSTM em que as saídas de cada camada são a sequência de entrada para a próxima camada. O estado oculto LSTM da camada final será usado como vetor de contexto.

Umer Rana
fonte