Vous êtes sur la page 1sur 4

MÉTODO GRÁFICO DE ATUALIZAÇÃO DINÂMICA DA TAXA DE APRENDIZADO DE

REDES PERCEPTRON

Breno Dias Rodrigues


Departamento de Engenharia Elétrica, Universidade Federal de Minas Gerais
Av. Antonio Carlos 6627, Belo Horizonte, MG 31270-901, Brasil
Email: brenodr@gmail.com

Resumo – O Perceptron é uma das formas mais simples de possuírem um alto grau de aplicabilidade, as redes neurais
Rede Neural Artificial usada para classificação de padrões Perceptron de Múltiplas Camadas vêm sendo cada vez mais
linearmente separáveis, ou seja, padrões que estão em lados aplicadas à resolução de inúmeros problemas [3].
opostos de um hiperplano no espaço de entrada dos dados.
O Perceptron é a forma mais simples de uma RNA
Seu algoritmo de treinamento requer algumas
usada para classificação de padrões linearmente separáveis,
considerações de ordem prática, dentre elas, a definição de
ou seja, padrões que estão em lados opostos de um
uma taxa de aprendizado da rede, η, que pode ser fornecida
hiperplano. Consiste basicamente de um único neurônio
pelo usuário como parâmetro de entrada ou ajustada
com pesos sinápticos ajustáveis e uma polarização (bias). O
automaticamente a partir dos dados de entrada [1]. Propõe-
algoritmo usado para ajustar os parâmetros livres desta
se, neste trabalho, a utilização de uma analogia gráfica para
RNA foi apresentado pela primeira vez no procedimento de
justificar a escolha de η de forma a acelerar o aprendizado
aprendizagem desenvolvido por Rosenblatt, que provou que
de uma rede perceptron e evitar instabilidades.
se os padrões (vetores) usados para treinar o Perceptron são
retirados de duas classes linearmente separáveis, então o
algoritmo Perceptron converge e posiciona a superfície de
Palavras-chaves: Perceptron, taxa de aprendizado, redes
neurais artificiais. decisão na forma de um hiperplano entre as duas classes. A
prova de convergência do algoritmo é conhecida como
Teorema de Convergência do Perceptron [4].
1. INTRODUÇÃO
O Perceptron de um único neurônio é limitado a
Este trabalho apresenta a proposição de uma desempenhar classificação de padrões com apenas duas
interpretação gráfica do ajuste da taxa de aprendizado de classes. Através da expansão da camada computacional de
uma rede neural Perceptron. A partir da formulação saída do Perceptron para incluir mais do que um neurônio, é
apresentada, testes serão realizados com o objetivo de possível classificar mais do que duas classes. Entretanto, as
comparar a velocidade de convergência do algoritmo classes têm que ser linearmente separáveis para que o
tradicional de treinamento em relação ao algoritmo Perceptron tenha um desempenho adequado. Um ponto
proposto, em que o ajuste da taxa de aprendizado é feito a importante é que a extensão da teoria básica do Perceptron
cada época de treinamento. Na próxima seção serão a partir do caso de um neurônio para o caso de mais de um
apresentados aspectos teóricos básicos relacionados às neurônio é trivial.
redes neurais perceptron como forma de revisão da teoria.
Alguns resultados ilustrativos são apresentados nas seções
seguintes. 2.1 O processo de aprendizado do Perceptron
De uma maneira geral, durante o processo de adaptação,
2. REVISAO TEÓRICA ou aprendizado, o que se deseja obter é o valor do
incremento w a ser aplicado ao vetor de pesos w de tal
As redes neurais artificiais consistem em uma
ferramenta bastante poderosa, apresentando um modelo forma que o seu valor atualizado w(t  1)  w (t )  w
matemático inspirado na estrutura neural de organismos esteja mais próximo da solução desejada do que w(t ) .
inteligentes e adquirindo conhecimento através da Portanto, os algoritmos de aprendizado em Redes neurais
experiência [2]. Mais especificamente, as redes neurais Artificiais visam ao desenvolvimento de técnicas para a
Perceptron de Múltiplas Camadas constituem uma obtenção do valor de w mais apropriado para a obtenção
importante classe de redes neurais, com propriedades da solução do problema em questão [1].
bastante satisfatórias, tais como simplicidade, versatilidade,
eficiência e precisão computacional. Além disso, por Considerando um nodo arbitrário da camada de resposta
de um perceptron e seus vetores de entrada x e de pesos w
sua ativação é dada por  wi xi  w x , onde w x
representa o produto interno entre w ex .
Conseqüentemente, a condição crítica de disparo do nodo é
w x   , ou w x    0 , o que é equivalente a se
adicionar um peso com valor  às entradas do nodo e
conectá-lo a uma entrada com valor fixo x i  1 . A nova
condição crítica de disparo passa então a ser w x  0 ,
onde w  {, w1, w2 , wn } e x  {1, x1, x 2 , x n }
Fig. 1. Representação dos vetores de entrada (x) e de pesos (w),
A saída deseja para a rede será chamada de d , a saída mostrando uma direção de ajuste possível.
atual da rede será chamada simplesmente de y , podendo-se
então definir o erro devido à saída atual como sendo
e  d  y . Para o caso do perceptron, tem-se sempre que 2.2 A modificação proposta
y  {0,1} e d  {0,1} , podendo, portanto, haver apenas
duas situações possíveis para as quais e  0 : d  1 e Da figura 1 anterior, nota-se que o produto vetorial
y  0 ou d  0 e y  1 . entre os vetores x e w guarda a informação da área da
região formada pelo paralelogramo delimitado por estes
Para a primeira situação ( d  1 e y  0 ), tem-se que vetores, conforme ilustra a figura 2. Observa-se que, da
e  1 e w x  0 , já que y  0 , o que implica que informação referente à área, pode-se extrair o módulo da
altura h do paralelogramo formado, conforme equacionado
w x cos(w, x )  0 . Conseqüentemente, tem-se que a seguir:
cos(w, x )  0 e (w, x )  90º , onde  é o ângulo entre os
vetores w e x . O diagrama apresentado na Figura 1 ilustra Área  w  x (1)
melhor a situação relativa dos vetores w e x no espaço.
Para esta condição, pode-se observar também na figura que Área w x
uma modificação plausível no vetor w em busca da h   (2)
solução seria somá-lo a um vetor que estivesse na direção x x
de x , como o vetor x indicado. Assim, w  x e
w (t  1)  w(t )  x . Porém, como e  1 , a equação de
atualização de w pode ser escrita de uma forma mais
conveniente: w(t  1)  w(t )  ex . A constante  é uma
medida da rapidez com que o vetor de pesos será
atualizado, sendo comumente chamada de taxa de
aprendizado. Para valores pequenos de  , algumas
iterações podem ser necessárias para se chegar à solução Fig. 2. Representação geométrica do ajuste de pesos proposto.
indicada na Figura 1.
Para a segunda situação em que d  0 e y  1 , pode- Os vetores x e w foram representados em duas
se obter a regra de atualização do vetor de pesos de maneira dimensões por comodidade, naturalmente que em outros
análoga à situação anterior. Para este caso, tem-se que casos práticos tais vetores podem ser representados em
e  1 e w x cos(w, x )  0 , o que implica que dimensões maiores.
O ângulo entre os vetores w e x ,  , pode ser extraído
(w, x )  90º . Para que y  d  0 , o vetor de pesos imediatamente:
deve ser modificado de forma tal que se obtenha w x
(w, x )  90º . Conseqüentemente, uma regra de   cos1 (3)
x w
atualização plausível para este caso também seria
w(t  1)  w(t )  ex . o que automaticamente define o ângulo entre os vetores
w e h ,  , como sendo:


  (4)
