• Nenhum resultado encontrado

Estudos especiais I Redes Neurais da família ART

N/A
N/A
Protected

Academic year: 2021

Share "Estudos especiais I Redes Neurais da família ART"

Copied!
48
0
0

Texto

(1)

PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

“Estudos especiais I – Redes Neurais da família ART ”

Kenji Nose Filho

Orientadora: Profa. Dra. Anna Diva P. Lotufo

Estudos especiais I apresentado à Faculdade de Engenharia - UNESP – Campus de Ilha Solteira

Ilha Solteira – SP Junho/2010

(2)

2. Resumo 02

3. Redes neurais artificiais 03

3.1. Introdução a redes neurais artificiais 03

3.2. O neurônio artificial 05

3.3. Redes perceptron multicamadas (MLP – Multi Layer Perceptron ) 09

3.4. Algoritmo backpropagation 11

4. Redes neurais da família ART 13

4.1. Introdução a redes da família ART 13

4.2. Operadores lógicos fuzzy AND/OR 16

4.3. Rede ART fuzzy 17

4.4. Rede ARTMAP fuzzy 22

4.5. Redes neurais da família ART 25

4.6. Aplicações recentes utilizando redes da família ART 31

4.7. Inclusão do treinamento continuado nas redes ART fuzzy e ARTMAP

fuzzy 32

5. Previsão de cargas elétricas utilizando redes ARTMAP e GRNN 35

6. Conclusões

7. 41

(3)

1. Objetivo

O objetivo principal deste trabalho é o estudo dos principais conceitos e estruturas das redes neurais da família ART.

2. Resumo

As redes neurais da família ART (Adaptive Ressonance Theory) são de grande importância para a resolução de problemas complexos como o reconhecimento e a classificação de padrões, previsão de séries temporais, robótica, etc., tendo em vista de proporcionarem respostas rápidas e suficientemente precisas nestes tipos de aplicações. Tais requisitos são contemplados baseados no dilema da estabilidade, onde sempre há garantia da obtenção de uma solução e da plasticidade, propriedade da inclusão do treinamento continuado. Antes de estudar as redes neurais da família ART, serão vistos os principais conceitos de redes neurais artificiais.

O capítulo 3 é referente às redes neurais artificiais. Na seção 3.1 é feito uma breve introdução. Na seção 3.2 são abordados os principais conceitos a respeito do neurônio artificial e das primeiras RNAs como o perceptron e a ADALINE. Na seção 3.3 é descrito a estrutura de uma rede perceptron multicamadas (MLP) e na seção 3.4 é descrito um dos algoritmos mais utilizados para o treinamento de redes MLP, o algoritmo backpropagation.

O capítulo 4 é referente às redes neurais da família ART. Na seção 4.1 é feito uma breve introdução. Na seção 4.2, são introduzidos os operadores lógicos fuzzy AND/OR utilizados nas redes ART fuzzy e ARTMAP fuzzy, estas redes são descritas com detalhes nas seções 4.3 e 4.4 respectivamente. Na seção 4.5 são descritas as redes da família ART estudadas. Na seção 4.6 são citadas aplicações recentes utilizando as redes da família ART e na seção 4.7 é referente à inclusão do treinamento continuado nas redes ART fuzzy e ARTMAP fuzzy.

O capitulo 5 é referente à aplicação de uma rede ARTMAP fuzzy e uma GRNN para a previsão de cargas.

(4)

3. Redes neurais artificiais

3.1. Introdução a redes neurais artificiais

As redes neurais artificiais (RNAs) (Haykin, 2008) têm como característica principal “simular” o funcionamento do cérebro humano, reproduzindo artificialmente a maneira como os estímulos são processados por nossos neurônios. As RNAs com seus mecanismos de associação, generalização e auto-organização conquistaram o seu espaço dentro do mundo moderno.

O primeiro neurônio artificial foi descrito por McCulloch e Pitts em 1943 (McCulloch e Pitts, 1943). Em 1958, Rosemblatt apresentou o seu trabalho sobre o perceptron (Rosemblatt, 1958), uma das primeiras RNAs, com apenas um neurônio e aprendizagem supervisionada. Logo após em 1960, Widrow e Hoff desenvolveram o algoritmo do mínimo quadrado médio (LMS, Least Mean-Square) (Widrow e Hoff, 1960) e com este deram origem ao elemento linear adaptativo (Adaline, Adaptive linear element). Logo após Widrow propôs a estrutura múltipla (Madaline, Multiple adaline). Nos anos 70 surgiram vários trabalhos a respeito dos mapas auto-organizáveis utilizando aprendizagem competitiva, com os trabalhos pioneiros de Willshaw e von der Marslburg (Willshaw e Marslburg, 1976). Em 1976 surgem os primeiros trabalhos de Grossberg a respeito da teoria da ressonância adaptativa (ART, Adaptive Ressonance Theory) (Grossberg, 1976a, 1976b). No início dos anos 80 surgiram as redes de Hopfield (Hopfield, 1982) e os mapas auto-organizáveis de Kohonen (Kohonen, 1982). Em 1985 surgiu a máquina de Boltzmann (Ackley et al., 1985), trabalho desenvolvido por Ackley, Hinton e Sejnowski, um exemplo de RNA de múltiplas camadas bem sucedido na época. Em 1986 Rumelhart, Hinton e Willians apresentaram o algoritmo retro-propagação (backpropagation) (Rumelhart et al. 1986), primeiramente proposto por Werbos em 1974 (Werbos, 1974). O backpropagation é um dos algoritmos mais utilizados até hoje, inclusive como padrão de referência. Em 1987 Grossberg apresenta a sua primeira rede baseada na teoria da ressonância adaptativa, conhecida como ART1 (Grossberg, 1987).

Nos últimos 20 anos, várias outras redes foram desenvolvidas, novos algoritmos de treinamento surgiram e o uso de técnicas híbridas vem sido bastante estudado. Como exemplos estão as redes de função de base radial (RBF, Radial Basis Function Neural Network) (Moody e Darken, 1989), a rede probabilística (PNN, Probabilistic Neural Network), a rede de regressão generalizada (GRNN, General Regression Neural Network)

(5)

introduzidas por Specht (Specht, 1990, 1991), as redes ART fuzzy, ARTMAP e ARTMAP fuzzy, desenvolvidas por Carpenter et al. (Carpenter et al., 1991a, 1991b, 1992), o sistema de inferência fuzzy com aprendizagem baseada nas RNAs (ANFIS , Adaptive Neuro-Fuzzy Inference System) (Jang, 1993), e vários outros sistemas não menos importantes.

Nas ultimas décadas vários trabalhos têm sido propostos utilizando RNAs e suas aplicações em previsões de séries temporais, aproximação de funções, reconhecimento de padrões, classificação, mapeamento e outros, fazem com que as RNAs sejam utilizadas nas três grandes áreas do conhecimento: biológicas, exatas e humanas. Pesquisas recentes vêm aplicando as RNAs em diagnósticos médicos, mapeamento do genoma humano, previsão do tempo, previsão de demanda de energia elétrica, previsão de preços de energia elétrica, classificação e detecção de faltas nos sistemas de energia elétrica, classificação de consumidores do setor elétrico, classificação de consumidores de lojas de varejo, entre outros. As RNAs podem ser programadas tanto em hardwares quanto em softwares. Graças ao grande avanço tecnológico é possível programar RNAs em circuitos RLC, FPGAs (Field Programmable Gate Array), microprocessadores, circuitos integrados utilizando tecnologia CMOS (Complementary Metal Oxide Semiconductor) (Oki, 1998), (Lucks e Oki, 1999), entre outros.

Em geral as RNAs podem ser classificadas em recorrentes ou não recorrentes. As redes recorrentes possuem laços de realimentação, ou seja, a saída dos neurônios de determinadas camadas realimentam a entrada desta mesma camada ou de camadas anteriores.. As redes não recorrentes, também conhecidas como feedforward não possuem laços de realimentação, ou seja, a saída dos neurônios de uma camada só alimenta a entrada dos neurônios da camada seguinte.

A aprendizagem das redes neurais artificiais ocorre na fase de treinamento (Wasserman, 1989). O treinamento realiza o ajuste dos pesos e bias, responsáveis pelo armazenamento de informações. O treinamento pode ser supervisionado ou não supervisionado. O treinamento supervisionado é um treinamento que utiliza os padrões de entrada e saídas desejadas. Já o treinamento não supervisionado é um treinamento que utiliza somente os padrões de entrada, em geral trata-se de um processo auto-organizável. Além disso, o treinamento pode ser “on-line” ou “off-“on-line”. No treinamento “on-“on-line” ou treinamento por padrão de entrada os pesos são atualizados para cada padrão de entrada. No treinamento “off-line” ou treinamento por lote o ajuste dos pesos ocorre após a apresentação de todos os padrões de entrada do lote de treinamento.

