Inteligência Artificial

Isaías Lima · Capítulo 31 de 45

Páginas do PDF

Inteligência Artificial

4.9 Integração da Rede ao Sistema e Manutenção

4.9 Integração da Rede ao Sistema e

Manutenção

Finalmente, com a rede treinada e validada, ela pode ser integrada ao sistema computacional da aplicação. Para melhor eficiência da solução, este sistema deverá conter facilidades de utilização, como interfaces convenientes, e facilidades de aquisição de dados, através de planilhas eletrônicas, interfaces com unidades de processamento de dados, ou arquivos padronizados. Uma boa documentação do sistema e o treinamento de usuários são necessários para o sucesso do projeto final da aplicação pretendida.

Além disso, o sistema deve periodicamente monitorar seu desempenho e

realizar manutenções ou atualizações, quando for necessário. Outras melhorias poderão ainda ser sugeridas, quando os usuários forem se tornando mais familiares com o sistema. Essas sugestões poderão ser muito úteis em novas versões ou em novos produtos relacionados com o projeto inicial do sistema correspondente.

Se as etapas anteriores apresentaram sucesso, o modelo resultante pode ser

realizado para uso contínuo, lembrando que todo sistema computacional está sempre sujeito a alterações e melhorias contínuas.

Exemplo de implantação

Para exemplificar o desenvolvimento de aplicação utilizando uma rede neural, tomemos como base um problema de previsão de séries temporais.

O desenvolvimento de técnicas da área de IA tem fornecido ferramentas

eficientes para modelagem de séries temporais, na qual se destacam as

modelagens baseadas em redes neurais artificiais.

Segundo Guirelli et al. (2004), os métodos de modelagem baseados em

técnicas de IA apresentam problemas próprios. A codificação de conhecimentos nem sempre é uma tarefa trivial, e questões de como determinar quais dados e variáveis são importantes para um processo de modelagem constituem um procedimento que pode ser tão complexo quanto a utilização de modelos clássicos ou estatísticos.

Neste exemplo relacionado com a previsão de carga elétrica, os dados

utilizados foram extraídos da competição organizada pela European Network of Intelligent Technologist (EUNITE), referência na área de previsão de séries temporais abordando o tema sobre previsão de cargas

elétricas em 2004 (Rojas, 2004). Nessa competição, dadas as temperaturas e as cargas elétricas nos anos de 1997 e 1998 de uma determinada região, os competidores estimavam as previsões das cargas elétricas para o mês de janeiro de 1999. Os dados da competição foram fornecidos pela Corporação Elétrica Oriental Eslovaca (Eastern Slovakian Eletricity Corporation). Esta instituição tem grande interesse em aplicações de tecnologias inteligentes e adaptativas em previsões de cargas elétricas.

A série de carga investigada representa a demanda máxima diária da

carga consumida por um sistema elétrico. Esses dados compreendem valores de pico de carga no período de 1997 a 1998, cujos os dados estão

ilustrados na Figura 4.2. O objetivo é fornecer uma previsão de valores máximos diários de demanda de carga para o mês de janeiro de 1999, com a

estimação de 31 valores diários referentes a este mês.

 

image

FIGURA 4.2 Série temporal diária de carga de janeiro de 1997 a dezembro de 1998.

A série coletada contém informações de cargas elétricas medidas durante

todo um dia, onde cada observação corresponde a um horário específico. A série contém valores de cargas elétricas diárias dos anos de 1997 e 1998. Os horários utilizados como intervalos entre as observações apresentam-se com variação de meia hora durante todo um dia, iniciando à 00h30 e terminando às 24h. Um pré-processamento de dados foi realizado por intermédio da média dos valores dos horários de pico, gerando-se os valores diários utilizados no estudo. Para estabelecer um modelo baseado em redes neurais realizou-se a normalização dos valores das observações da série temporal,

através da expressão (4.3).

 

(4.3)

 

A partir dos correlogramas extraídos da série pode-se identificar a

existência de sazonalidade nos dados, que pode ter sido causada pela influência de fatores climáticos ou devido a hábitos semanais dos consumidores. Portanto, o conjunto de dados deve ser tratado antes de ser apresentado ao treinamento da rede.

A organização desses dados é preparada para a previsão diária. Desta

forma, para prever determinado dia, inclui-se nos padrões de entrada da

rede o conjunto de valores das observações da série agora estacionária,

definindo a janela temporal de análise, ou seja, o número de amostras do

