Eu estou querendo saber como interpretar uma arquitetura recorrente em um contexto EEG. Especificamente, estou pensando nisso como uma CNN recorrente (em oposição a arquiteturas como LSTM), mas talvez se aplique a outros tipos de redes recorrentes também
Quando leio sobre R-CNNs, elas geralmente são explicadas em contextos de classificação de imagens. Eles são normalmente descritos como "aprendizado ao longo do tempo" ou "incluindo o efeito do tempo 1 na entrada atual"
Essa interpretação / explicação fica realmente confusa ao trabalhar com dados de EEG. Um exemplo de um R-CNN usado em dados de EEG pode ser encontrado aqui
Imagine que tenho exemplos de treinamento, cada um consistindo em uma matriz 1x512. Essa matriz captura uma leitura de tensão para 1 eletrodo em 512 pontos de tempo consecutivos. Se eu usar isso como entrada para uma CNN recorrente (usando convoluções 1D), a parte recorrente do modelo não está realmente capturando "tempo", certo? (como seria implícito nas descrições / explicações discutidas anteriormente) Como neste contexto, o tempo já é capturado pela segunda dimensão da matriz
Portanto, com uma configuração como essa, o que a parte recorrente da rede realmente nos permite modelar que uma CNN comum não pode (senão tempo)?
Parece-me que recorrente significa apenas fazer uma convolução, adicionar o resultado à entrada original e convolver novamente. Isso é repetido para o número x de etapas recorrentes. Que vantagem esse processo realmente oferece?
Respostas:
A parte recorrente de uma rede permite, em geral, modelar dependências de longo e curto prazo. Portanto, seu modelo pode ter algum senso de estado.
Isso normalmente é vantajoso se você estiver usando séries temporais. Por exemplo, se você possui dados de um monitor de frequência cardíaca e gostaria de classificar entre repouso, estresse e recuperação. Se o seu ponto de dados diz que sua frequência cardíaca está em 130, isso depende de você estar se recuperando de cargas elevadas ou de alguma outra coisa.
Edit: Eu esqueci sua segunda pergunta.
Eu poderia pensar em algumas respostas possíveis. Ao envolver a parte recorrente, você meio que a filtra. Assim, você obtém um sinal mais limpo e os erros não se acumulam tanto. A baunilha sofre de gradientes de fuga explosivos, então essa poderia ser sua abordagem para superá-la. Além disso, você está incorporando seus recursos ao rcnn, o que pode levar, como ele afirmou, a mais caminhos a serem explorados. O que torna menos propenso a sobreajuste e, portanto, mais generalizável.
fonte
fonte
Lembre-se de que as CNNs são detectores de recursos. A saída de uma camada convolucional é uma matriz que sinaliza onde determinado recurso foi detectado.
Portanto, CNNs recorrentes são redes neurais recorrentes que aprendem seqüências de recursos, onde esses recursos também são aprendidos durante o treinamento.
fonte