(6)

3.2. O neurônio artificial

O primeiro neurônio artificial descrito por McCulloch e Pitts em 1943 (McCulloch e Pitts, 1943) visa a interpretação de estímulos, gerados por dados de entrada, que resultam em uma resposta. Esta resposta é a saída de uma função (linear ou não linear), denominada função de ativação, cuja entrada é a composição linear dos dados de entrada multiplicados por “pesos” somados a um elemento denominado “bias” com peso unitário. Este neurônio pode ser descrito através da figura 3.2.1.

F(.)

W1 W2 W3 Wn X1 X2 X3 Xn y Bias 1 Saída Y Entradas B

Figura 3.2.1. Neurônio artificial de McCulloch e Pitts.

Sendo:

X1, X2, ... , Xn – são as entradas;

W1, W2, ... , Wn – são os pesos correspondentes;

B – é o bias que é o elemento de soma auxiliar;

y – é o elemento intermediário dado por (3.2.1); F(.) – é a função linear ou não linear;

Y – é a saída dado por (3.2.2).

(3.2.1)

(3.2.2)

As funções de ativação mais utilizadas são as funções: linear, relé, sigmóide 1 e 2 e gaussiana, dadas por (3.2.3)-(3.2.7), respectivamente (Haykin, 2008).

(7)

Função linear Sendo: α – Coeficiente linear. (3.2.3) Função relé (3.2.4) Função sigmóide 1 Sendo:

λ – Coeficiente que determina a abertura da função sigmóide.

(3.2.5) Função sigmóide 2 (3.2.6) Função gaussiana (3.2.7)

(8)

A figura 3.2.2 exprime o comportamento de cada uma das funções acima descritas.

a) b) c)

\

d) e)

Figura 3.2.2. Funções de ativação, a) função linear, b) função relé, c) função sigmóide 1, d) função sigmóide 2 e e) função gaussiana.

Com base neste neurônio Rosemblatt propôs o perceptron (Rosemblatt, 1958), cuja característica principal é a classificação de conjuntos linearmente separáveis, seu treinamento é do tipo supervisionado, o ajuste dos pesos e bias é feito através do cálculo do erro entre a saída produzida pelo perceptron e a saída desejada. A função de ativação utilizada é a função relé dada por (3.2.4), o ajuste dos pesos é dado por (3.2.8) e o cálculo do erro é dado por (3.2.9).

Outra rede, baseada em um único neurônio, é a rede ADALINE, proposta por Widrow e Hoff que utiliza o algoritmo LMS (Least mean square) (Widrow and Hoff, 1960), a diferença entre o perceptron e o ADALINE ocorre no ajuste dos pesos e bias, sendo que no ADALINE, o erro é calculado tomando-se a saída intermediária da rede. A adaptação dos pesos é dada por (3.2.8), mas o erro é dado por (3.2.10). A função de ativação desta rede é a mesma do perceptron. -5 0 5 -5 0 5 F (y ) y -5 0 5 -1 -0.5 0 0.5 1 F (y ) y -5 0 5 -1 -0.5 0 0.5 1 F (y ) y -5 0 5 0 0.2 0.4 0.6 0.8 1 F (y ) y -5 0 5 0 0.2 0.4 0.6 0.8 1 F (y ) y

(9)

Sendo:

W – Vetor de pesos, dado por [W1 W2 ... Wn B]; X – Vetor de entrada, dado por [X1 X2 ... Xn 1]; n – Número de entradas da rede;

W(k) – Vetor de pesos da iteração k;

W(k+1) – Vetor de pesos da iteração k+1 (vetor de pesos atualizado); X(k) – Vetor de entrada;

β – Taxa de aprendizagem [0 1];

ε(k) – Erro;

k – índice de iteração do processo adaptativo.

(3.2.8)

Sendo:

ε(k) – Erro produzido pela saída da rede Y(k) com a saída desejada D(k), dado por (5).

(3.2.9)

Sendo:

ε(k) – Erro produzido pela saída intermediaria da rede y(k) com a saída intermediaria desejada

d(k).

(10)

3.3. Redes perceptron multicamadas (MLP – Multi Layer Perceptron )

As redes perceptron multicamadas são estruturas compostas por vários perceptrons dispostos em várias camadas (Haykin, 2008). Estas camadas são denominadas: camada de entrada, camadas intermediárias ou escondidas e camada de saída. As camadas intermediárias podem ser compostas por mais de uma camada. As camadas de entrada e intermediárias possuem um número independente de neurônios, somente a camada de saída possui um número de neurônios fixo que deve ser igual ao número de saídas da rede.

A figura 3.3.1 ilustra a estrutura de uma rede perceptron multicamadas do tipo feedforward com 3 camadas.

X1 X2 X3 Entradas W11 W22 W33 W12 W13 W31 W32 W23 W21 1 F1(.) F1(.) F1(.) F2(.) F2(.) U11 U12 U21 U22 U31 U32 Fn(.) V11 V21 Camada de entrada Camada Intermediária (Escondida) Camada de Saída Saída Y W01 1 1 1 1 1 W03 W02 U01 U02 V01

Figura 3.3.1. Rede neural artificial perceptron multicamadas, com 3 camadas, com 3 entradas, 3neurônios na camada de entrada, 2 neurônios na camada intermediaria e uma saída.

O número de pesos, bias e funções de ativação são determinados através do número de entradas, do número de saídas, do número de camadas e do número de neurônios por camada.

(11)

Sendo:

ne – número de entradas; ns – número de saídas;

m – número de camadas, sendo m-2 o número de camadas intermediárias; ni – número de neurônios de cada camada, i=1,2, ...,m.

Tem-se que a matriz de pesos e bias de cada camada é definida por:

Matriz de pesos e bias da camada de entrada (i=1): ne+1 linhas e n1 colunas.

Matrizes de pesos e bias das camadas intermediárias (i=2, ..., m-1): ni-1+1 linhas e ni colunas.

Matriz de pesos e bias da camada de saída (i=m): nm-1 linhas e ns colunas.

Os elementos da primeira linha de cada matriz representam os bias e as demais linhas representam os pesos de cada camada.

Cada camada pode ter uma função de ativação Fi diferente e possui um número de funções de ativação igual ao número de neurônios desta camada.

Quanto ao treinamento de redes MLP feedforward, existem vários algoritmos propostos na literatura, sendo o mais comum, o algoritmo backpropagation que visa o ajuste dos pesos e bias através do gradiente descendente (algoritmo de 1ªordem) (Werbos, 1974). Além deste, existem outros algoritmos de ordem elevada como o algoritmo de Levenberg-Marquardt (Hagan e Mehnaj, 1994) e quase-Newton (algoritmos de 2ªordem).

(12)

3.4. Algoritmo backpropagation

Este algoritmo visa o ajuste dos pesos e bias das redes MLP de forma a minimizar a função erro através do gradiente descendente desta função. O treinamento se dá por encerrado quando um número máximo de iterações (épocas) é atingido ou o valor do módulo do gradiente da função erro é menor que um parâmetro pré-especificado.

A função erro ou função desempenho, mais utilizada em redes MLP via backpropagation é a função MSE (Mean Squared Error) dada por (3.4.1) (Haykin, 2008). De forma geral, o ajuste dos pesos e bias é dado por (3.4.2).

Sendo:

– Saída do i-ésimo neurônio da camada de saída; – Média das saídas desejadas;

– Número de saídas provenientes da camada de saída.

(3.4.1)

Sendo:

Wjk+1 – Vetor de pesos da coluna j da matriz de pesos e bias da camada W; x – vetor de entradas relacionadas à camada W;

β – taxa de aprendizagem;

δj – pode ser calculado por (3.4.3) se W for a ultima camada ou por (3.4.4) para as demais camadas; nw – número de neurônios da camada W.

(3.4.2)

Sendo:

– derivada da função de ativação da camada W; – Erro, dado por (3.2.9).

(3.4.3) Sendo:

– derivada da função de ativação da camada W;

– peso da camada U, que liga o neurônio j da camada W ao neurônio k da camada U.

(13)

Este algoritmo tem este nome, pois o ajuste dos pesos e bias é realizado na direção contrária ao cálculo da saída, o primeiro ajuste ocorre nos pesos e bias da última camada e a partir destes os demais reajustes são realizados.