passado a ser incluído para a previsão à frente. As redes neurais MLPs utilizadas em previsão de séries temporais têm um conjunto de entrada de valores passados ordenados no tempo e um valor de saída que consiste no próximo valor na sequência de dados da série. As amostras da rede neural

terá a estrutura descrita por (4.4).

 

(4.4)

Onde Z(t) é o ponto da série correspondente ao tempo t, p é o tamanho da janela de tempo e Zt é a amostra a ser prevista. Para um modelo com n amostras utiliza-se como base os valores das amostras Z(1), Z(2), Z(3), Z(4), Z(5) ..., Z(n). Durante o treinamento, a ideia é fornecer como entradas valores sucessivos da série, por exemplo, os valores de Z(1), Z(2), Z(3), Z(4) Z(5) Z(6) e Z(7), e definir a saída desejada para Z(8). Na segunda iteração, os valores das entradas seriam Z(2), Z(3), Z(4), Z(5) Z(6) Z(7), Z(8), e a saída desejada Z(9), e assim sucessivamente para o restante dos

pontos da série (Tabela 4.1).

 

Tabela 4.1

Entradas e saídas para o treinamento de MLPs com janela de sete valores

 

Entradas Saída desejada

Z(1), Z(2), Z(3), Z(4), Z(5), Z(6), Z(7) Z(8)

Z(2), Z(3), Z(4), Z(5), Z(6), Z(7), Z(8) Z(9) Z(3), Z(4), Z(5), Z(6), Z(7), Z(8), Z(9) Z(10) Z(4), Z(5), Z(6), Z(7), Z(8), Z(9), Z(10) Z(11) ... ... Z(n-7), Z(n-6), ... Z(n-1) Z(n)

O número de valores passados, usados como entrada, é chamado de

ordem de linha, atraso ou janela. No exemplo citado usou-se sete valores

para prever o próximo, portanto, a janela é de ordem sete (a previsão é

realizada considerando sete dias, sendo o oitavo dia previsto). A melhor janela a ser utilizada vem de estudos prévios, como as informações oriundas

do correlograma da série original. Além disso, váriaveis exógenas, como

temperatura, no caso de séries de carga em sistemas elétricos, são consideradas, podendo ser relevantes em sistemas de previsão.

A próxima etapa no desenvolvimento da aplicação de uma rede neural é a

divisão de conjuntos de dados em subconjuntos de treinamento, validação e teste (que é efetuada obedecendo a uma porcentagem para cada

subconjunto). A Figura 4.3 apresenta a porcentagem utilizada sobre o conjunto original de dados considerado neste exemplo.

FIGURA 4.3 Exemplo da divisão de dados na metodologia utilizada.

 

 

Em processos com comportamentos não lineares o modelo de rede neural

mais indicado é o Perceptron de Múltiplas Camadas ou topologia MLP, pois

se trata de um interpolador universal de funções (Haykin, 2007). As

topologias MLPs adotadas representam os modelos de redes neurais mais conhecidos e utilizados. Uma MLP consiste de n nós de entrada, h camadas de nós intermediários ou escondidos e m nós de saída, e todas as camadas são interconectadas pelos seus pesos sinápticos. A MLP deve ser treinada com dados históricos adequados, objetivando encontrar os valores apropriados dos pesos. O número de neurônios requeridos na camada oculta pode ser estabelecido empiricamente, ou a partir de estudos prévios sobre a complexidade do problema a ser analisado.

Neste exemplo será considerada uma rede neural MLP com um algoritmo

de treinamento SCGM (Scaled Conjugate Gradient Modified). A Tabela 4.2 exibe alguns dados utilizados inicialmente na busca dos parâmetros para a topologia da rede.

 

Tabela 4.2

Parâmetros da rede

 

Número de Camada [2-3]

Número de Neurônios [1 - 10]

Taxa Aprendizagem [0,0001 - 0,001]

Coeficiente Momentum [0,1 - 0,9]

Função de Ativação [Tan Hiperbólica, Logística Sigmoidal]

Para obtenção do modelo de rede neural foram utilizadas duzentas épocas

de treinamento. A Figura 4.4 apresenta o gráfico com os dados originais (+) e os valores resultantes (*) do treinamento da rede referente à série de dados de carga da competição Eunite.

FIGURA 4.4 Resultado do treinamento da rede.

 

Foi utilizado como critério de comparação dos dados obtidos pelo

modelo neural em relação aos dados originais da série o erro percentual

absoluto médio (Mean Absolute Percentage Error – Mape). O valor do

Mape (4.6) foi calculado a partir das previsões de um passo à frente

definido por cada modelo gerado (Stok e Watson, 2004).

 

(4.5)

 

Onde: