As redes neurais recorrentes diferem das "regulares" pelo fato de terem uma camada de "memória". Devido a essa camada, as NNs recorrentes devem ser úteis na modelagem de séries temporais. No entanto, não sei se entendi corretamente como usá-los.
Digamos que possuo as seguintes séries temporais (da esquerda para a direita) :, [0, 1, 2, 3, 4, 5, 6, 7]
meu objetivo é prever o i
-ésimo ponto usando pontos i-1
e i-2
como entrada (para cada i>2
). Em uma ANN "regular" e não recorrente, eu processaria os dados da seguinte maneira:
target| input 2| 1 0 3| 2 1 4| 3 2 5| 4 3 6| 5 4 7| 6 5
Eu criaria uma rede com duas entradas e um nó de saída e a treinaria com os dados acima.
Como é necessário alterar esse processo (se houver) no caso de redes recorrentes?
time-series
machine-learning
neural-networks
Boris Gorelik
fonte
fonte
Respostas:
O que você descreve é de fato uma abordagem de "janela de tempo deslizante" e é diferente das redes recorrentes. Você pode usar esta técnica com qualquer algoritmo de regressão. Existe uma grande limitação a essa abordagem: os eventos nas entradas só podem ser correlacionados com outras entradas / saídas que se situam no máximo em intervalos de tempo, onde t é o tamanho da janela.
Por exemplo, você pode pensar em uma cadeia de Markov da ordem t. RNNs não sofrem com isso em teoria, no entanto, na prática, o aprendizado é difícil.
Aqui está um diagrama da estrutura:
fonte
Você também pode considerar simplesmente usar várias transformações de séries temporais para os dados de entrada. Apenas por um exemplo, as entradas podem ser:
Portanto, se suas entradas para uma rede neural convencional fossem essas seis partes de dados transformados, não seria uma tarefa difícil para um algoritmo de retropropagação comum aprender o padrão. No entanto, você teria que codificar as transformações que pegam os dados brutos e as transformam nas 6 entradas acima da sua rede neural.
fonte
Outra possibilidade são as Redes Neurais Consistentes Históricas (HCNN) . Essa arquitetura pode ser mais apropriada para a configuração mencionada acima, porque elimina a distinção frequentemente arbitrária entre variáveis de entrada e saída e, em vez disso, tenta replicar toda a dinâmica subjacente de todo o sistema através do treinamento com todos os observáveis.
Quando eu trabalhava na Siemens, publiquei um artigo sobre essa arquitetura em um livro da Springer Verlag: Zimmermann, Grothmann, Tietz, von Jouanne-Diedrich: modelagem de mercado, previsão e análise de risco com redes neurais consistentes históricas
Apenas para dar uma idéia sobre o paradigma, aqui está um pequeno trecho:
[...]
... e da conclusão:
Partes do artigo podem ser vistas publicamente: Aqui
fonte