Inicialmente os pesos e bias são determinados de modo aleatório, com valores entre [0 1]. O treinamento das redes MLP via backpropagation é do tipo supervisionado e pode ser efetuado de duas formas (Minussi e Silveira, 1995). O treinamento pode ser efetuado realizando-se uma iteração para cada padrão de entrada (treinamento “on-line” ou treinamento por padrão) ou uma iteração após a apresentação de todos os padrões de entrada do lote de treinamento (treinamento “off-line” ou treinamento por lote), onde uma iteração consiste em um ajuste dos pesos e bias.

Apesar de ser um algoritmo bastante utilizado, o algoritmo backpropagation apresenta dois grandes problemas, o da alta probabilidade em se cair em mínimos locais e a paralisia da rede (Krose e Smagt, 1996).

As maiorias das redes MLPs envolvem funções de ativação do tipo sigmóide em pelo menos uma de suas camadas, estas funções fazem com que a função erro apresente vários mínimos locais. Um dos critérios de parada do algoritmo backpropagation se dá quando o valor do módulo do gradiente da função erro é menor que um parâmetro pré-especificado, neste caso a função erro cai em um mínimo e a probabilidade deste ser um mínimo local é alta.

A paralisia da rede se dá quando o estímulo produzido na entrada da função de ativação (sigmóide) é muito elevado, ocasionando em uma derivada de valor aproximadamente nulo, sendo assim, o ajuste do peso dado por (3.4.2) é praticamente nulo, pois depende da derivada da função de ativação.

Existem vários algoritmos derivados deste que apresentam um melhor desempenho, tentando evitar os mínimos locais e a paralisia da rede através do ajuste dinâmico de alguns parâmetros do treinamento e das funções sigmóides. Entre eles estão:

Algoritmo backpropagation com momento (Widrow e Lehr, 1990)

Algoritmo backpropagation com taxa de aprendizagem adaptativa

Algoritmo backpropagation com momento e taxa de aprendizagem adaptativa

Algoritmo backpropagation com momento e ajuste da taxa de treinamento através de

lógica fuzzy (Lopes et al., 2000)

Algoritmo backpropagation com ajuste dinâmico dos parâmetros de inclinação e translação da função sigmóide (Lopes et al., 2003)

(14)

4. Redes neurais da família ART

4.1. Introdução a redes da família ART

A rede ART (Adaptive Ressonance Theory ou Teoria da Ressonância Adaptativa) foi primeiramente introduzida por Grossberg em 1976 (Grossberg, 1976a, 1976b). Esta rede se baseia na teoria da ressonância adaptativa para simular o processo de aprendizagem do cérebro humano (Grossberg, 1980).

A teoria da ressonância adaptativa tenta explicar a maneira de como nosso cérebro processa e categoriza informações na medida em que nos são apresentadas novas informações. Esta rede lida com o dilema da estabilidade/plasticidade que é a capacidade de aprender novas informações sem que as informações passadas sejam perdidas e isto tem que ser feito de forma a não afetar na estabilidade do sistema. A estabilidade, que é a capacidade do sistema permanecer estável em resposta a informações já aprendidas, é garantida através do processo de adaptação dos pesos, que tendem ao valor mínimo entre a entrada da rede e o peso a ser atualizado. Já a plasticidade, que é a capacidade da rede de aprender sem perder tudo aquilo que foi aprendido anteriormente é garantida através da ativação de novas categorias.

As principais redes desta família são as redes ART1, ARTMAP, ART fuzzy e ARTMAP fuzzy (Grossberg, 1987), (Carpenter et al., 1991a, 1991c 1992). As redes ART1 e ART fuzzy são redes com treinamento não supervisionado, e as redes ARTMAP e ARTMAP fuzzy são redes com treinamento supervisionado. As redes ART1 e ARTMAP se diferem das redes ART fuzzy e ARTMAP fuzzy por processarem apenas dados binários enquanto que as outras duas processam tanto dados binários quanto analógicos. A diferença em seus algoritmos é que nas redes ART fuzzy e ARTMAP fuzzy são utilizados os operadores lógicos fuzzy AND/OR e nas redes ART1 e ARTMAP são utilizados os operadores lógicos binários AND/OR.

O processo de treinamento das redes da família ART é um processo de treinamento “on-line” onde os pesos são ajustados a cada apresentação dos padrões de entrada. Diferentemente das redes MLP via backpropagation submetidas a treinamento “on-line”, as redes da família ART não correm o risco de desestabilizar a saída para padrões de entrada já aprendidos (Grossberg, 1987).

(15)

A rede ART pode ser descrita por um sistema composto de dois subsistemas, um subsistema de atenção e um subsistema de orientação (Grossberg, 1987).

O subsistema de atenção é composto por duas camadas denominadas F1 e F2, cada camada contêm neurônios responsáveis pela comparação e o reconhecimento de padrões, respectivamente. Estes neurônios são interconectados por pesos, denominados de memória de longo prazo (LTM – Long Term Memory). Estes neurônios produzem atividades denominadas de memória de curto prazo (STM – Short Term Memory). As camadas F1 e F2 são conectadas pelos pesos LTM e esta conexão pode ser de F1 para F2 e de F2 para F1, como pode ser visto através da figura 4.1.1. ρa Subsistema de atenção Subsistema de orientação STM STM F2 F1 LTM LTM I reset

Figura 4.1.1. Arquitetura simplificada de uma rede ART1.

O subsistema de orientação serve para estabilizar a aprendizagem do sistema, permitindo que a rede aprenda sem esquecer o conhecimento já adquirido. Este subsistema é responsável por dizer se houve ou não ressonância e pelo sinal de “reset”.

A rede ART armazena informações em forma de categorias, o número de neurônios na camada F1 e F2 são iguais ao número máximo de categorias que o sistema é capaz de armazenar. Para cada categoria, existe um vetor peso associado a ela. Uma categoria é dita ativa quando o vetor peso associado a ela armazena informações de padrões já apresentados à rede. Uma categoria é dita inativa se possui a ela atribuída um vetor peso inalterado, as categorias inativas correspondem à memória “em branco” da rede.

(16)

Alguns parâmetros são de extrema importância no processo de classificação e aprendizagem das redes neurais da família ART. Estes parâmetros são: o parâmetro de escolha (α), o parâmetro de vigilância (ρ) e o parâmetro de taxa de treinamento (β).

Parâmetro de escolha (α > 0) – Parâmetro que define a ordem de busca das atividades em F2.

Parâmetro de vigilância (ρ E [0 1]) – Parâmetro que define a seletividade do sistema, quanto mais próximo de um, mais seletivo será o sistema.

Parâmetro de taxa de treinamento (β Ε [0 1]) – Parâmetro que define a velocidade em que os pesos são reajustados, para β=1 o treinamento é considerado rápido.

A classificação de padrões nas redes ART1 é dada em quatro etapas, reconhecimento, comparação, busca e aprendizagem (Grossberg, 1987). Para melhor ilustrar cada etapa, será feito um exemplo, considerando I um vetor de entrada contendo n elementos, X a atividade da camada F1 (STM em F1), Y o vetor de atividades da camada F2 (STM em F2) contendo m elementos, W a matriz de pesos (LTM) contendo m linhas e n colunas, sendo m o número máximo de categorias.

Reconhecimento – Etapa que ocorre na camada F2. O vetor I com os vetores linha da

matriz W gera estímulos em F2. A atividade YJ é então selecionada e corresponde ao maior estímulo gerado pelo vetor linha WJ e o vetor I.

Comparação – Etapa que ocorre na camada F1. O vetor I é comparado com o vetor linha WJ, gerando a atividade X, se X for maior que ρ, então o neurônio J é ativado, ocorre a ressonância, e passa-se para a fase de aprendizagem (adaptação do pesos), caso contrário, entra-se na fase de busca até que ocorra a ressonância.

 Busca – Quando não ocorre a ressonância, ocorre o reset, o estímulo produzido pelo vetor linha WJ com I é zerado e uma nova atividade YJ’ é selecionada.

 Aprendizagem – Quando ocorre a ressonância, ocorre o ajuste dos pesos do vetor linha WJ. Nesta fase se β=1 os pesos são ajustados em um único ciclo, para β<1 são necessários mais de um ciclo para o ajuste dos pesos. Existem vantagens e desvantagens para cada um dos casos, para β=1, a rede é capaz de aprender em apenas um ciclo a respeito de eventos raros, porém para os eventos comuns esta pode não ser a melhor solução, sendo preferível utilizar nestes casos β<1. Porém, no caso de se utilizar β<1, mais ciclos de treinamento serão necessários, tornando assim o processo de aprendizagem mais lento.

(17)

4.2. Operadores lógicos fuzzy AND/OR