2
A partir de uma análise geométrica, verifica-se que um 3. METODOLOGIA
vetor de correção de pesos que deva ser somado ao vetor
original pode ser dado na direção de x pelo vetor 2p , o
3.1 Organização dos dados de ensaio
que necessariamente faz com que o ângulo entre os vetores
w e x se torne menor que 90º. Analogamente, para o caso Os ensaios descritos no item que se segue foram
em que o ângulo  é originariamente menor que 90º, baseados em distribuição simples, do tipo gaussiana. O
observa-se que o vetor de correção 2p na direção de x algoritmo proposto foi implementado para treinamento de
fornecerá uma correção ao vetor de pesos se for um neurônio único Perceptron. Com um único neurônio, é
multiplicado pelo erro, que nesse caso será e  1 . Do possível a segmentação da população em duas classes,
exposto, conclui-se que a expressão de p será dada por: desde que sejam linearmente separáveis.
Em cada condição apresentada na tabela 1 foi utilizado
w x um total de 100 amostras, sendo 80 para treinamento do
p  tg () (5) neurônio e 20 para validação, com diferentes médias e
x
desvios padrão das distribuições gaussianas.

Logo, propõe-se como expressão para o parâmetro  :


Tabela 1. Organização dos dados de ensaio.

Identificação da Condição

p Média Desvio padrão


2 (6) Classe 0 0 2
x Condição 1
Classe 1 8 1
E então o ajuste de pesos poderá ser dado por: Classe 0 0 2
Condição 2
Classe 1 8 2
p Classe 0 0 2
w(t  1)  w (t )  2 ex (7) Condição 3
Classe 1 7 2
x
Classe 0 0 2
Condição 4
Classe 1 6 2
Classe 0 0 2
Condição 5
2.3 O algoritmo de treinamento do Perceptron Classe 1 5 2

