O modelo multivariado Gated Recurrent Unit (GRU) é um modelo de aprendizado de máquina que é um tipo de rede neural recorrente. A Indicio oferece uma seleção de modelos de aprendizado de máquina, sendo o mais básico o modelo neural univariado. A generalização multivariada desse modelo é o modelo de Rede Neural Artificial (ANN). O modelo GRU, sendo uma rede neural recorrente, é mais temporalmente consciente, pois permite que as informações fluam entre os nós da mesma camada, na direção de defasagens maiores para menores.
Para modelar um conjunto de kk séries temporais Y1, ... ,Simusando uma rede neural, o p□k valores defasados são usados como entradas e a rede neural é treinada para explicar a corrente p valores da série temporal incluída. Assim como no caso univariado, uma previsão pode então ser criada usando yt, ... ,yt−p+1 como entradas para prever yt+1. Note que agora estamos escrevendo ytpara denotar o vetor de k valores no momento t, o que significa que o modelo criará previsões para tudo variáveis incluídas. Isso pode então ser repetido de forma recursiva usando apenas os valores previstos como entrada, criando uma previsão do comprimento desejado. O modelo GRU difere de uma rede neural geral por ser recorrente, o que implica que ele é mais bem adaptado para lidar com dados sequenciais, como séries temporais. A outra rede neural recorrente disponível no Indicio é o modelo de memória de longo prazo (LSTM), que é mais complexo, mas ao mesmo tempo mais propenso a ajustes excessivos. O GRU foi desenvolvido como uma simplificação do modelo LSTM e demonstrou ter desempenho semelhante.
À medida que o número de entradas e saídas de um modelo aumenta, também aumenta o tamanho necessário das camadas ocultas e, com elas, a complexidade do modelo. Isso representa um desafio, pois um modelo complexo sempre corre o risco de ser ajustado demais aos dados. Para remediar isso, os dados são divididos em um conjunto de trens e um conjunto de validação.
O modelo é treinado com base nos dados de treinamento usando Stochastic Gradient Descent (SGD). Apenas algumas das observações são usadas em cada iteração, o que significa que, após um determinado número de iterações, o algoritmo SGD terá examinado todos os dados. Cada um desses conjuntos de iterações é chamado de época. Após cada época, o modelo é usado para criar uma previsão no conjunto de validação e o erro de previsão fora da amostra é calculado. O modelo também faz parte do processo de treinamento, produzindo previsões na amostra, chamadas de valores ajustados, a partir dos quais o erro de previsão na amostra pode ser calculado.
Isso criará duas séries de erros de previsão, dentro e fora da amostra por época. A Indicio aplica algo chamado parada precoce, o que significa que quando a falta de precisão da amostra começa a piorar em várias épocas, o processo de treinamento é interrompido e o modelo é considerado concluído.