CAPÍTULO 3 – REDES NEURAIS ARTIFICIAIS 14
3.3 PROCESSOS DE APRENDIZAGEM 24
3.3.1 Algoritmos de Aprendizagem 25
Neste trabalho serão mostrados somente três algoritmos de aprendizagem, pois foram os algoritmos utilizados para realizar o treinamento das redes neurais:
• Aprendizagem por Correção de Erro para o treinamento de rede de múltiplas camadas.
• Aprendizagem Baseada em Memória (regra do vizinho mais próximo) para o treinamento da rede neural probabilística.
• Aprendizagem Competitiva (abordagem tradicional) para o mapa auto-organizável. 3.3.1.1 Aprendizagem por Correção de Erro
Para ilustrar o algoritmo de Aprendizagem por Correção de Erro, considera-se um neurônio que constitui um único nó computacional da camada de saída de uma rede neural alimentada adiante, como pode ser observado pela Figura 3.5.
) (estímulo Entrada de Vetor ocultos neurônios de camadas mais ou Uma ) (n x k saída de Neurônio yk(n) + −
∑
) (n ek ) (n dk adiante entadas a camadas multiplas de de lim ReFigura 3.5 – Diagrama em blocos de uma rede neural, ressaltando o único neurônio da camada de saída.
O neurônio é acionado por um vetor de sinal produzido por uma ou mais camadas de neurônios ocultos, que são, por sua vez, acionadas por um vetor de entrada (estímulo) aplicado aos nós de fonte, isto é, a camada de entrada da rede neural. O argumento representa o instante de tempo discreto, ou mais precisamente, o passo de tempo de um processo iterativo envolvido no ajuste de pesos sinápticos do neurônio . O
sinal de saída do neurônio é representado por . Este sinal de saída, representando
a única saída da rede neural, é comparado com uma resposta desejada ou saída-alvo, representada por . Consequentemente, é produzido um sinal de erro, representado
por (Haykin, 2001).
Por definição, o sinal de erro é representado pela Equação 3.1:
3.1 O sinal de erro aciona um mecanismo de controle com o propósito de aplicar uma seqüência de ajustes corretivos aos pesos sinápticos do neurônio . Os ajustes corretivos são projetados para aproximar passo a passo o sinal de saída da resposta desejada . Este objetivo é alcançado minimizando-se uma função de custo ou índice
de desempenho, , definido em termos do sinal de erro como mostrado na Equação 3.2 (Haykin, 2001).
· 3.2
Com isso, é o valor instantâneo da energia do erro. Os ajustes passo a passo dos pesos sinápticos do neurônio continuam até o sistema atingir um estado estável, isto é, os pesos sinápticos estarem essencialmente estabilizados. Neste ponto o processo é encerrado (Haykin, 2001).
A minimização da função custo resulta na regra de aprendizagem referida como
regra delta ou regra de Widrow-Hoff. Supondo que represente o valor do peso
sináptico do neurônio excitado por um elemento do vetor de sinal no passo de tempo . De acordo com a regra delta, o ajuste ∆ aplicado ao peso sináptico no passo de tempo é definido pela Equação 3.3 (Haykin, 2001).
∆ · · 3.3
Onde: : constante positiva que determina a taxa de aprendizado quando se avança em um passo no processo de aprendizagem.
O parâmetro taxa de aprendizagem desempenha na prática um papel-chave, determinando o desempenho da aprendizagem por correção do erro.
Portanto, a regra delta pode ser formulada como sendo o ajuste feito em um peso sináptico de um neurônio, sendo este ajuste, proporcional ao produto do sinal de erro pelo sinal de entrada da sinapse em questão.
A regra delta pressupõe que o sinal de erro seja diretamente mensurável. Para que esta medida possa ser possível, é necessário que a resposta desejada seja fornecida por alguma fonte externa, que seja diretamente acessível ao neurônio . Ou seja, o neurônio é visível ao mundo externo, como é representado na Figura 3.5 mostrada anteriormente (Haykin, 2001).
Tendo-se calculado o ajuste sináptico ∆ , o valor atualizado do peso sináptico é determinado pela Equação 3.4.
1 ∆ 3.4
e podem ser vistos como os valores antigo e novo do peso sináptico , respectivamente.
3.3.1.2 Aprendizagem Baseada em Memória
Na aprendizagem baseada em memória, todas as experiências passadas ou a maioria delas são armazenadas explicitamente em uma grande memória de exemplos de entrada-saída classificados corretamente: · , onde representa um vetor de entrada e representa a resposta desejada correspondente. Sem perda de generalidade, restringe-se a resposta desejada a ser um escalar. Em um problema de classificação de padrões binário, por exemplo, há duas classes a serem consideradas, representadas por e . Neste exemplo, a resposta desejada assume o valor 0 (ou -1) para a classe e o valor 1 para a classe . Quando se deseja classificar um vetor teste (não visto antes), o algoritmo responde buscando e analisando os dados de treinamento em uma “vizinhança local” de (Haykin, 2001).
Todos os algoritmos de aprendizagem baseada em memória envolvem dois ingredientes essenciais (Haykin, 2001):
• O critério utilizado para definir a vizinhança local do vetor de teste .
• A regra de aprendizagem aplicada aos exemplos de treinamento na vizinhança local de .
Os algoritmos diferem entre si na forma como estes dois ingredientes são definidos.
Em um tipo simples, mas efetivo de aprendizagem baseada em memória conhecido como a regra do vizinho mais próximo, a vizinhança local é definida como o exemplo de treinamento que se encontra na vizinhança imediata do vetor de teste . Em particular, pode-se dizer que o vetor dado pela Equação 3.5 é o vizinho mais próximo de se a Equação 3.6 é satisfeita.
, , … , 3.5
, , 3.6
Onde: , : é a distancia euclidiana entre os vetores e .
A classe associada com a distância mínima, ou seja, o vetor é apresentada como classificação de .
3.3.1.3 Aprendizagem Competitiva
Na aprendizagem competitiva os neurônios de saída de uma rede neural competem entre si para se tornar ativos (disparar). Somente um único neurônio de saída está ativo em
determinado instante. É essa característica que torna a aprendizagem competitiva muito adequada para descobrir características estatísticas salientes que podem ser utilizadas para classificar um conjunto de padrões de entrada (Haykin, 2001).
Existem três elementos básicos em uma regra de aprendizagem competitiva (Rumelhart, et al., 1985).
• Um conjunto de neurônios que são todos iguais entre si, exceto por alguns pesos sinápticos distribuídos aleatoriamente, e que por isso respondem diferentemente a um dado conjunto de padrões de entrada.
• Um limite imposto sobre a “força” de cada neurônio.
• Um mecanismo que permite que o neurônio dispute pelo direito de responder a um dado subconjunto de entradas, de forma que somente um neurônio de saída, ou somente um neurônio por grupo, esteja ativo, isto é, ligado em um determinado instante. O neurônio que vence a competição é denominado um neurônio vencedor.
Correspondentemente, os neurônios individuais da rede aprendem a se especializar em agrupamentos de padrões similares; fazendo isso, eles se tornam detectores de características para classes diferentes de padrões de entrada.
Para um neurônio ser o neurônio vencedor, seu campo local induzido para um padrão de entrada especificado deve ser maior entre todos os neurônios da rede. O sinal de saída do neurônio vencedor é colocado em 1; os sinais de saída de todos os neurônios que perdem a competição são colocados em 0. Com isso pode-se escrever a Equação 3.7:
1, ,
0, á 3.7
Onde o campo local induzido representa a ação combinada de todas as entradas diretas e realimentadas do neurônio .
Considera-se que represente o peso sináptico conectando o nó de entrada ao neurônio . Supondo que a cada neurônio seja alocada uma quantidade fixa de peso sináptico, isto é, todos os pesos sinápticos são positivos, que é distribuída entre seus nós de entrada, ou seja, ∑ para todo .
Um neurônio aprende ao deslocar os pesos sinápticos de seus nós de entrada inativos para os seus nós ativos. Se um neurônio não responde a um padrão de entrada particular, então não ocorrerá aprendizado naquele neurônio. Se um neurônio particular vence a competição, então cada nó de entrada deste neurônio libera uma certa proporção de seu peso sináptico e este peso liberado será então distribuído uniformemente entre os
nós de entrada ativos (Haykin, 2001). De acordo com a regra de aprendizagem competitiva padrão, a variação ∆ aplicada ao peso sináptico é definida pela Equação 3.8:
∆ , ô çã
0, ô çã 3.8
Onde: : é o parâmetro da taxa de aprendizagem.
Esta regra tem efeito global de mover o vetor de peso sináptico do neurônio vencedor em direção ao padrão de entrada .
Para realizar a função de classificação de padrões de uma maneira estável, os padrões de entrada devem se localizar em classes suficientemente distintas. Caso contrário, a rede pode ser instável porque não responderá mais a um determinado padrão de entrada com o mesmo neurônio de saída (Haykin, 2001).
3.3.1.4 Levenberg-Maquardt
A MLP (Multi-layer Perceptron) se utiliza de alguns algoritmos de treinamento em seu processo de aprendizagem, cuja função é atualizar seus pesos sinápticos.
Dentre os diversos algoritmos de treinamento pode-se destacar o Levenberg- Marquardt, que é uma aproximação do método de Newton e considerado muito eficiente e rápido ao treinar redes com grande quantidade de pesos (Luo, et al., 2007).
O método de Levenberg-Marquardt é usado para encontrar um ponto de mínimo para uma função de ativação dada pela soma dos quadrados de funções não-lineares. O método consiste em um aperfeiçoamento do método de Gauss-Newton que, por sua vez, é uma variante do método de Newton. Assim como os antecessores, Levenberg-Maquardt é um método iterativo. Isto significa que, dado um ponto inicial, o método produz uma série de vetores que se espera que vá convergir para um mínimo local para a função de entrada a ser ajustada (Luo, et al., 2007).
3.3.2 Paradigmas de Aprendizagem