Os operadores lógicos fuzzy AND/OR (Carpenter et al., 1991c), denotados por ⋀ e ⋁, respectivamente, são capazes de realizar operações com números analógicos, diferentemente dos operadores lógicos binários AND/OR, denotados por ∩ e U, respectivamente. O operador lógico fuzzy AND realiza a operação mín. e o operador lógico fuzzy OR realiza a operação máx. Para melhor compreender estes operadores será realizada a operação mín. e máx. entre dois números.

Seja u=0,2 e v=0,5:

⋀ í í (4.2.1) ⋁ á á (4.2.2)

Se u e v forem dois pontos no R2, u=[0,1 0,9] e v=[0,8 0,3], então:

⋀ í í í í (4.2.3) ⋁ á á á á (4.2.4)

No R2 os pontos u, v, u⋀v e u⋁v, formam um retângulo, dado pela figura 4.2.1, este retângulo é denominado hiper-retângulo.

u u u⋀v u⋀v vv u⋁v u⋁v 1 1 1 1

(18)

4.3. Rede ART fuzzy

A rede ART fuzzy é capaz de realizar a classificação de dados binários e analógicos devido à substituição do operador lógico binário AND, utilizado na rede ART1, pelo operador lógico fuzzy AND (Carpenter et. al., 1991c). A representação das categorias nas redes ART fuzzy é dada por hiper-retângulos. Em comparação com a rede ART1, esta rede possui uma camada adicional denominada F0 onde ocorre a normalização do vetor de entrada e a execução do código complemento. Estas duas etapas são necessárias para evitar a proliferação de categorias e para preservar a amplitude da informação. A arquitetura desta rede é dada pela figura 4.3.1. ρ A reset Normalização e Código Complemento AC A F0 F1 F2 Wj ART

Figura 4.3.1 Arquitetura da rede ART fuzzy.

A classificação e aprendizagem dos padrões nas redes ART fuzzy é dada basicamente em seis etapas: normalização do vetor de entrada, execução do código complemento, reconhecimento, comparação (teste de vigilância), busca e aprendizagem.

(19)

Antes de descrever o processo de classificação de padrões nas redes ART fuzzy, serão definidos cada um dos elementos que a compõem.

Sendo:

– Parâmetro de escolha >0. – Parâmetro de vigilância [0 1].

– Parâmetro de taxa de treinamento [0 1]. – Número máximo de categorias.

– vetor de entrada M-dimensional. – vetor de atividades no campo F2.

– matriz de pesos.

Inicialmente realiza-se a leitura dos parâmetros iniciais α, ρ, β e Nc. Feito isso, deve-se inicializar os pesos da rede, estes são inicializados todos iguais a um, conforme (4.3.1):

(4.3.1)

Cada linha j da matriz W (vetor linha Wj) representa uma categoria, cada categoria é então um vetor representado geometricamente por hiper-retângulos. Na ressonância o vetor Y representa a categoria ativada por A.

Realizada a leitura dos parâmetros e a inicialização dos pesos, passa-se para a fase de classificação e aprendizagem.

Normalização do vetor de entrada – A normalização (4.3.2) é um processo que padroniza todos os elementos do vetor de entrada A para que fiquem dentro de uma faixa de valores compreendidos entre 0 e 1. Isto é necessário para evitar a proliferação de categorias (Carpenter et al. 1991c). Existem vários tipos de normalizações que podem ser efetuadas através do uso de diferentes normas, dentre eles está a normalização pela norma do máximo (4.3.3), a normalização pela norma da soma (4.3.4) e a normalização pela norma euclidiana (4.3.5), definidos pelos operadores , respectivamente.

(20)

(4.3.2) (4.3.3) (4.3.4) (4.3.5)

A norma utilizada em Carpenter et al. (1991c) é a norma da soma, toda vez que aparecer a norma subtende-se que seja a norma da soma.

Código complemento – o código complemento serve para preservar a amplitude da informação do vetor de entrada A, este código gera um vetor I, 2M-dimensional, definido por (4.3.6).

Sendo:

- Vetor complemento de A, definido por (4.3.7)

(4.3.6)

(4.3.7)

Reconhecimento – Esta etapa é responsável pelo reconhecimento dos estímulos produzidas no campo F2, para isto calculam-se os elementos do vetor T através de uma função denominada função de escolha. Existem diversas funções de escolha, como as definidas em Carpenter e Gjaja (1994). A mais utilizada é a função de escolha pela lei de Weber (Carpenter e Grossberg, 1987), descrita por (4.3.8).

(4.3.8)

Outras funções possíveis, definidas em Carpenter e Gjaja (1994), são as funções de escolha por proporção (4.3.9), por intersecção (4.3.10) e por diferença (4.3.11).

(21)

(4.3.9)

⋀ (4.3.10)

⋀ ⋁ (4.3.11)

A categoria J é escolhida conforme (4.3.12).

(4.3.12)

Os elementos do vetor Y são dados por (4.3.13).

(4.3.13)

Comparação – Esta fase define se ocorre ou não a ressonância entre o vetor I e a categoria WJ, caso ocorra, segue-se para a fase de aprendizagem, caso contrário entra-se na fase de busca.

A ressonância ocorre se for satisfeita a condição dada por (4.3.14), caso contrário, entra-se na fase de busca.

(4.3.14)

Busca – Nesta fase, zera-se o elemento TJ (reset), e escolhe-se outra categoria, calculam-se novamente os elementos de Y e passa-calculam-se para a facalculam-se de comparação. Este processo calculam-se repete até ocorrer a ressonância.

Aprendizagem – Nesta etapa é realizada a adaptação dos pesos da categoria J, dada por (4.3.15).

(4.3.15)

(22)

Teste de vigilância Não Sim Normalização e Código complemento Aprendizagem Comparação Busca Reconhecimento TJ=0 YJ=1 Yj=0 para j≠J TJ=máx{Tj: j=1,...,N} Escolha da categoria através da função de escolha Normalização e Código Complemento Leitura do padrão de entrada A Inicialização dos pesos.

Wj =1

leitura dos parâmetros iniciais α, ρ, β e Nc

(23)

4.4. Rede ARTMAP fuzzy

A rede ARTMAP fuzzy é capaz de realizar o treinamento supervisionado de dados binários e analógicos através da pré-classificação dos dados de entrada e saída em categorias. Esta rede é composta por dois módulos ART e um módulo inter-ART (Carpenter ET. al. 1992).

Os módulos ART são denominados ARTa e ARTb, cada um é responsável pela

pré-classificação dos dados de entrada e saída respectivamente. O módulo inter-ART realiza a conexão entre as categorias de entrada e as categorias de saída. A arquitetura desta rede é dada pela figura 4.4.1.

ρa A reset Normalização e Código Complemento AC A ρb B reset Normalização e Código Complemento BC B F0a F1a F2a F0b F1b F2b Fab match-tracking Wja Wkb Wjab Xab ρab ARTa ARTb inter-ART

Figura 4.4.1 Arquitetura da rede ARTMAP fuzzy.

Antes de descrever o seu funcionamento, serão descritos os elementos que compõem uma rede ARTMAP fuzzy.

(24)

Sendo:

– Parâmetro de escolha >0.

– Parâmetro de vigilância dos módulos ARTa, ARTb e inter-ART respectivamente [0 1].

– Parâmetro de taxa de treinamento [0 1].

– Taxa de incremento do parâmetro de vigilância do módulo ARTa.

– Número máximo de categorias dos módulos ARTa e ARTb respectivamente.

– vetor de entrada Ma-dimensional.

– vetor de entrada Mb-dimensional.

– vetor de atividades no campo F2a.

– vetor de atividades no campo F2b.

– matriz de pesos do módulo ARTa.

– matriz de pesos do módulo ARTb.

– matriz de pesos do módulo inter-ART.

A aprendizagem da rede ARTMAP fuzzy pode ser descrita basicamente em seis etapas, normalização dos vetores de entrada e saída, execução do código complemento, reconhecimento, comparação, busca e aprendizagem. Antes de serem realizadas estas etapas é realizada a leitura dos parâmetros α, ρa, ρb, ρab, β, ε, Nca, Ncb, feito isto ocorre a inicialização dos pesos, todos iguais a um. Durante todo o processo, são realizados três processos de comparação e três processos de busca, um para cada módulo. O processo de comparação e busca realizado no módulo inter-ART é denominado “match-tracking”, este processo visa a conexão das categorias ativas no módulo ARTa e ARTb. Todo o processo de aprendizagem

(25)

Não Teste de vigilância Teste de vigilância Teste de vigilância Não Sim Não Normalização e Código complemento Reconhecimento Comparação Busca Aprendizagem “Match-tracking” Ta J=0 Adaptação dos pesos:

