Rede de estado de eco - Echo state network

A rede de estado de eco ( ESN ) é um tipo de computador reservatório que usa uma rede neural recorrente com uma camada oculta conectada esparsamente (com conectividade normalmente de 1%). A conectividade e os pesos dos neurônios ocultos são fixos e atribuídos aleatoriamente. Os pesos dos neurônios de saída podem ser aprendidos para que a rede possa produzir ou reproduzir padrões temporais específicos. O principal interesse dessa rede é que, embora seu comportamento seja não linear, os únicos pesos que são modificados durante o treinamento são para as sinapses que conectam os neurônios ocultos aos neurônios de saída. Assim, a função de erro é quadrática em relação ao vetor de parâmetros e pode ser facilmente diferenciada para um sistema linear.

Alternativamente, pode-se considerar uma formulação bayesiana não paramétrica da camada de produto, sob a qual: (i) uma distribuição anterior é imposta sobre os pesos de produto; e (ii) os pesos de saída são marginalizados no contexto de geração de predição, dados os dados de treinamento. Essa ideia foi demonstrada usando priors gaussianas, em que um modelo de processo gaussiano com função de kernel controlada por ESN é obtido. Essa solução demonstrou superar os ESNs com conjuntos de pesos treináveis ​​(finitos) em vários benchmarks.

Algumas implementações de ESNs disponíveis publicamente são: (i) aureservoir : uma biblioteca C ++ eficiente para vários tipos de redes de estado de eco com ligações python / numpy; e (ii) código Matlab : um matlab eficiente para uma rede de estado de eco, (iii) ReservoirComputing.jl : uma implementação baseada em Julia eficiente de vários tipos de redes de estado de eco, e (iv) pyESN : redes de estado de eco simples em Python.

A Echo State Network (ESN) pertence à família Recurrent Neural Network (RNN) e fornece sua arquitetura e princípio de aprendizado supervisionado. Ao contrário das redes neurais feedforward, as redes neurais recorrentes são sistemas dinâmicos e não funções. Redes Neurais Recorrentes são normalmente usadas para: Aprender processos dinâmicos: tratamento de sinais em engenharia e telecomunicações, análise de vibração, sismologia, controle de motores e geradores. Previsão e geração de sinais: texto, música, sinais elétricos. Modelagem de sistemas biológicos, neurociências (neurodinâmica cognitiva), modelagem de memória, interfaces cérebro-computador (BCIs), filtragem e processos de Kalman, aplicações militares, modelagem de volatilidade etc.

Para o treinamento do RNN, uma série de algoritmos de aprendizagem estão disponíveis: retropropagação através do tempo, aprendizagem recorrente em tempo real. A convergência não é garantida devido aos fenômenos de instabilidade e bifurcação.  

A abordagem principal do ESN é, em primeiro lugar, operar uma rede neural recorrente grande, fixa e aleatória com o sinal de entrada, o que induz um sinal de resposta não linear em cada neurônio dentro desta rede de "reservatório" e, em segundo lugar, conectar um sinal de saída desejado por um combinação linear treinável de todos esses sinais de resposta.

Outra característica do ESN é a operação autônoma em predição: se a Echo State Network for treinada com uma entrada que é uma versão retrocedida da saída, então ela pode ser usada para geração / predição de sinal usando a saída anterior como entrada.

A ideia principal dos ESNs está ligada às máquinas de estado líquido (LSM), que foram desenvolvidas de forma independente e simultânea com os ESNs por Wolfgang Maass. LSMs, ESNs e a regra de aprendizado de Backpropagation Decorrelation recentemente pesquisada para RNNs são cada vez mais resumidos sob o nome de Reservoir Computing.

Schiller e Steil também demonstraram que nas abordagens convencionais de treinamento para RNNs, em que todos os pesos (não apenas os pesos de saída) são adaptados, as mudanças dominantes estão nos pesos de saída. Na neurociência cognitiva, Peter F. Dominey analisou um processo relacionado à modelagem do processamento de sequências no cérebro dos mamíferos, em particular o reconhecimento da fala no cérebro humano. A ideia básica também incluiu um modelo de discriminação de entrada temporal em redes neuronais biológicas. Uma formulação clara da ideia da computação de reservatório deve-se a K. Kirby, que divulgou esse conceito em uma contribuição de conferência amplamente esquecida. A primeira formulação da ideia de computação de reservatório conhecida hoje origina-se de L. Schomaker, que descreveu como uma saída de destino desejada pode ser obtida de um RNN aprendendo a combinar sinais de um conjunto configurado aleatoriamente de osciladores neurais de pico.

Variantes

As redes de estado de eco podem ser construídas de maneiras diferentes. Eles podem ser configurados com ou sem conexões de entrada para saída diretamente treináveis, com ou sem feedback de reserva de saída, com diferentes neurótipos, diferentes padrões de conectividade interna do reservatório, etc. O peso de saída pode ser calculado para regressão linear com todos os algoritmos, sejam eles online ou offline. Além das soluções para erros com quadrados menores, critérios de maximização de margem, chamados de máquinas de vetores de suporte de treinamento, são usados ​​para determinar os valores de saída. Outras variantes de redes de estado de eco buscam mudar a formulação para melhor corresponder aos modelos comuns de sistemas físicos, como aqueles normalmente definidos por equações diferenciais. O trabalho nessa direção inclui redes de estado de eco que incluem parcialmente modelos físicos, redes de estado de eco híbridas e redes de estado de eco em tempo contínuo.

O RNN fixo atua como um meio não linear aleatório cuja resposta dinâmica, o "eco", é usada como base de sinal. A combinação linear dessa base pode ser treinada para reconstruir a saída desejada, minimizando alguns critérios de erro.

Significado

RNNs raramente eram usados ​​na prática antes da introdução do ESN. Porque esses modelos se encaixam precisam de uma versão do gradiente descendente para ajustar as conexões. Como resultado, os algoritmos são lentos e muito piores, tornando o processo de aprendizagem vulnerável a erros de ramificação. A convergência não pode, portanto, ser garantida. O treinamento ESN não tem problemas com ramificação e também é fácil de implementar. ESNs superam todos os outros modelos dinâmicos não lineares. No entanto, hoje o problema que tornava os RNNs lentos e sujeitos a erros foi resolvido com o advento do Deep Learning e o ponto de venda exclusivo dos ESNs se perdeu. Além disso, os RNNs têm se mostrado comprovados em diversas áreas práticas, como processamento de idiomas. Para lidar com tarefas de complexidade semelhante usando métodos de cálculo de reservatório, isso exigiria memória de tamanho excessivo. No entanto, eles são usados ​​em algumas áreas, como muitas aplicações de processamento de sinal. No entanto, os ESNs têm sido amplamente usados ​​como um princípio de computação que se mistura com substratos de computador não digitais. Por exemplo: microchips ópticos, nanoosciladores mecânicos, misturas de polímeros ou mesmo membros macios artificiais.

Veja também

