2.3 R EDES N EURAIS A RTIFICIAIS
3.1.7 Modelagem MLP/RNA
Ao contr´ario da modelagem ARIMA/SARIMA, a modelagem MLP/RNA n˜ao possui um
´unico algoritmo para a construc¸˜ao de modelos. Existem algoritmos como o Algoritmo Gen´etico citado no Referencial Te´orico, mas nenhum algoritmo gen´erico e amplo, como o algoritmo de Box-Jenkins. Devido a essa caracter´ısticas, tamb´em ser´a apresentado um fluxograma apresen-tando as etapas realizadas na obtenc¸˜ao dos modelos MLP/RNA. Este fluxograma pode ser visto na figura (18) e foi utilizado da mesma maneira tanto na s´erie da produc¸˜ao industrial quanto na s´erie de manchas solares.
A primeira etapa ´e separar a s´erie de dados em dois conjuntos de dados. S˜ao retirados os
´ultimos 12 valores para verificac¸˜ao do poder preditivo e c´alculo do EQM de previs˜ao. O restante
´e utilizado na modelagem. Tˆem-se, assim, dois conjuntos de dados: s´erie de previs˜ao, contendo os ´ultimos 12 valores, e a s´erie de modelagem, contendo o restante dos dados, ou padr˜oes de treinamento.
A pr´oxima etapa necessita de aleatorizac¸˜ao. Um modelo MLP necessita de dois conjuntos distintos de padr˜oes para ser modelado: conjunto de padr˜oes de treinamento e aprendizagem e conjunto de padr˜oes de ajuste, ou simplesmente conjunto de treinamento e conjunto de ajuste.
Para obter estes dois conjuntos, foi utilizada a s´erie de modelagem, obtida na etapa anterior. O percentual utilizado nesta dissertac¸˜ao ´e de 70% dos padr˜oes da s´erie de modelagem foram sele-cionados aleatoriamente e constituem-se no conjunto de treino e aprendizagem. Posteriormente a s´erie de modelagem completa ser´a utilizada para verificar o ajuste do modelo.
Feita a divis˜ao da s´erie de modelagem, ´e necess´ario treinar o modelo MLP. Aqui ´e definido o modelo a ser utilizado dentre as limitac¸˜oes impostas nesta dissertac¸˜ao. As configurac¸˜oes utilizadas nesta dissertac¸˜ao quanto a camada de entrada s˜ao duas: modelos com 6 neurˆonios na camada de entrada e modelos com 12 neurˆonios na camada de entrada. Para cada configurac¸˜ao da camada de entrada, foram modeladas 26 diferentes configurac¸˜oes da camada oculta: desde uma camada oculta com 5 neurˆonios at´e uma camada oculta com 30 neurˆonios. A camada de sa´ıda possui apenas um neurˆonio em todos os modelos. ´E nesta etapa que os pesos sin´apticos, os parˆametros dos modelos MLP, s˜ao ajustados. Esta tamb´em ´e uma etapa que necessita de aleatorizac¸˜ao, pois os pesos sin´apticos iniciais s˜ao aleatorizados.
Quanto ao procedimento de sorteio dos padr˜oes de treinamento, o mesmo ´e feito da seguinte maneira: inicialmente os dados s˜ao dispostos em um matriz com um n´umero de colunas igual
Figura 18: Fluxograma da metodologia utilizada na modelagem MLP/RNA Fonte: Elaborado pelo autor
ao n´umero de neurˆonios na camada de entrada mais uma coluna para os valores desejados. Cada linha da matriz representa um padr˜ao de treinamento. E cada linha tem um atraso no tempo, de forma a capturar todos os padr˜oes existentes no conjunto de treino e ajuste, conforme pode ser vista na equac¸˜ao (15).
ondextrepresenta o ´ultimo valor da s´erie de dados.
Na matriz da equac¸˜ao (15) os padr˜oes de treinamento est˜ao adequados a um modelo MLP/RNA com 6 neurˆonios na camada de entrada e apenas 1 na camada de sa´ıda, iguais a alguns dos mo-delos utilizados neste trabalho. O primeiro padr˜ao submete ao modelo os valores dex1ax6na camada de entrada que tem como valor desejado o valorx7. De maneira semelhante ocorre nas demais linhas da matriz. Desta forma, devido a aleatorizac¸˜ao dos pesos sin´apticos iniciais, os padr˜oes de treinamento tamb´em s˜ao sorteados, na tentativa de otimizar os resultados modelo.
Com relac¸˜ao a escolha dos modelos, isso se deve a implicac¸˜oes pr´aticas. O n´umero de neurˆonios na camada de entrada indica o tamanho m´aximo de ciclo ou sazonalidade que o modelo pode detectar. O modelo de seis neurˆonios na camada de entrada pode captar uma sazonalidade de per´ıodo igual ou inferior a seis, enquanto que o modelo com doze neurˆonios pode captar sazonalidade com per´ıodo igual ou inferior a doze. A camada oculta ´e a capacidade de processamento do modelo e foi limitada tanto na sua capacidade inferior quanto superior, respectivamente, em cinco e trinta neurˆonios.
Feito o treinamento e aprendizagem do modelo, o modelo ´e ent˜ao ajustado. Esta etapa serve para verificar o ajuste do modelo a s´erie de modelagem. ´E a partir destas informac¸˜oes que s˜ao obtidos os crit´erios AIC, BIC e EQM de ajuste. ´E nesta etapa, tamb´em, que pode-se verificar se o modelo treinado est´a sobre ajustado aos dados ou n˜ao. EQM de ajuste muito baixo pode significar um modelo com sobre ajuste, pois indica que o modelo est´a muito pr´oximo dos dados de treino e aprendizagem, o que costuma prejudicar as previs˜oes. O EQM de ajuste muito alto pode significar um modelo mal treinado, ou com problemas de inicializac¸˜ao nos pesos sin´apticos, dependendo da sua magnitude em relac¸˜ao aos dados.
Independentemente do EQM de ajuste obtido, s˜ao ent˜ao verificadas as previs˜oes do modelo.
Nesta etapa s˜ao previstos 12 valores futuros, com base no modelo treinado. Com os resultados das previs˜oes, ´e obtido o EQM de previs˜ao. Este EQM de previs˜ao tamb´em ´e apresentado
conjuntamente com os crit´erio AIC, BIC e EQM de ajuste. Isso deve tanto para auxiliar a escolha de um modelo considerado adequado e tamb´em para ressaltar problemas de sobre ajuste.
Contudo, cabe uma ressalva. Os modelos MLP/RNA costumam obter EQM de previs˜ao muito baixos em horizontes de previs˜ao menores, como 1 ou 2 passos adiante. As previs˜oes deste trabalho se referem a um horizonte de previs˜ao de 12 passos adiante.
A etapa seguinte trata de um ciclo de repetic¸˜oes. Cada modelo apresentado na etapa de treino e aprendizagem ´e modelado 100 vezes. Desta forma, desde a selec¸˜ao da amostra de treino at´e a verificac¸˜ao e obtenc¸˜ao do EQM de previs˜ao e pesos sin´apticos s˜ao repetidos 100 vezes. Com isso, espera-se minimizar os efeitos da aleatorizac¸˜ao necess´aria do processo de treino, ajuste e previs˜ao de cada modelo.
Ap´os as etapas necess´arias terem sido repetidas 100 vezes, tˆem-se uma matriz contendo 100 EQM de previs˜ao e 100 configurac¸˜oes de pesos sin´apticos. Estes valores ser˜ao utilizados para comparac¸˜ao. Ser´a utilizada a configurac¸˜ao de pesos sin´apticos do modelo que possuir o menor EQM de previs˜ao, conforme Haykin (2001). Com essa medida, s˜ao selecionados os melhores modelos quanto as previs˜oes, seguindo, desta forma, o algoritmo apresentado na figura (17).