• Nenhum resultado encontrado

4 Metodologia Proposta

4.4 Conjunto de Bases

A partir dos procedimentos acima (pré-processamento e seleção), é necessário uni-los e criar as bases necessárias (treino, validação e teste) para os métodos de previsão. De posse dos dados (treino e validação), é aplicada a normalização sobre os dados. O fator de normalização encontrado é aplicado nos dados de teste, criando assim uma base uniforme e padronizada.

O próximo passo é a definição da quantidade de lags que irão compor as bases. No pro- cesso de seleção das variáveis, os lags definem até que ponto o algoritmo faz a busca por caracte- rísticas correlacionadas.

Como visto, as técnicas de seleção MI e PMI estão associadas ao uso do jump (“hora a ho- ra” ou “dia a dia”) para a definição de como é a abordagem nos dados. O lag funciona como um critério de parada para o algoritmo, interrompendo ao atingir a quantidade de variáveis candida- tas, além de reduzir a quantidade de processamento necessário, dado que a busca é feita apenas em cima do maior valor do lag, pois valores menores já estão embutidos no intervalo procurado.

Uma variação dessa ordem (pré-processamento e seleção) pode ser empregada. A seleção pode trabalhar tanto com os dados brutos quanto eles normalizados, portanto pode ser adicionado um critério de ordem da normalização, a qual deve ser aplicada antes ou depois do processo de seleção, gerando assim diferentes resultados a partir dos mesmos princípios.

É importante salientar que todo esse procedimento pode ser suprimido, total ou parcial- mente, podendo optar por não utilizar o pré-processamento e/ou a seleção das variáveis, bastando apenas definir o número de lags para compor as bases (nesse caso, dado um lag igual a , utiliza- se o intervalo ).

As bases são construídas a partir dessas condições, onde todo o processo de geração das configurações é baseado apenas nos períodos de treino e validação. O período de teste apenas utiliza tais informações geradas para a sua própria criação.

4.5 Métodos de Previsão

Tendo o conjunto de variáveis a serem utilizadas, a ferramenta passa para o processo se- guinte, de execução do método de previsão. Esse processo tem a finalidade de encontrar o previ- sor que melhor se adapte ao conjunto de dados, uma vez que cada metodologia possui caracterís- ticas próprias. Para tais testes são aplicadas as Redes Neurais Artificiais (do tipo MLP) para a previsão de séries temporais, uma vez que estas já se encontram bem definidas e desenvolvidas.

O sistema proposto tem o objetivo de averiguar e selecionar as melhores configurações para diferentes algoritmos de treinamento, dado que o grande desafio na utilização de redes neu- rais é selecionar um algoritmo de treinamento, e consequentemente, ajustar seus parâmetros, a fim de obter os pesos que possuam um melhor ajuste ao problema tratado.

Os algoritmos de treinamento utilizados foram o backpropagation com termo momentum (BPM) e o método gradiente (GRAD), método de Fletcher-Reeves (FR), método de Polak-

Ribière (PR), método de Davidon-Fletchier-Powell (DFP), método de Broyden-Fletcher- Goldfarb-Shanno (BFGS), método das secantes de um passo (OSS) e método do gradiente conju-

gado escalonado (SCGM).

A seguir, são dados mais detalhes sobre os parâmetros de configuração dos algoritmos de previsão, assim como o funcionamento da ferramenta.

Os algoritmos de previsão possuem as seguintes entradas:

entrada do conjunto de treinamento: características selecionadas do problema a ser treinada (base de dados);

saída do conjunto de treinamento: saída esperada dos dados treinados;

entrada do conjunto de validação: características selecionadas dos dados a serem validados (base de dados);

saída do conjunto de validação: saída esperada dos dados de validação;

número de neurônios: quantidade de neurônios nas camadas intermediárias;

taxa de aprendizagem: capacidade do neurônio em aprender a cada iteração. O valor deve ser pequeno para evitar saturação;

termo momentum: influência do termo momentum na atualização dos pesos;

limite de busca: limiar da seção áurea;

erro mínimo desejado: taxa de erro esperado para a parada do algoritmo;

número máximo de épocas: número de iterações para a atualização dos pesos;

aleatoriedade: fator de aleatoriedade do algoritmo.

E os retornos dos algoritmos de previsão são;

pesos da camada intermediária: pesos de ativação da camada intermediaria;

pesos da camada de saída: pesos da camada de saída;

Para cada algoritmo de treinamento há um conjunto de parâmetros do qual faz uso. No ge- ral, todos utilizam o conjunto de treinamento, conjunto de validação, número de neurônios, o erro mínimo, o número de épocas e a aleatoriedade, sendo que todos têm, como saída, os pesos da camada intermediária e de saída.

Apenas BPM e o GRAD fazem uso do termo momentum, mas somente o BPM utiliza a taxa de aprendizagem. Por sua vez, o FR, PR, DFP, BFGS e OSS utilizam do parâmetro limite de busca. Contudo, o SCGM é o único que faz uso do conjunto básico de parâmetros.

Para a seleção dos parâmetros de configuração, foi adotado o processo de busca exaustiva (força bruta), o qual consiste no teste de todas as configurações; mais detalhes sobre esse proces- so pode ser visto em (FRANCO JR., 2010). Esse processo foi adotado devido ao fato da comple- xidade em escolher tais valores de forma arbitrária.

Apesar do demasiado tempo gasto para varrer todo o conjunto de parâmetros, esse proces- so se mostrou bastante útil, pois o torna automático e independe do fator humano.

Suponha que haja os parâmetros, número de neurônios ( ) e termo momentum ( ), on- de e . É feita uma enumeração da permutação des- ses parâmetros , como pode ser visto abaixo.

Combinação 1 - ; Combinação 2 - ; ...

Combinação n-1 - ; Combinação n - ;

Desse modo, o esforço humano é determinar os valores que devem fazer parte do conjunto de parâmetros configuráveis, para que o sistema realize de forma exaustiva a busca por resultados que melhor se apliquem ao problema tratado.

A execução do algoritmo de previsão percorre todas as combinações de parâmetros trei- nando e validando seus resultados, isso acontece vezes. A cada resultado mais próspero encon- trado utilizando os dados de validação, os melhores pesos são armazenados para compor o resul- tado final para cada tipo de previsor.

Dado que esta aplicação é voltada para séries temporais (mais especificamente, demanda de carga), a previsão é feita por faixa de horas, portanto para a hora 01 temos um conjunto de pesos, para a hora 02 temos outro conjunto de pesos, e assim por diante, até completar as 24 ho- ras. Esse tipo de abordagem foi escolhido, devido ao fato que a demanda apresenta comporta- mento muito divergente ao longo do dia, mas similar na mesma faixa de horário e dessa forma, tem-se para cada hora, uma determinada combinação de pesos mais próspera.

Isto pode parecer óbvio, mas é importante ressaltar que o desempenho do previsor é for- mado por um grande número de fatores. Diferentes previsores podem ter desempenhos comple- tamente diferentes para um mesmo conjunto de dados, isso porque os dados podem receber dife- rentes níveis de exposição ao treinamento. Alguns previsores podem ser mais aptos a outros tipos de problema, ou mesmo se adequarem melhor a situações mais ou menos complexas.

Documentos relacionados