Acréscimo do parâmetro de vigilância ρa: Ta J=0 Atividade de F2b: Sim Ta J=máx{Taj : j=1,...,Nca} Atividade de F2a: Sim Tb K=máx{Tbk : k=1,...,Ncb} Tb K=0 Escolha da categoria: Normalização e Código Complemento Leitura dos padrões de

entrada e saída: A e B Inicialização dos pesos:

Wa

j =1, Wbk =1 e Wabj =1 leitura dos parâmetros

iniciais: α, β, ρa, ρb, ρab, ε, Nca e

Ncb

(26)

4.5. Redes neurais da família ART

ART1 – Primeira rede neural artificial da família ART, introduzida por Grossberg em 1987, sua principal característica é o treinamento não supervisionado e a capacidade de reconhecimento de padrões de entrada binários de forma aleatória. (Grossberg, 1987)

ART2 – Rede neural da família ART, com treinamento não supervisionado capaz de reconhecer padrões de entrada binários e analógicos de forma aleatória. Diferentemente da rede ART1, a rede ART2 utiliza-se de equações algébricas para a seleção de categorias, enquanto que a rede ART1 utiliza-se de lógica binária. (Carpenter e Grossberg, 1987).

ART2-A – Rede neural da família ART, derivada da rede ART2 com algoritmo modificado para exercer o treinamento de forma mais rápida (cerca de 2 a 3 vezes mais rápido que a rede ART2) mas com a mesma dinâmica, seu treinamento é do tipo não supervisionado e com capacidade de reconhecer padrões de entrada binários e analógicos de forma aleatória. (Carpenter et al., 1991b)

ART fuzzy – Rede neural da família ART, derivada da rede ART1, com treinamento não supervisionado, seu algoritmo foi modificado para reconhecer padrões de entrada binários e analógicos de forma aleatória. Sua grande diferença com relação à rede ART é que são utilizados ao invés das operações lógicas binárias AND/OR, os operadores lógicos fuzzy AND/OR. (Carpenter et al., 1991c)

ARTMAP – Rede neural da família ART, cuja principal característica é o treinamento supervisionado de padrões de entrada e saída binários. Esta rede conta com dois módulos ART1 e um módulo denominado inter-ART. Um módulo ART1, denominado ARTa, é utilizado para a classificação dos padrões de entrada, enquanto o outro, denominado ARTb, é utilizado para a classificação dos padrões de saída. O módulo inter-ART é responsável pela conexão entre as categorias criadas pelos módulos ARTa e ARTb. (Carpenter et al., 1991a)

ARTMAP fuzzy – Rede neural da família ART, derivada da rede ARTMAP, cuja característica principal é o treinamento supervisionado de padrões de entrada e saída binários

(27)

e/ou analógicos. Isto é feito, substituindo as operações lógicas binárias AND/OR da rede ARTMAP pelos operadores lógicos fuzzy AND/OR. (Carpenter et al., 1992)

S-ART – Rede neural da família ART, derivada da rede ART2-A, seu algoritmo foi modificado para acelerar o processo de treinamento da rede ART2-A no modo de treinamento intermediário, reduzindo o número de apresentações dos padrões de entrada, necessários para que a rede aprenda de forma eficaz. O treinamento intermediário força o algoritmo a tomar passos pequenos na direção de cada padrão de entrada, permitindo uma associação de categorias de forma mais eficaz. Segundo os autores isto pode ser conseguido ajustando-se o parâmetro de treinamento para 1/P onde P é o número de vezes que o padrão de entrada será apresentado para a rede. (Taylor e Greenhough, 1994)

Gaussian ARTMAP – Rede neural da família ART, derivada da rede ARTMAP com treinamento supervisionado de padrões de entrada binários e/ou analógicos. Sua principal diferença está na função de escolha, baseada na distribuição gaussiana. Resultados comprovam uma melhor generalização e bom desempenho em ambientes ruidosos quando comparada com a rede ARTMAP fuzzy. (Williamson, 1996)

RBF-Fuzzy ARTMAP – Rede neural da família ART, derivada da rede ARTMAP fuzzy com treinamento supervisionado e rápido de padrões de entrada binários e/ou analógicos. Trata-se de uma rede híbrida que combina a rede de base radial (RBF – Radial Basis Function) com a rede ARTMAP fuzzy. Foi projetada para contornar os problemas na classificação de padrões obtidos com a ordem de apresentação dos padrões de entrada. Na rede ARTMAP fuzzy este problema é bastante comum, pois esta rede possui modo de treinamento “on-line”, onde os pesos são atualizados na medida em que são apresentados novos padrões de entrada, já nas redes do tipo base radial, a ordem de apresentação dos padrões de entrada não interfere muito no seu desempenho, uma vez que o treinamento seja realizado “off-line”, ou seja, antes de ocorrer a atualização dos pesos, ocorre um pré-processamento de todos os dados. A criação desta nova rede permite uma rede com a mesma dinâmica e as mesmas características de estabilidade/plasticidade das redes ARTMAP fuzzy, menos sensível à ordem de apresentação dos padrões de entrada. Esta rede possui uma estrutura muito similar a da rede ARTMAP fuzzy, só que ao invés do módulo ARTa, existe um módulo RBF, este módulo é composto pela camada de entrada e a camada escondida da rede RBF. (Tontini e Abelardo, 1996)

(28)

Distributed ARTMAP (dARTMAP) – Rede neural da família ART, projetada para combinar as principais características das redes MLP e ARTMAP fuzzy. Trata-se de uma rede derivada da rede ARTMAP fuzzy com treinamento supervisionado e rápido de padrões de entrada binários e/ou analógicos. Um dos principais problemas em se trabalhar com a rede ARTMAP fuzzy em ambientes ruidosos é a proliferação de categorias. Em compensação, redes MLP possuem em geral um treinamento lento enquanto que a rede ARTMAP fuzzy possui treinamento rápido e modo de treinamento “on-line”. A rede dARTMAP combina as principais características das duas arquiteturas (ARTMAP fuzzy e MLP), resultando em uma rede com um treinamento rápido e “on-line”, mantendo as características de estabilidade/plasticidade das redes ARTMAP fuzzy e a capacidade de trabalhar em ambientes ruidosos sem que ocorra a proliferação de categorias. Esta rede pode ser utilizada em dois modos de operação, distribuído ou winner takes all (WTA). No modo distribuído, esta rede age evitando a proliferação de categorias em ambientes ruidosos, enquanto que no modo WTA suas características se assemelham bastante a da rede ARTMAP fuzzy. A proliferação de categorias é evitada no modo distribuído, mas a precisão dos resultados pode ser afetada. (Carpenter et al., 1998)

Hypersphere ART/ARTMAP (H-ART/ARTMAP) – Rede neural da família ART, derivadas das redes ART/ARTMAP com treinamento não supervisionado e supervisionado de padrões de entrada binários e/ou analógicos. Sua grande diferença em relação às redes ART/ARTMAP fuzzy está no modo como são representadas as categorias. Nas redes ART/ARTMAP fuzzy as categorias são representadas por hiper-retângulos, nas redes H-ART/ARTMAP as categorias são representadas por hiper-esferas. (Anagnostopoulos e Georgiopuolos, 2000)

Ellipsoid ART/ARTMAP (EA/EAM) – Rede neural da família ART, derivadas das redes H-ART/H-ARTMAP com treinamento não supervisionado e supervisionado de padrões de entrada binários e/ou analógicos. A sua grande diferença em relação às redes H-ART/H-ARTMAP está no modo como são representadas as categorias, nestas as categorias são representadas por hiper-esferas, já nas redes EA/EAM as categorias são representadas por elipses. (Anagnostopoulos e Georgiopuolos, 2001)

μARTMAP – Rede neural da família ART, derivada da rede ARTMAP fuzzy com treinamento supervisionado e rápido de padrões de entrada binários e/ou analógicos. Projetada

(29)

para solucionar o problema da proliferação de categorias, que ocorrem em algumas aplicações. As categorias são representadas por hiper-retângulos, assim como na rede ARTMAP fuzzy. Para evitar o problema da proliferação de categorias é utilizado um compacto conjunto de regras do tipo se-então para o posicionamento e dimensionamento inteligente dos hiper-retângulos. (Sánchez et al., 2002)

ART-Kohonen – Rede neural da família ART, derivadas das redes ART1 e Kohonen com treinamento não supervisionado de padrões de entrada binários e/ou analógicos. Trata-se de um modelo hibrido com arquitetura semelhante a da rede ART1, porém a escolha das categorias, o teste de vigilância e a adaptação dos pesos são baseados na rede de Kohonen. A categoria escolhida se baseia na topologia do neurônio vencedor WTA (Winner Takes All) cujo neurônio vencedor é tido como aquele que possui a menor distância euclidiana com o padrão de entrada. (Yang et al., 2003)

