• Nenhum resultado encontrado

ts

S S

A arquitectura é definida por uma rede neuronal feed-forward, com três camadas, sendo o número de neurónios da camada de entrada definido pela variável

p

. O número de neurónios da camada escondida foi fixado com base num estudo empírico, que fez variar o número de unidades no intervalo [2 : 20] , com passos de dois. Optou-se por incluir 6 neurónios na camada escondida. A secção abaixo, „Parâmetros pré-definidos‟ justificará a escolha do número de neurónios na camada escondida.

A camada de saída consiste em apenas 1 neurónio com o resultado da previsão de um determinado mês.

As funções de activação são logsig12 e purelin13, respectivamente para a camada escondida e para a de saída.

Os algoritmos de treino com os quais se obteve melhor performance foram os algoritmos Levenberg-Marquardt e Resilient Back-Propagation14, baseados na retro- propagação do erro [Riedmiller & Braun, 1993]. Estes dois algoritmos registaram a melhor performance dentre o conjunto de algoritmos enumerado na secção abaixo. O processo de treino da rede é um processo iterativo que é interrompido por um dos critérios de paragem: atingir um erro mínimo desejado, atingir um número de iterações de treino ou validação cruzada. No presente estudo foi utilizada a função de performance MSE, que mede o erro quadrático médio e interrompe o processo sempre que é atingido o valor desejado. Utilizou-se um conjunto de validação, já descrito, para paragem antecipada com a finalidade de evitar a perda de generalização por parte da rede, aquando da classificação dos dados de teste. O MSE foi inicializado com um valor de 0,002, o que significa que o critério de paragem accionado será sempre a validação cruzada. O parâmetro que define o número máximo de iterações de treino (também designado por número de épocas), é inicializado a 200. Não é desejável que este critério interrompa o processo de treino, quando se possuem critérios de paragem mais avançados, por isso inicializa-se com um valor relativamente alto. No entanto, por uma questão de tempo de computação, pode eventualmente ser necessário parar o processo. Ao critério de paragem baseado na validação cruzada, está associado um parâmetro que define o número máximo de iterações sucessivas, nas quais a função de performance no conjunto de validação não foi melhorada. Por omissão esta variável é inicializada a 6 iterações. Isto significa que se ao longo do processo de treino, as actualizações sobre os pesos não resultarem numa melhoria da performance, ao longo de 6 iterações consecutivas, o processo de treino da iteração i é interrompido e o estado do processo

de treino volta à iteração i 6. Desta forma garante-se que as últimas iterações não contribuíram para a perda de generalização da rede neuronal em relação ao conjunto de teste. Refira-se que o conjunto de teste não é usado no processo de treino.

12 Função de transferência sigmoidal logarítmica. 13 Função de transferência linear.

14

CAPÍTULO 4. Modelos de Previsão

O processo de treino foi repetido 50 vezes, com diferentes inicializações dos pesos, uma vez que diferentes valores iniciais dos parâmetros da rede levam a diferentes mínimos locais. Das várias repetições, foi seleccionada a rede com menor erro relativo (Erro Percentual Absoluto Médio - EPAM), apresentado na (Equação 10).

4.3.1 Variáveis Auxiliares

Uma das limitações dos modelos de previsão de séries temporais é a sua incapacidade para prever alterações que não se encontram de alguma forma presentes no seu histórico. No contexto específico da metodologia de redes neuronais, será impossível para a rede prever características de uma determinada série, se não tiver a oportunidade de lidar, no processo de treino com padrões de alguma forma semelhantes. Desta forma surge a necessidade de dotar o sistema de previsão de um mecanismo que permita a inclusão de variáveis auxiliares no conjunto de entrada da rede neuronal [Law, 1999]. Estudou-se o efeito de determinadas variáveis susceptíveis de influenciar a série alvo da modelação. Assim, a entrada da RNA, poderá incluir nas suas amostras não só os dados históricos da série, mas também variáveis correlacionadas. A correlação é calculada sempre que o utilizador seleccione uma determinada variável. Cada variável constitui um vector de valores compreendidos no intervalo de tempo definido pela série que se pretende modelar.

Para o efeito foi seleccionado:

O índice de preços no consumidor em Portugal, compreendido no intervalo que decorre entre Janeiro de 1996 e Dezembro de 2008. Este índice refere-se apenas aos preços de hotéis, restaurantes e serviços relacionados com férias e alojamento [Eurostat, 2009];

A taxa de desemprego nacional e dos principais mercados estratégicos (Reino Unido, Espanha e França) no período entre Janeiro de 1990 e Dezembro de 2008 [Eurostat, 2009];

Uma variável representativa do estado do tempo em Portugal – temperatura máxima média em Lisboa, com valores mensais de Janeiro de 1990 a Dezembro de 2008 [ECA, 2009].

O mecanismo para incluir os vectores de variáveis auxiliares no processo de treino da rede neuronal é relativamente simples, adicionando à entrada o seu valor em paralelo com os dados históricos da série.

Desta forma, se for incluída uma variável auxiliar, e.g. temperatura média em Lisboa no intervalo de tempo que decorre entre Janeiro 1990 e Dezembro 2008, valor relativo ao mês i da série, será previsto, contando à entrada com o conjunto de valores

,..., 2, 1,

i i i i

S p S S v , em que p define a janela temporal e vio valor da variável auxiliar. Generalizando para mais de uma variável, a entrada da rede fica organizada do seguinte modo Si p,...,Si 2,Si 1,vji,..., 2 , 1v i v i , sendo que vji corresponde ao valor da variável auxiliar jrelativo ao mês i . Deste modo, não estão a ser incluídos os

valores históricos das variáveis auxiliares. De forma geral, o aumento acentuado da procura turística no mês de Agosto, deve-se às excelentes condições meteorológicas nesse mesmo mês, e não necessariamente à sequência formada pelos últimos p meses.

CAPÍTULO 4. Modelos de Previsão

4.3.2 Pré processamento dos Dados

O pré-processamento dos dados de entrada compreende o conjunto de operações realizadas sobre o dataset, imediatamente antes de estes alimentarem a rede neuronal. Basicamente, este tipo de pré-processamento normaliza o conjunto de entrada no intervalo [-1:1] sem alterar a sua variância dos dados originais. A Equação 14 apresenta a fórmula aplicada ao conjunto de entrada x, para um limite desejado compreendido no intervalo [ymin,ymax]. Este processamento é apenas aplicado às variáveis de entrada designadas por auxiliares.

Documentos relacionados