Como visto na seção anterior, o algoritmo de


treinamento do perceptron sempre chega a uma solução Uma representação gráfica ilustrativa de uma dessas
para o problema de separação de duas classes linearmente distribuições (Condição 2) é mostrada na figura 3. Tais
separáveis em um tempo finito. De uma maneira geral, o dados foram submetidos ao treinamento e validação pelo
algoritmo de treinamento para um nodo de um perceptron neurônio Perceptron, onde o objetivo foi a obtenção da
simples pode ser descrito da seguinte forma: superfície de separação das classes 0 e 1. Para cada caso,
foram testados os totais de épocas de treinamento
1. Inicializar η e o vetor de pesos w; necessários para a classificação quando o parâmetro η foi
pré-fixado como sendo η=0.01 e quando tal parâmetro foi
dado pela metodologia proposta.
2. Repetir, para cada par do conjunto de treinamento (e até
que e  0 para todos os p elementos do conjunto de Ao todo, para cada neurônio (neurônio de η fixo e
treinamento em todos os nodos da rede): neurônio de η dinâmico), foram executados 100 ensaios de
classificação em cada condição da tabela 1 e os totais de
taxa média de acertos e número médio de épocas de
Atualizar o vetor de pesos para cada um dos nodos da treinamento necessárias foram registrados e apresentados na
rede segundo a regra w(t  1)  w(t )  ex ; seção seguinte.

.
treinamento que o método clássico. Quando o problema
torna-se difícil, pois as classes freqüentemente não são mais
linearmente separáveis (Condições 4 e 5), o desempenho do
método proposto foi muito semelhante ao método clássico.

5. CONCLUSÕES
Este trabalho explora a utilização de uma observação
gráfica para a atualização dos pesos de um neurônio
perceptron segundo uma taxa de aprendizado definida
dinamicamente. Embora os ensaios tenham sido realizados
para o caso de um neurônio único, espera-se que a
metodologia possa ser aplicada a casos de redes com mais
neurônios sem perda de qualidade.

Fig. 3. Representação de dados gerados segundo a condição 2. Os resultados obtidos indicaram um melhor
desempenho do método proposto em relação ao método de
taxa de aprendizado fixa, exigindo menos ciclos de
4. RESULTADOS treinamento (épocas) para obtenção da classificação.
Os resultados obtidos segundo a metodologia descrita Embora não tenha sido medido o custo computacional
no item anterior foram agrupados na tabela 2: da implementação em termos de tempo ou em termos de
ciclos de máquina, a observação qualitativa mostrou que o
tempo de aprendizado caiu em relação ao algoritmo
Tabela 2. Resultados de ensaio. clássico de treinamento, mesmo com a necessidade de
Identificação da Condição atualização da taxa de aprendizado a cada iteração,
Taxa média de Número médio de principalmente devido ao fato de o número médio de
Método
acertos épocas épocas necessárias ser bem menor.
Clássico 99.8788% 4.3737
Condição 1
Proposto 99.6286% 1.8143
Clássico 98.398% 9.102
Condição 2 6. REFERÊNCIAS
Proposto 99.28% 4.7467
Clássico 94.949% 14.7245 [1] Braga, A .P., Ludemir, T. B., Carvalho, A . C. P. F.,
Condição 3
Proposto 97.2174% 9.6087 “Redes neurais artificiais – teoria e aplicações”, LTC
Clássico 89.9167% 19.2396 Livros Técnicos e Científicos Editora S. A, Rio de
Condição 4 Janeiro, 2000.
Proposto 91.75% 16.5938
Clássico 81.8557% 19.8866 [2] Anlauf, J.K. & Biehl, M., “The adatron: an adaptive
Condição 5 perceptron algorithm”, Europhysics Letters, 1989,
Proposto 80.7115% 19.3269
687–692.
[3] Minsky, M. & Papert, S., “Perceptrons: An
Nota-se que, para o caso simples de duas classes de Introduction to Computational Geometry”, The MIT
Press, 1969.
pontos com distribuição gaussiana, o método proposto teve
[4] Haykin, S., “Redes Neurais: princípios e prática”,
melhor desempenho, tanto em número de acertos quanto em
2.ed., Bookman, Porto Alegre, 2001
número médio de épocas necessário para treinamento. O
desempenho é ainda melhor quando as classes estão mais
bem separadas (Condições 1 a 3), demandando,
respectivamente, 58%, 48% e 37% menos épocas de

Vous aimerez peut-être aussi