ART&ARTMAP fuzzy – Rede neural da família ART composta por duas redes, uma rede ART fuzzy para o pré-processamento de sinais analógicos e uma rede ARTMAP fuzzy para o treinamento supervisionado de padrões de entradas e saídas. O padrão de entrada é composto por dois vetores, um vetor de entrada externo e outro provido da saída da rede ART fuzzy. (Lopes et al., 2005)

ARTN/ARTMAPN Fuzzy – Redes neurais da família ART, derivadas das redes ART/ARTMAP fuzzy com treinamento não supervisionado e supervisionado de padrões de entrada binários e/ou analógicos. Diferentemente das redes ART/ARTMAP fuzzy, estas redes não necessitam da normalização e execução do código complemento. A principal diferença está na função de escolha que é baseada na norma Lp. Resultados comprovam uma boa

performance quando comparadas com as redes ART/ARTMAP fuzzy tradicionais. (Dagher, 2006)

ARTMAP fuzzy, Ellipsoidal ARTMAP e Gaussian ARTMAP otimizadas por algoritmo genético (GFAM, GEAM e GGAM respectivamente) – Estas redes são derivadas da rede ARTMAP para o treinamento supervisionado de padrões de entrada e saída binários e/ou analógicos. Diferem-se pelo modo como são representadas suas categorias, sendo representadas por hiper-retângulos, elipses e curvas gaussianas, respectivamente. O uso de algoritmos genéticos aumenta a capacidade de generalização destas redes e pode ser uma

(30)

alternativa para o problema da proliferação de categorias em algumas aplicações. (Kaylani, et al., 2007)

ARTMAP fuzzy otimizada através de enxame de partícula (PSO – Particle Swarm Optimization) – Trata-se de uma rede neural da família ART, com arquitetura baseada na rede ARTMAP fuzzy para o treinamento supervisionado e rápido de padrões de entrada binários e/ou analógicos. Sua grande característica é a otimização dos parâmetros da rede ARTMAP fuzzy utilizando PSO. Resultados comprovam uma significante redução do erro de generalização. (Granger, et al., 2007)

Self-supervised ARTMAP – Trata-se de uma rede neural da família ART, derivada da rede ARTMAP fuzzy para o treinamento supervisionado e não supervisionado de padrões de entrada binários e/ou analógicos. Sua principal característica é a habilidade de ser treinada supervisionada e não supervisionada, ou seja, consegue aprender através de padrões de entrada que possuem um padrão de saída desejada e também de aprender com padrões de entrada que não possuem um padrão de saída desejado, sem interferir na estabilidade das informações já adquiridas. (Amis e Carpenter, 2010)

Biased ARTMAP – Rede neural da família ART, derivada da rede ARTMAP fuzzy para o treinamento supervisionado de padrões de entrada binários e/ou analógicos. Desenvolvida para lidar com os problemas que podem ser ocasionados pela atenção direta aos comportamentos críticos, esta rede volta a sua atenção para as categorias já aprendidas durante o processo de busca. (Carpenter e Gadam, 2010)

(31)

ART2-A (1991) S-ART (1994) ARTMAP (1991) Gaussian ARTMAP (1996) RBF ARTMAP fuzzy (1996) dARTMAP (1998) H-ARTMAP (2000) E-ART (2001) E-ARTMAP (2001) μARTMAP (2002) ART Kohonen (2003) ARTN Fuzzy (2006) ARTMAP N fuzzy (2006) GFAM (2007) GGAM (2007) GEAM (2007) Self-supervised ARTMAP (2010) Biased ARTMAP (2010) ART Treinamento não supervisionado Treinamento supervisionado ART2 (1987) H-ART (2000) ART fuzzy (1991) ART1 (1987) ARTMAP fuzzy (1992)

(32)

4.6. Aplicações recentes utilizando redes da família ART

Embora as redes MLP sejam as mais utilizadas, recentemente, tem sido publicado bastantes trabalhos utilizando as redes da família ART. Neste estudo foram vistos algumas aplicações recentes, dentre elas estão:

 Análise de faltas em máquinas rotativas utilizando a rede ART-Kohonen. (Yang et al., 2003)

 Uso da rede ARTMAP para problemas que envolvam dados coletados a partir de diferentes fontes com perspectivas, pontos de vista e objetivos diferentes, este tipo de problema é tratado na literatura especializada como sendo um problema de data fusion ou fusão de dados. (Carpenter et al. 2005)

Previsão de cargas elétricas utilizando a rede ART&ARTMAP fuzzy. (Lopes et al., 2005)

Classificação de faltas em sistemas de energia elétrico utilizando a rede ART fuzzy. (Vasilic e Kezunovic, 2005)

 Previsão de preço de energia elétrica utilizando redes neurais artificiais, neste trabalho é utilizada uma rede da família ART para o pré-processamento dos dados de entrada que alimenta uma rede MLP backpropagation para a previsão do preço de energia elétrica de um dia à frente. (Pino et al. 2008)

(33)

4.7. Inclusão do treinamento continuado nas redes ART fuzzy e ARTMAP fuzzy As redes neurais da família ART por possuírem um modo de treinamento “on-line”, podem ser adaptadas para trabalharem no contexto de treinamento continuado. O treinamento continuado se torna necessário em sistemas reais contínuos no qual a cada instante de tempo são apresentados novos padrões de entrada e saída ao sistema. As redes ART fuzzy e ARTMAP fuzzy apresentadas nas seções 4.3 e 4.4 possuem um número de categorias fixo. Para trabalharem neste contexto, é necessária a adição de uma etapa onde novas categorias sejam criadas assim que necessárias.

Nesta seção serão apresentados os fluxogramas das seções 4.3 e 4.4 modificados, possibilitando o treinamento continuado destas redes.

Na rede ART fuzzy, a etapa onde o número de categorias é incrementado ocorre na fase de busca. A criação de uma nova categoria implica na criação de um novo vetor linha na matriz de pesos W, com valores inicializados todos iguais a 1.

Na rede ARTMAP fuzzy, este processo se torna um pouco mais complexo, pois lida com a criação de duas categorias, as categorias do módulo ARTa e as categorias do módulo ARTb. Portanto, a etapa de incremento, deve ocorrer nas fases de busca do módulo ARTa, do módulo ARTb e do módulo Inter-ART. Cada vez que for criada uma nova categoria no módulo ARTa, ou seja, cada vez que for criado um novo vetor linha em Wa, deve ser criado um novo vetor linha em Wab, a criação desta nova categoria pode ocorrer tanto na fase de busca do módulo ARTa quanto na fase de busca do módulo Inter-ART. Cada vez que for criada uma nova categoria no módulo ARTb, ou seja, cada vez que for criado um novo vetor linha em Wb, deve ser criada um novo vetor coluna em Wab. Os vetores linha criados nas matrizes Wa, Wb e Wab são vetores com elementos unitários, já que essas linhas correspondem a uma categoria inativa. O vetor coluna criado na matriz Wab é um vetor com zeros e uns. A criação de uma nova coluna na matriz Wab inclui linhas ativas e linhas inativas que correspondem as categorias ativas e inativas do módulo ARTa. Sendo assim, este vetor coluna deve assumir zeros nas linhas que correspondem às categorias ativas e uns nas linhas que correspondem às categorias inativas. As figuras 4.7.1 e 4.7.2 ilustram o fluxograma modificado das redes ART fuzzy e ARTMAP fuzzy, respectivamente.

(34)

Teste de vigilância Não Sim Normalização e Código complemento Aprendizagem Comparação Busca Reconhecimento Nc=Nc+1; J=Nc; WJ=1; Não Cont_a≤Nc TJ=máx{Tj : j=1,...,Nc} Escolha da categoria através da função de escolha; Cont_a=1; TJ=0; Cont_1=Cont_a+1; YJ=1 Yj=0 para j≠J sim Normalização e Código Complemento Leitura do padrão de entrada A Inicialização dos pesos.

Wj =1 leitura dos parâmetros

iniciais α, ρ, β e Nc

Figura 4.7.1. Fluxograma do algoritmo de classificação da rede ART fuzzy, modificado para o treinamento continuado.

(35)