Referências

  1. ^ a b Jaeger, H .; Haas, H. (2004). "Aproveitando a não linearidade: prevendo sistemas caóticos e economizando energia na comunicação sem fio" (PDF) . Ciência . 304 (5667): 78–80. Bibcode : 2004Sci ... 304 ... 78J . doi : 10.1126 / science.1091277 . PMID  15064413 . S2CID  2184251 .
  2. ^ a b c d e Jaeger, Herbert (2007). "Rede de estado de eco" . Scholarpedia . 2 (9): 2330. Bibcode : 2007SchpJ ... 2.2330J . doi : 10.4249 / scholarpedia.2330 .
  3. ^ Chatzis, SP; Demiris, Y. (2011). "Processo Gaussiano do Estado do Eco". IEEE Transactions on Neural Networks . 22 (9): 1435–1445. doi : 10.1109 / TNN.2011.2162109 . PMID  21803684 . S2CID  8553623 .
  4. ^ a b c Jaeger, Herbert (2002). Um tutorial sobre como treinar redes neurais recorrentes, cobrindo BPPT, RTRL, EKF e a abordagem de "rede de estado de eco" . Alemanha: Centro Nacional Alemão de Pesquisa de Tecnologia da Informação. pp. 1-45.
  5. ^ Maass W., Natschlaeger T., e Markram H. (2002). "Computação em tempo real sem estados estáveis: uma nova estrutura para computação neural baseada em perturbações". Computação Neural . 14 (11): 2531–2560. doi : 10.1162 / 089976602760407955 . PMID  12433288 . S2CID  1045112 .CS1 maint: vários nomes: lista de autores ( link )
  6. ^ a b Schiller UD e Steil JJ (2005). "Analisando a dinâmica de peso de algoritmos de aprendizagem recorrentes". Neurocomputação . 63 : 5-23. doi : 10.1016 / j.neucom.2004.04.006 .
  7. ^ Dominey PF (1995). "Aprendizagem de sequência sensório-motora complexa baseada na representação de estados recorrentes e aprendizagem por reforço". Biol. Cibernética . 73 (3): 265–274. doi : 10.1007 / BF00201428 . PMID  7548314 . S2CID  1603500 .
  8. ^ Buonomano, DV e Merzenich, MM (1995). "Informação Temporal Transformada em Código Espacial por uma Rede Neural com Propriedades Realísticas". Ciência . 267 (5200): 1028–1030. Bibcode : 1995Sci ... 267.1028B . doi : 10.1126 / science.7863330 . PMID  7863330 . S2CID  12880807 .CS1 maint: vários nomes: lista de autores ( link )
  9. ^ Kirby, K. (1991). "Dinâmica de contexto na aprendizagem sequencial neural. Proc". Florida AI Research Symposium : 66–70.
  10. ^ Schomaker, L. (1992). "Um modelo de oscilador-rede neural de geração de padrão temporal". Ciência do Movimento Humano . 11 (1–2): 181–192. doi : 10.1016 / 0167-9457 (92) 90059-K .
  11. ^ Schmidhuber J., Gomez F., Wierstra D. e Gagliolo M. (2007). “Formação de redes recorrentes por evolino”. Computação Neural . 19 (3): 757–779. doi : 10.1162 / neco.2007.19.3.757 . PMID  17298232 . S2CID  11745761 .CS1 maint: vários nomes: lista de autores ( link )
  12. ^ Doan N, Polifke W, Magri L (2020). "Redes Estaduais de Eco Informadas pela Física". Journal of Computational Science . 47 : 101237. arXiv : 2011.02280 . doi : 10.1016 / j.jocs.2020.101237 . S2CID  226246385 .CS1 maint: vários nomes: lista de autores ( link )
  13. ^ Pathak J, Wikner A, Russel R, Chandra S, Hunt B, Girvan M, Ott E (2018). "Previsão híbrida de processos caóticos: usando aprendizado de máquina em conjunto com um modelo baseado em conhecimento". Caos . 28 (4): 041101. arXiv : 1803.04779 . Bibcode : 2018Chaos..28d1101P . doi : 10.1063 / 1.5028373 . PMID  31906641 . S2CID  3883587 .CS1 maint: vários nomes: lista de autores ( link )
  14. ^ Anantharaman, Ranjan; Ma, Yingbo; Gowda, Shashi; Laughman, Chris; Shah, Viral; Edelman, Alan; Rackauckas, Chris (2020). "Simulação de aceleração de sistemas não lineares rígidos usando redes de estado de eco em tempo contínuo". arXiv : 2010.04004 [ cs.LG ].
  15. ^ Doya K. (1992). "Bifurcações na aprendizagem de redes neurais recorrentes". Em Proceedings of 1992 IEEE Int. Symp. Em circuitos e sistemas . 6 : 2777–2780. doi : 10.1109 / ISCAS.1992.230622 . ISBN 0-7803-0593-0. S2CID  15069221 .
  16. ^ Jaeger H. (2007). "Descobrindo recursos dinâmicos multiescala com redes hierárquicas de estado de eco". Relatório Técnico 10, Escola de Engenharia e Ciências, Universidade Jacobs .