Não Teste de vigilância Teste de vigilância Teste de vigilância Não Não Normalização e Código complemento Reconhecimento Comparação Busca Aprendizagem Cont_b≤Ncb Ta J=0; Cont_a=Cont_a+1; Ncb=Ncb+1; K=Ncb; Wb K=1; WabK=i;* Nca=Nca+1; J=Nca; WaJ=1; Wab J=1; Não Não Sim Sim Não Sim Acréscimo do parâmetro de vigilância ρa: Cont_a≤Nca Cont_a≤Nca *i=1 para as categorias inativas da coluna K; i=0 para as categorias ativas da coluna K; Atividade de F2a : Sim Ta J=máx{T a j : j=1,...,Nca} Ta J=0; Cont_a=Cont_a+1; Atividade de F2b : Sim T b K=0; Cont_b=Cont_b+1; Tb K=máx{T b k : k=1,...,Ncb} Escolha da categoria: Cont_a=1; Cont_b=1; Normalização e Código Complemento Leitura dos padrões de

entrada e saída: A e B Inicialização dos pesos:

Wa

j =1, Wbk =1 e Wabj =1

leitura dos parâmetros iniciais: α, β, ρa, ρb, ρab, ε, Nca e

Ncb

Adaptação dos pesos:

Sim

Figura 4.7.2. Fluxograma do algoritmo de classificação da rede ARTMAP fuzzy, modificado para o treinamento continuado.

(36)

5. Previsão de cargas elétricas utilizando redes ARTMAP e GRNN

Alguns estudos e planejamentos em sistemas de energia elétrica necessitam da previsão de cargas elétricas. Dentre eles, estão: despacho econômico, fluxo de potência, estabilidade transitória, planejamento de geração, planejamento de transmissão, planejamento de expansão e a compra e venda de energia elétrica. Para que o sistema opere de modo seguro, confiável e econômico (Ranaweera et al., 1997), uma boa previsão de carga é necessária, tanto na fase de geração quanto na fase de transmissão ou na fase de distribuição (Kermanshahi e Iwamiya, 2002). Deste modo, tem-se a necessidade de se prever as cargas em vários pontos do sistema de energia elétrica de maneira rápida e precisa.

Historicamente, encontram-se vários métodos para realizar a previsão de cargas: regressão linear múltipla ou simples, alisamento exponencial, estimação de estado, filtro de Kalman, métodos ARIMA de Box e Jenkins (Box e Jenkins, 1976) entre outros. Todos estes métodos necessitam da modelagem matemática da carga.

Uma alternativa para a resolução do problema de previsão de cargas é a utilização de redes neurais artificiais (RNAs), lógica fuzzy e sistemas híbridos.

As RNAs apresentam inúmeras vantagens, sendo as principais delas a capacidade de aprendizado e generalização (Haykin, 2008).

A modelagem matemática da carga é uma tarefa bastante dispendiosa, e nem sempre é a que apresenta melhores resultados, por isso o uso de RNAs, lógica fuzzy e sistemas híbridos vêm sendo bastante utilizados, pois não necessitam da modelagem matemática da carga. Nos artigos de Saini e Soni (2002) e Malki et al., (2004) os autores utilizam redes neurais perceptron multicamadas (MLP – Multi Layer Perceptron ) para realizar a previsão de cargas de curto prazo, no primeiro as redes foram treinadas com os algoritmos de Levenberg-Marquardt e quase-Newton, no segundo, as redes foram treinadas com o algoritmo backpropagation. No artigo de Pandian et al. (2006), os autores utilizam lógica fuzzy para realizar a previsão de cargas de curto prazo. Nos artigos de Telbany e Karmi, (2008) e Yun et al., (2008) os autores trabalham com o uso de sistemas híbridos para realizar a previsão de cargas de curto prazo, o primeiro utiliza particle swarm optimization (PSO) para o treinamento de uma RNA e o segundo utiliza redes de funções de base radial (RBF) e o ANFIS (Adaptive Neuro Fuzzy Inference System), que é um sistema híbrido que combina lógica fuzzy com RNAs. No trabalho de Lopes et. al., (2010), os autores utilizam uma rede ART&ARTMAP fuzzy que combina um módulo ART fuzzy para o pré-processamento de

(37)

entradas analógicas e uma rede ARTMAP fuzzy para a aprendizagem supervisionada. Através deste sistema, os autores conseguem um ganho computacional em termos de velocidade de processamento e menores erros na previsão, comparados com os resultados obtidos utilizando-se uma rede MLP via backpropagation.

As RNAs e alguns sistemas híbridos são capazes de aprender o comportamento da carga através de um treinamento adequado (Moody e Darken, 1989; Widrow e Lehr, 1990; Chen et al., 1996) composto de dados históricos das cargas e dados exógenos. Alguns dados exógenos possuem grande influência no comportamento e no valor da carga elétrica, como: temperatura, umidade, dia da semana, hora, feriados, entre outros.

Para a previsão de cargas de um sistema de energia elétrico da Nova Zelândia, serão utilizadas uma rede ARTMAP fuzzy e uma GRNN (General Regression Neural Network) (Specht, 1991). Através destas redes serão previstas as cargas de meia em meia hora dos primeiros sete, 14 e 21 dias do mês de janeiro de 2009. Para isto as redes foram treinadas com dados históricos referentes aos anos de 2007 e 2008.

Foram elaborados dois sistemas, um que realiza a previsão da carga correspondente à meia hora seguinte (sistema 1), e outro sistema capaz de prever as 48 cargas referentes ao dia seguinte (sistema 2), conforme as figuras 5.1 e 5.2.

Mês de referência (m/12), m=mês Dia da semana [1 0 0 0]T - segunda-feira [0 1 0 0]T - terça à sexta-feira [0 0 1 0]T - sábado [0 0 1 0]T - domingo Horário de verão 1 – pertence 0 - não pertence Feriado 1 – sim 0 – não Hora de referência (n/48), n=amostra Carga n-1 (Normalizada)

Entradas Rede Neural Saída

Sistema 1

Carga n (Normalizada)

(38)

Mês de referência (m/12), m=mês Dia da semana [1 0 0 0]T - segunda-feira [0 1 0 0]T - terça à sexta-feira [0 0 1 0]T - sábado [0 0 1 0]T - domingo Horário de verão 1 – pertence 0 – não pertence Feriado 1 – sim 0 – não Carga n-48 (Normalizada)

Entradas

Rede Neural

Saídas

Carga n-47 (Normalizada) Carga n-24 (Normalizada) Carga n-1 (Normalizada) Carga n-2 (Normalizada)

Sistema 2

Carga n (Normalizada) Carga n+1 (Normalizada) Carga n+24 (Normalizada) Carga n+47 (Normalizada) Carga n+46 (Normalizada)

Figura 5.2. Sistema 2 – previsor de carga global do dia seguinte.

A escolha das redes ARTMAP fuzzy e GRNN para a previsão de cargas é porque estes sistemas são capazes de identificar padrões e comportamentos. Uma vez treinado o sistema,

(39)

dado uma entrada, este sistema irá identificar o padrão que mais se identifica com a entrada e deste modo realiza a previsão. O funcionamento de ambas as redes são muito parecidos, com a diferença de que as redes da família ARTMAP possuem um modo de treinamento “on-line”, podendo ser incluídas em aplicações que necessitam do treinamento continuado.

Utilizou-se para cada sistema, uma rede ARTMAP fuzzy e uma GRNN, para o sistema 1, as redes foram denominadas ARTMAP1 e GRNN1, para o sistema 2 as redes foram denominadas ARTMAP2 e GRNN2. Estas redes foram treinadas com dados históricos extraídos do Centralized Dataset (CDS) disponibilizados pelo Electricity Comission da Nova Zelândia, referentes à carga global de 9 subestações de energia elétrica da Nova Zelândia. Os parâmetros de entrada e saída de cada sistema são ilustrados nas Figs. 5.1 e 5.2.

Para cada rede, foram realizados 3 treinamentos distintos e 3 previsões distintas. A tabela 5.1 faz referência ao período compreendido em cada treinamento, a tabela 5.2 é referente aos dias previstos em cada previsão. As redes foram treinadas e simuladas através do aplicativo MATLAB, para a GRNN, utilizou-se do toolbox de redes neurais.

Tabela 5.1 Período compreendido em cada treinamento.

Treinamento Período

Treinamento 1 01-01-2007 à 14-01-2007 + 01-01-2008 à 14-01-2008 (total de 28 dias/1344 amostras)

Treinamento 2 01-01-2007 à 31-01-2007 + 01-01-2008 à 31-01-2008 (total de 62 dias/2976 amostras)

Treinamento 3 01-01-2007 à 31-12-2007 + 01-01-2008 à 31-12-2008 (total de 731 dias/35088 amostras)

Tabela 5.2 Período compreendido em cada previsão.

Previsão Período

Previsão 1 01-01-2009 à 07-01-2009 (total de 7 dias/336 amostras)

Previsão 2 01-01-2009 à 14-01-2009 (total de 14 dias/672 amostras)

Previsão 3 01-01-2009 à 21-01-2009 (total de 21 dias/1008 amostras)

Os parâmetros de treinamento de cada uma das redes podem ser observados através da tabela 5.3. A tabela 5.4 apresenta os resultados obtidos, em termos de tempo de treinamento (s), tempo de previsão (s), MAPE (Mean Absolute Percentage Error) e EMáx (Erro Máximo absoluto percentual).

(40)

Tabela 5.3. Parâmetros de treinamento das redes neurais utilizadas.

GRNN1 Spread=0.04

GRNN2 Spread=0.075

ARTMAP1 ρa=1, ρb=1, ρab=1, α = 0, β = 1

ARTMAP2 ρa=1, ρb=1, ρab=1, α = 0, β = 1

Tabela 5.4. Resultados obtidos com o uso das redes GRNN1, GRNN2, ARTMAP1 e ARTMAP2.

Previsão 1 Previsão 2 Previsão 3

T re in a me n to 1 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 T. tr. (s) 0.30 0.34 16.04 0.04 0.31 0.32 15.99 0.04 0.28 0.35 15.98 0.04 T. prev. (s) 3.07 0.17 0.37 0.02 5.97 0.24 0.68 0.02 8.69 0.32 1.01 0.03 MAPE (%) 3.06 3.51 2.33 3.48 2.61 2.56 2.09 2.69 2.42 2.17 2.16 2.36 EMáx (%) 12.24 13.89 11.16 16.36 12.24 13.89 11.16 16.36 12.24 13.89 11.16 16.36 T re in a me n to 2 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 T. tr. (s) 0.32 0.35 101.37 0.08 0.33 0.33 97.91 0.07 0.33 0.31 100.42 0.07 T. prev. (s) 3.17 0.17 1.14 0.02 6.18 0.23 1.88 0.03 8.84 0.30 2.88 0.04 MAPE (%) 3.11 3.02 2.28 3.48 2.72 2.42 2.10 2.70 2.47 1.97 1.90 2.68 EMáx (%) 12.24 13.89 11.16 16.36 12.24 13.89 11.16 16.36 12.24 13.89 11.16 16.36 T re in a me n to 3 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 GRNN 1 GRNN 2 ARTMAP 1 ARTMAP 2 T. tr. (s) 0.34 0.33 --- 6.41 0.37 0.34 --- 6.72 0.35 0.32 --- 6.63 T. prev. (s) 5.95 0.18 --- 0.16 11.59 0.25 --- 0.31 17.10 0.31 --- 0.49 MAPE (%) 3.06 2.99 --- 3.48 2.72 2.85 --- 2.70 2.46 2.41 --- 2.68 EMáx (%) 12.11 13.76 --- 16.36 12.11 13.76 --- 16.36 12.11 13.76 --- 16.36

O vetor de entrada do sistema 1 é composto por 9 elementos e o vetor de saída é composto de um elemento, referente ao valor da carga da meia hora seguinte. Já o vetor de entrada do sistema 2 é composto por 55 elementos e o vetor de saída é composto de 48 elementos referentes às cargas do dia seguinte.

O tempo de treinamento da rede GRNN é padrão, em torno de 0.35s, que é o tempo necessário que se leva para armazenar os padrões de treinamento na memória. Já para as redes ARTMAP, observou-se que o tempo de treinamento aumenta de forma considerável quando se aumenta o número de vetores de treinamento. O tempo de treinamento da rede ARTMAP2 é inferior ao tempo de treinamento da rede ARTMAP1, isto porque são utilizados menos

(41)

vetores no treinamento da ARTMAP2. A rede ARTMAP1, não foi treinada com todos os vetores correspondentes ao treinamento 3, pois, levar-se-ia muito tempo para realizar tal treinamento. Quanto ao tempo de previsão, de modo geral, observa-se que quanto maior o período previsto, maior o tempo necessário para realizar a previsão, de modo geral as redes ARTMAPs são mais rápidas que as redes GRNNs. O tempo gasto pelas redes do sistema 2, levam menos tempo para realizar as previsões, isto porque para prever um dia com o sistema 2 é necessário realizar apenas uma previsão, enquanto que o sistema 1 necessita realizar 48 previsões.

Para o treinamento 1 e 2, as melhores previsões foram obtidas com a rede ARTMAP1, já para o treinamento 3, as redes GRNN1 e GRNN2 se saíram melhor que a rede ARTMAP2, apresentando menores erros na previsão. De modo geral o valor do MAPE diminui quando são previstos mais cargas, isto deve ser porque a previsão de todos estes dias incluem a previsão de 2 dias atípicos, o que ocasionam em erros maiores que os erros obtidos com a previsão de dias típicos, portanto, quanto mais dias típicos são previstos, a média dos erros (MAPE) tende a cair. Observa-se através destes resultados que a rede ARTMAP é capaz de prover bons resultados, em alguns casos, até melhores que os obtidos com a GRNN. A grande vantagem da rede ARTMAP utilizada é a possibilidade de realizar o treinamento continuado, o que não é possível com o uso da GRNN.

É interessante observar que os resultados obtidos com a rede ARTMAP2, para o treinamento 2 e 3 são iguais, isto demonstra que o treinamento 2 foi suficiente para apresentar bons resultados, não sendo necessário a utilização de tantos padrões de treinamento. Caso a rede ARTMAP1, fosse treinada com o treinamento 3, os resultados seriam muito parecidos com os resultados obtidos para o treinamento 2. A vantagem da rede ARTMAP2 com relação à rede ARTMAP1 é o tempo de treinamento e previsão, porém, os resultados obtidos com este sistema foram inferiores. Pode-se dizer que o sistema 1 visa uma melhor precisão dos resultados, enquanto o sistema 2 visa um menor tempo de treinamento e previsão.

(42)

6. Conclusões

Neste trabalho foram estudadas as principais características das principais redes da família ART. A grande vantagem em se trabalhar com as redes da família ART é o treinamento rápido, “on-line” e estável, podendo este ser supervisionado ou não supervisionado. Quando submetidos a um extenso treinamento sua capacidade de generalização é superior a das redes MLP via backpropagation.

O treinamento destas redes é considerado rápido, pois necessita de poucas iterações e não existe um critério de parada, sendo possível o usuário decidir a quantidade de vezes que um mesmo padrão será apresentado à rede. Além disso, somente os pesos que correspondem a aquele padrão serão atualizados, deste modo não interfere na resposta do sistema para outros padrões.

Algumas desvantagens em se trabalhar com as redes da família ART é a proliferação de categorias e a dependência da ordem com que os padrões de entrada são apresentados, mas estes problemas podem ser contornados através do uso de técnicas híbridas.

As redes da família ART são bastante indicadas para o reconhecimento de padrões, problemas que envolvam variáveis lingüísticas, data mining ou mineração de dados, data fusion ou fusão de dados, clusterização, entre outros.

Para o problema da previsão de cargas foi possível obter, utilizando a rede ARTMAP fuzzy, bons resultados, comparáveis com os resultados obtidos com a GRNN e em alguns casos, até melhores, como no caso da rede ARTMAP1. As grandes vantagens destas redes são: a possibilidade de trabalhar em sistemas que necessitam de treinamento continuado e as características de estabilidade e plasticidade, possibilitando o aprendizado de novas informações sem que as informações passadas sejam perdidas.

Referências

Documentos relacionados

Entretanto, quando a quantidade de água for superior a essa ou ainda, quando houver uma retirada diária muito grande de água, ou seja, rápida renovação do lençol d'água, pode ser

a) Não haverá lugar ao pagamento de IMT nessa operação, desde que nenhum dos sócios fique a deter mais do que 75 por cento do capital social da BOLOS

Especificação Valor Limite de Meses Pontuação Máxima.. SECRETARIA MUNICIPAL DE SAÚDE ADM. A classificação final constará do somatório da pontuação obtida nos

A importância da resposta a Vettori não reside no comentário acerca da não realização do favor, mas no fato de Machiavelli afirmar que não sabia fazer outra coisa além de

O aluno estudará os princípios básicos do Design e da Decoração de interiores, como desenvolver um projeto, sua apresentação e execução, bem como sua

A infor- mação contida neste documento não tem como igualmente como finalidade sugerir e ou orientar os seus destinatários quanto aos investimento e

Mais especi…camente, a partir de uma base de dados consolidada de captações e aplicações dos bancos brasileiros, e compulsório sobre depósitos a prazo total, nós fazemos um

O conto &#34;Ivan, o Imbecil&#34;, do renomado e brilhante autor russo Léon Tolstoi, é interpretado pelo Mestre da União do Vegetal, Joaquim José de Andrade Neto, à luz