Você está na página 1de 28

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Captulo 3
O Perceptron
No captulo anterior estudamos algoritmos de aprendizagem supervisionados, nos
quais o aprendizado acontece atravs de um tutor. Em 1958 Rosenblatt props o Perceptron
como o primeiro modelo para aprendizagem de RNAs por meio de um tutor.
O Perceptron a forma mais simples de uma RNA usada para classificao de
padres linearmente separveis; ou seja, padres que esto em lados opostos de um
hiperplano. Consiste basicamente de um nico neurnio com pesos sinpticos ajustveis e
uma polarizao (bias).
O algoritmo usado para ajustar os parmetros livres desta RNA foi apresentado pela
primeira vez no procedimento de aprendizagem desenvolvido por Rosenblatt, que provou
que:
Se os padres (vetores) usados para treinar o Perceptron so
retirados de duas classes linearmente separveis, ento o algoritmo
Perceptron converge e posiciona a superfcie de deciso na forma de um
hiperplano entre as duas classes.
A prova de convergncia do algoritmo conhecida como Teorema de Convergncia
do Perceptron.
O Perceptron de um nico neurnio limitado a desempenhar classificao de
padres com apenas duas classes (duas hipteses). Atravs da expanso da camada
computacional de sada do Perceptron para incluir mais do que um neurnio, possvel
classificar mais do que duas classes. Entretanto, as classes tm que ser linearmente
separveis para que o Perceptron tenha um desempenho adequado. Um ponto importante

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

que a extenso da teoria bsica do Perceptron a partir do caso de um neurnio para o caso
de mais de um neurnio trivial.
O neurnio nico tambm forma a base de um filtro adaptativo, um bloco funcional
que bsico nas aplicaes concernentes a processamento de sinais. O desenvolvimento da
filtragem adaptativa devido grandemente ao clssico trabalho de Widrow e Hoff (1960)
por apresentarem pela primeira vez o algoritmo Least-Mean-Square (LMS), tambm
conhecido como a Regra Delta.
O algoritmo LMS e o Perceptron so relacionados e sero estudados ao longo deste
captulo. Primeiramente iremos abordar o problema da filtragem adaptativa e o algoritmo
LMS para, aps, tratarmos do Perceptron de Rosenblatt.

3.1 O Problema da Filtragem Adaptativa


Consideremos um sistema dinmico cuja caracterizao matemtica
desconhecida. O mximo de conhecimento que temos a respeito de um conjunto finito
de dados, que um subconjunto do universo de todos os possveis mapeamentos
entrada-sada que podem ser gerados pelo sistema .
Suponhamos que os elementos do subconjunto sejam pares (x(i ), d (i ) ) , onde :
x(i ) o i-simo vetor M-dimensional de aplicado na entrada de e
d (i ) a sada de entrada x(i ) , i = 0,1, ! , N 1 , sendo
N o nmero de elementos de .
Especificamente, quando um estmulo real M-dimensional x(i ) M aplicado aos
M ns de entrada do sistema , responde gerando a sada escalar d (i) , como mostra a
Figura 3.1(a).
A dimenso M dos vetores x(i ) usualmente referida como dimensionalidade do
espao de entrada.

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Figura 3.1: (a) Sistema dinmico desconhecido . (b) Grafo de fluxo de sinal para o modelo
adaptativo do sistema.
Portanto, o comportamento externo do sistema descrito pelo mapeamento
: x(i ) M d (i ) , i = 0,1, ! , N 1

(3.1)

onde x(i ) o i-simo vetor de , definido por


x(i ) = [x 0 (i ) x1 (i ) ! x M 1 (i )]T

(3.2)

Note que, na grande maioria dos casos, tambm no se conhece com preciso a
distribuio de probabilidade dos elementos do conjunto , de modo que a tentativa de
resolver um problema de filtragem atravs de uma abordagem estatstica (atravs da matriz
de correlao, por exemplo) no raro conduz a resultados no satisfatrios.
Um estmulo x(i ) aplicado a um sistema pode originar-se de dois cenrios
fundamentais, um espacial e outro temporal:

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Os M elementos do vetor x(i ) originam-se de M distintas fontes de informao


localizadas em diferentes pontos no espao, sendo todos os M elementos obtidos no
mesmo instante, de todas as M fontes.

Os M elementos do vetor x(i ) representam o valor presente e os M 1 valores


passados de amostras seqencialmente originadas de uma nica fonte de informao.

Um problema clssico em filtragem adaptativa, conhecido como identificao de


sistema, determinar o modelo que rege o comportamento do sistema dinmico
desconhecido , caracterizado por (3.1), utilizando para tanto um nico neurnio linear. O
neurnio opera sob a influncia de um algoritmo A que controla os ajustes necessrios
transmitncia (peso) de suas sinapses para que, medida que os ajustes se sucedem, o
mapeamento efetuado pelo neurnio tenda a aproximar o mapeamento efetuado pelo
sistema . Este processo de ajustes sucessivos dos pesos sinpticos efetuado observando
as seguintes caractersticas:

O algoritmo A inicia o processo de ajuste a partir de um conjunto de transmitncias


sinpticas (pesos sinpticos), com valor inicial arbitrrio atribudo a cada uma delas.

O algoritmo A ajusta as transmitncias sinpticas do neurnio continuamente ao longo


do intervalo de operao do sistema , para permitir que eventuais variaes no padro
de comportamento de (variaes na estatstica do comportamento de ) tambm
possam influenciar o processo de ajuste.

Para cada valor de i, o algoritmo A deve ser rpido o suficiente para ajustar todas as M
transmitncias sinpticas do neurnio dentro do intervalo de tempo que transcorre entre
a ocorrncia das entradas x(i ) e x(i + 1) .

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

A Figura 3.1 (b) mostra o grafo de fluxo de sinal de um filtro adaptativo de


neurnio nico, aplicado ao contexto de identificao do sistema desconhecido . A
operao do filtro consiste de dois processos continuamente executados em seqncia:
1. Processo de Filtragem, o qual envolve o cmputo de dois sinais :
1.1. Uma sada, denotada por y (i) , que produzida em resposta ao vetor estmulo x(i ) .
1.2. Um sinal de erro, denotado por e(i ) , que obtido pela comparao da sada y (i)
com a sada desejada d (i ) correspondente, sendo d (i ) produzida por quando o
estmulo x(i ) aplicado sua entrada. Em outras palavras, d (i ) constitui a
resposta desejada ou o sinal alvo (target signal).
2. Processo de Adaptao, o qual envolve o ajuste automtico dos pesos sinpticos do
neurnio atravs de um algoritmo A, tendo como base o sinal de erro e(i ) .
Desta maneira, a combinao destes dois processos (operando em conjunto)
constitui um elo de realimentao (feedback loop) na operao do neurnio. Uma vez tendo
sido aplicados todos os N vetores x(i ) entrada do neurnio e tendo sido executados
todos os N ajustes atravs do algoritmo A, repete-se novamente as etapas 1 e 2 at que
e(n) seja suficientemente pequeno, onde e(n) o valor do sinal de erro e em um instante
n qualquer da operao do filtro.
Uma vez que o neurnio linear, a sada y (i) idntica ao potencial de ativao
(nvel de ativao) v(i ) , isto ,
M 1

y(i ) = v(i ) = wk (i )x k (i )

(3.3)

k =0

onde wk (i ) o valor da k-sima transmitncia sinptica medida no instante discreto i. Em


forma vetorial, podemos expressar y (i) como o produto interno entre os vetores x(i ) e
w(i ) , conforme segue:

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

y (i ) = x (i )w(i )

(3.4)

onde
w(i ) = [w0 (i ) w1 (i ) ! wM 1 (i )]

(3.5)

A sada y (i) do neurnio comparada com a sada d (i ) do sistema desconhecido


no instante discreto i. Tipicamente, a comparao estabelecida pela diferena entre d (i ) e
y (i) , portanto o processo de comparao define o sinal de erro e(i ) dado por
e(i ) = d (i ) y (i )

(3.6)

Observe de (3.4) e (3.6) que o sinal de erro e(i ) depende do vetor w(i ) . Note
tambm que w(i ) o parmetro livre do neurnio que ser sucessivamente ajustado pelo
algoritmo A, objetivando minimizar e(i ) . Portanto, para que se possa medir a ineficincia
do processo de ajuste de w , e, em funo disto adotar as correes necessrias, til
definir uma funo J (e ) (ou J (w) , j que e depende de w ) que defina da maneira o mais
inequvoca possvel o grau de incompetncia do neurnio em aproximar sua sada y (i)
de d (i ) .
A funo J (w) , cujo valor resultante uma grandeza escalar real, denominada de
funo de custo. A definio de J (w) deve ser tal que mea o quanto o processo de ajuste
est sendo incapaz de reduzir o erro e(i ) entre d (i ) e y (i) . Por exemplo, uma popular
definio de J J = J(e ) = 12 e 2 . Em especial, o algoritmo A e a funo de custo J
idealmente devem ser tais que J (w(n + 1)) < J (w(n )) , onde n um instante qualquer do
processo de ajuste.

3.1.1 O Processo de Minimizao da Funo de Custo


Consideraremos neste estudo o denominado Algoritmo de Descida Mais ngreme
(SD Steepest Descent), por ser um dos mais utilizados, e de baixo custo computacional.

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Existem, no entanto, outros algoritmos, como o Mtodo de Newton e o Mtodo de GaussNewton, que so descritos em [4].
No algoritmo SD os sucessivos ajustes aplicados w esto na direo da descida
mais ngreme da superfcie S = H(w0 , w1 ," , wM 1 ) formada pelos valores escalares H do
conjunto
w = [w0

imagem

de

J (w)

em

funo

do

domnio

M-dimensional

w1 ! wM 1 ] , isto , H = J (w) . Em outras palavras, os sucessivos ajustes


T

aplicados w esto na direo oposta do vetor gradiente J (w) da superfcie formada por
J (w) .
Uma interpretao intuitiva do mtodo SD imaginarmos um observador mope que
enxergue apenas a distncia de um passo ao seu redor, caminhando sobre a superfcie J (w) ,
e cujo objetivo chegar ao ponto de cota mnima de J (w) o mais rapidamente possvel. No
instante n o observador, localizado na coordenada w(n ) , olha ao redor e localiza a direo
J (w(n )) de subida mais ngreme em J (w) . A seguir o observador d um passo na direo
contrria J (w(n )) de tamanho proporcional declividade J (w(n )) encontrada na
coordenada w(n ) e desloca-se para a nova coordenada w(n + 1). Supondo que no existam
mnimos locais (buracos e/ou depresses) na superfcie J (w) de dimetro algo maior que o

( ) na coordenada w

passo do observador, o mesmo atingir a cota mnima J w

aps repetir

este procedimento um nmero suficiente de vezes.


Formalmente, o algoritmo SD descrito por
w(n + 1) = w(n ) J (w(n ))

(3.7)

onde > 0 chamado passo de adaptao (stepsize) ou razo de aprendizado (learning


rate).
Para a funo de custo J (n ) = J (w(n )) = 12 e 2 (n ), a superfcie J (w) um parabolide
M+1-dimensional (i.e., uma tigela em M +1 , no necessariamente de boca circular), e,
portanto, apresenta um mnimo global mas no apresenta mnimos locais (qualquer funo
quadrtica possui um e somente um mnimo). Por isto, para esta funo de custo, o

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

algoritmo SD converge para w

de modo lento mas seguro desde que no seja

demasiadamente grande (caso em que o observador mope pularia fora da tigela).

Figura 3.2: Trajetria do mtodo de Descida Mais ngreme (steepest descent) em um


espao bi-dimensional para dois valores diferentes de parmetros razo de aprendizado:
(a) = 0.3 , (b) = 1.0 . As coordenadas w1 e w2 so elementos do vetor de pesos w .

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

importante observar que o passo de adaptao tem profunda influncia na


trajetria do observador mope at a convergncia para w* , e, no raro, o valor de
alterado convenientemente ao longo do processo de minimizao de J para que se adeqe
s exigncias da coordenada instantnea da trajetria. Para filtros cuja funo de custo

J (n ) = J (w(n )) = 12 e 2 (n ) so vlidas as seguintes observaes:


Para pequeno, a resposta transiente do algoritmo SD super-amortecida
(overdamped) e a trajetria percorrida por w(n ) uma curva suave em M ,
conforme mostrado na Figura 3.2(a).

Para grande, a resposta transiente do algoritmo SD sub-amortecida


(underdamped) e a trajetria percorrida por w(n ) uma curva em zig-zag
(oscilatria) em M , conforme mostrado na Figura 3.2(b).

Para acima de um determinado valor crtico, o algoritmo SD torna-se


instvel e termina divergindo.

3.2 O Algoritmo LMS


O Algoritmo LMS (Least Mean Square) procura minimizar uma funo de custo J
2
definida por J = J (e ) = 12 e com base nos valores instantneos da mesma, isto ,

J = J(e(n )) = 12 e 2 (n )

(3.8)

onde e(n ) o sinal de erro medido em um instante n qualquer do processo de minimizao


de J.
9

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Nota: Diferentemente do algoritmo LMS, apenas como exemplo comparativo, o algoritmo


RLS (Recursive Least Squares) baseia-se em uma funo de custo J definida por uma
soma ponderada do erro quadrtico e 2 (n ) do instante atual n com os erros quadrticos
ocorridos anteriormente a n, isto , J (n ) = 0 e 2 (n ) + 1e 2 (n 1) + 2 e 2 (n 2) + ! , onde
0 < k 1 so os coeficientes de ponderao. Os coeficientes k so tais que k > k +1 ,
de forma que erros ocorridos em um passado distante sejam esquecidos por J objetivando
minimizar sua influncia sobre ela. Assim, se o conjunto de (x(n), d (n) ) (entradas,
sadas desejadas) no for um processo estacionrio (i.e., os parmetros estatsticos de
variam com o tempo), o esquecer do passado auxilia a melhorar a velocidade de
convergncia. No entanto, como fcil perceber, o custo computacional do algoritmo RLS
maior que o do algoritmo LMS, o que o torna inadequado para certas aplicaes que
requeiram alta velocidade de processamento, como por exemplo, em equalizao de canal
para um link de microondas com alta taxa de transmisso.
O gradiente J (w(n )) da superfcie J (n ) = J (w(n )) = 12 e 2 (n ) no instante n obtido
atravs da variao de J (w(n )) em resposta a uma variao infinitesimal na coordenada
w(n ) , isto ,
J (w(n )) =

J (w(n ))
w(n )

(3.9)

mas, visto que J (w(n )) = 12 e (n ), temos


2

12 e 2 (n )
e(n )
J(w(n )) =
= e(n )
w(n )
w(n )

(3.10)

e(n) = d (n) y (n ) = d (n) x (n )w(n )

(3.11)

Vimos que
T

e como d (n ) no depende de w(n ) , temos que


e(n )
= x(n )
w(n )

10

(3.12)

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

De (3.12) e (3.10) temos


J (w(n )) = e(n )x(n )

(3.13)

e, substituindo (3.13) em (3.7), encontraremos para w(n + 1) ,


w(n + 1) = w(n ) + e(n )x(n )

(3.14)

onde o passo de adaptao ou razo de aprendizado.


A Equao (3.14) define o processo de ajuste do vetor de pesos w de um neurnio
linear objetivando minimizar J atravs do algoritmo LMS.
instrutivo comparar os algoritmos SD e LMS utilizando a alegoria do observador
mope, cujo objetivo atingir o mais rapidamente possvel a coordenada w* , a qual define
a coordenada da cota mnima da superfcie J (w) .
No algoritmo SD, o observador localizado na coordenada w(n ) olha ao redor,
localiza a direo J (w(n )) de subida mais ngreme na superfcie J (w) e d um passo em
direo contrria ela, conforme j discutido. O ato de olhar ao redor significa
matematicamente ter o conhecimento da
matriz de correlao R do conjunto de vetores de entrada x , e
do vetor de correlao cruzada p entre o conjunto de sadas desejadas d e o
conjunto de vetores x .
O conhecimento destes elementos necessrio porque, no algoritmo SD, o gradiente
no instante n calculado atravs de J (w(n )) = 2 p + 2R w(n ) (conforme S. Haykin em
Adaptive Filter Theory, referenciado em [3]).
No algoritmo LMS, o observador no somente mope como tambm totalmente
cego. O observador, localizado na coordenada w(n ) , consegue observar sua posio
relativa porque segura em sua mo um cordo infinitamente elstico cuja outra extremidade
encontra-se fixa na coordenada w* . A cada instante n, o observador d um passo na direo
em que ele percebe a maior reduo na tenso

11

do elstico (diminuio do valor absoluto

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

do erro e(n )), com tamanho de passo proporcional reduo de

. Como no existem

mnimos locais na superfcie J (w) , porque ela quadrtica, o observador se aproximar da

( ) na coordenada w

cota mnima J w

aps repetir este procedimento um nmero suficiente

de vezes. Note que, como o tamanho e sentido do passo do observador dependem da


reduo na tenso

do elstico, quando o observador chegar prximo coordenada w

ele ficar eternamente pulando sobre e ao redor dela a menos que, por um raro golpe de
*

sorte, a coordenada resultante do ltimo passo do observador coincida com w (situao


que ocorrer para um valor bastante particular e crtico de e para uma bastante particular
0

coordenada inicial w da trajetria do observador). Apesar disto, o algoritmo LMS tem a


vantagem de no necessitar do conhecimento de R e de p , ao contrrio do algoritmo SD.
Em suma, no algoritmo SD o vetor w(n ) segue uma trajetria bem definida no
espao de pesos sinpticos, para um valor no excessivo de . Em contraste, no algoritmo
LMS o vetor w(n ) segue uma trajetria aleatria, especialmente nas vizinhanas de w* .
A Tabela 3.1 apresenta um sumrio do procedimento do algoritmo LMS.
Conjunto de Treino:

Sinal de entrada em forma vetorial = x(n )


Sinal resposta desejada escalar = d (n )

Parmetro ajustvel pelo usurio:

Inicializao do vetor w :

w = w(0) = 0

Procedimento Computacional:

Para n = 0,1, ! computar

e(n) = d (n) x (n )w(n )


T

w(n + 1) = w(n ) + e(n )x(n )


Tabela 3.1: Sumrio do algoritmo LMS. O Procedimento Computacional
executado at que a mdia de e 2 (n ) atinja um patamar suficientemente baixo
para a soluo do problema em questo ou estabilize em um valor constante.

12

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

3.2.1 Consideraes quanto Convergncia do LMS


Combinando (3.11) e (3.14) podemos expressar a evoluo do vetor w atravs de
w(n + 1) = w(n ) + x(n )[d (n) x (n )w(n )] = w(n ) + x(n )d (n) x(n )x (n )w(n ) =
T

= I x(n )x (n ) w(n ) + x(n )d (n)


T

(3.15)

onde I a matriz identidade.


O processo de ajuste do vetor w(n ) uma operao iterativa indexada pela varivel
inteira n. Em funo disto, podemos ento reconhecer que o valor de w(n + 1) ser o valor
de w(n ) quando a varivel n for incrementada de 1 na prxima iterao. Em outras
palavras, o valor obtido de (3.15) para w(n + 1) no instante n armazenado em uma posio
de memria para ser utilizado como o valor de w(n ) em (3.15) no instante n + 1 .
No domnio z, esta relao entre w(n ) e w(n + 1) expressa por
Z{w(n )} = z 1Z{w(n + 1)}

(3.16)

onde Z{}
o operador Transformada Z e z 1 o operador atraso unitrio (unit delay). A
partir das equaes (3.15) e (3.16) podemos representar o algoritmo LMS atravs do grafo
de fluxo de sinal mostrado na Figura 3.3.
A Figura 3.3 revela que o algoritmo LMS pode ser considerado como um sistema
realimentado, j que existem dois loops de feedback, um superior e outro inferior. A
presena de realimentao exerce um profundo impacto no comportamento do algoritmo
LMS, visto que os parmetros dos loops definem a estabilidade da trajetria dos estados de
qualquer sistema realimentado.

13

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Figura 3.3: Grafo de fluxo de sinal representativo do algoritmo LMS.

Observe na Figura 3.3 que o loop inferior impe variabilidade ao comportamento do


LMS, particularmente porque a transmitncia deste loop controlada pela matriz

x(n )x T (n ) , a qual depende do vetor de entrada x(n ), com parmetro de controle dado
pela razo de aprendizado . Infere-se, portanto, que a estabilidade da trajetria de w(n )
influenciada pelas caractersticas estatsticas do conjunto de vetores de entrada x e pelo
valor da razo de aprendizado .
Expressando este fato de outro modo, para um dado conjunto de vetores de entrada
x deve-se escolher tal que a trajetria de w(n ) seja estvel o suficiente para permitir a
convergncia para as vizinhanas de w* . A convergncia da trajetria de w(n ) para as
vizinhanas de w caracterizada por uma constncia no valor mdio de e 2 (n ).
*

Como regra geral, a razo de aprendizado deve obedecer relao:

14

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

0 < <

2
1
N

N 1

x (i )x(i )
T

(3.17)

i =0

onde N o nmero total de vetores no conjunto de vetores de entrada x .

3.3 O Perceptron
Enquanto que o algoritmo LMS, descrito na Seo 3.2, construdo em torno de
um neurnio linear, o Perceptron construdo ao redor de um neurnio no-linear, que o
neurnio descrito pelo modelo de McCulloch-Pitts.
Conforme vimos no Captulo 1, este modelo de neurnio consiste de um
combinador linear seguido de um limitador, desempenhando a funo signum, conforme
mostrado na Figura 3.4.

Figura 3.4: Grafo de fluxo de sinal do Perceptron.


O n somador do modelo neural mostrado na Figura 3.4 computa uma combinao
linear das entradas aplicadas a suas sinapses com os pesos sinpticos associados, e tambm
incorpora uma polarizao externamente aplicada. A soma resultante (que o potencial de
ativao v ) aplicada a um limitador, representado por (v ) , que implementa a funo

15

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

signum. Desta forma, o neurnio produz uma sada igual a (+1) se a entrada do limitador
positiva, e (-1) se negativa.
No grafo de fluxo de sinal mostrado na Figura 3.4, os pesos sinpticos do
Perceptron so denotados por w1 , w2 , ! , wm . De forma correspondente, as entradas
aplicadas ao Perceptron so denotadas por

x1 , x 2 , ! , x m . A polarizao (ou bias)

aplicada externamente e denotada por b. A partir do modelo verifica-se que a entrada do


limitador, ou o potencial de ativao v do neurnio, :
m

v = wi x i = b

(3.18)

i =1

O objetivo do Perceptron classificar corretamente o conjunto de estmulos


externos aplicados x1 , x 2 , ! , x m em uma de duas classes, C1 ou C 2 . A regra de deciso
para a classificao atribuir o ponto representado pelas entradas x1 , x 2 , ! , x m classe C1
se a sada y do Perceptron for (+1) e classe C 2 se for (-1).
Para compreender o comportamento de um classificador de padres, costuma-se
plotar um mapa das regies de deciso no espao de sinal m-dimensional gerado pelas m
variveis de entrada x1 , x 2 , ! , x m . Na forma mais simples do Perceptron h duas regies
de deciso separadas por um hiperplano definido por
m

wi x i + b = 0

(3.19)

i =1

conforme ilustrado na Figura 3.5 para o caso de duas variveis de entrada x1 e x 2 , para as
quais o limite de deciso assume a forma de uma linha reta. Um ponto (x1 , x 2 ) que esteja
acima da linha limtrofe atribudo classe C1 e um ponto (x1 , x 2 ) que esteja abaixo da
linha limtrofe atribudo classe C 2 . O efeito da polarizao (ou bias) simplesmente
deslocar o limite de deciso para longe da origem.

16

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Figura 3.5: Ilustrao do hiperplano (neste caso, uma linha reta) como limite de deciso
para um problema de classificao de padres de duas classes (bi-dimensional).

Os pesos sinpticos w1 , w2 , ! , wm do Perceptron podem ser adaptados de iterao a


iterao. Para a adaptao pode-se usar a regra de correo de erro conhecida como
algoritmo de convergncia do Perceptron.

3.3.1 O Teorema de Convergncia do Perceptron


Para derivar o algoritmo de aprendizagem por correo de erro para o Perceptron,
consideremos o modelo do grafo de fluxo de sinal modificado mostrado na Figura 3.6.
neste modelo, equivalente ao da Figura 3.4, a polarizao b(n ) tratada como um peso
sinptico cuja entrada fixa em +1 (conforme vimos no Captulo 1).

17

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Figura 3.6: Grafo de fluxo de sinal equivalente do Perceptron (a dependncia do tempo foi
omitida por questes de clareza).
Pode-se, ento, definir o vetor de entrada [(m + 1) 1] -dimensional como
x(n ) = [+ 1 x1 (n ) x 2 (n ) ! x m (n )]T

(3.20)

onde n denota o passo da iterao do algoritmo. De forma correspondente, podemos definir


o vetor de pesos

[(m + 1)1]-dimensional como


w(n ) = [b(n ) w1 (n ) w2 (n ) ! wm (n )]T

(3.21)

da mesma forma, a sada do combinador linear pode ser escrita na forma compacta,
m

v(n ) = wi (n ) x i (n ) = w T (n ) x(n )

(3.22)

i =0

onde w0 (n ) representa a polarizao b(n ) . Para n fixo, a equao wT x = 0 , plotada em um


espao m-dimensional (e para algum bias prescrito) com coordenadas x1 , x 2 , ! , x m , define
um hiperplano como a superfcie de deciso entre duas diferentes classes de entradas (vide
Figura 3.5).

18

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Para que o Perceptron funcione adequadamente, as duas classes C1 e C 2 precisam


ser linearmente separveis, o que significa dizer que os padres a serem classificados
devem ser suficientemente separados uns dos outros para garantir que a superfcie de
deciso consista de um hiperplano.

Figura 3.7: (a) Um par de padres linearmente separveis. (b) Um par de padres nolinearmente separveis.

Este requerimento ilustrado na Figura 3.7 para o caso de um Perceptron bidimensional. Na Figura 3.7(a), as duas classes C1 e C 2 so suficientemente separveis uma
da outra, de tal forma que possvel desenhar um hiperplano (neste caso uma linha reta)
como limite de deciso. Se, entretanto, as duas classes C1 e C 2 tivessem se aproximado
tanto uma da outra (como mostrado na Figura 3.7(b)) teriam se tornado no-linearmente
separveis, uma situao que est alm da capacidade computacional do Perceptron.
Suponhamos ento que as variveis de entrada do Perceptron tenham se originado
de duas classes linearmente separveis. Seja 1 o sub-conjunto de vetores de treino
x 1 (1), x 1 (2), " que pertenam classe C1 , e seja 2 o sub-conjunto de vetores de treino
x 2 (1), x 2 (2), " que pertenam classe C 2 . A unio de 1 e 2 o conjunto de treino
completo .

19

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Dados os conjuntos de vetores 1 e 2 para treinar o classificador, o processo de


treino envolve o ajuste do vetor de pesos w , de tal forma que as duas classes C1 e C 2
sejam linearmente separveis. Ou seja, exista um vetor de pesos w tal que possamos
afirmar:
w T x > 0 para cada vetor de entrada x pertencente classe C1
(3.23)
w T x 0 para cada vetor de entrada x pertencente classe C 2
Observe que, na segunda linha da Equao (23), foi escolhido arbitrariamente que o
vetor de entrada x pertencesse classe C 2 se w T x = 0 .
Dados os sub-conjuntos de vetores de treino 1 e 2 , o problema de treinamento
para o Perceptron elementar , ento, encontrar um vetor de pesos w tal que as duas
inigualdades da Equao (23) sejam satisfeitas.
O algoritmo para adaptar o vetor de pesos do Perceptron elementar pode ser agora
formulado conforme segue:

1. Se o n-simo membro do conjunto de treino, x(n ), corretamente classificado pelo


vetor de pesos w(n ) computado na n-sima iterao do algoritmo, nenhuma correo
feita no vetor de pesos do Perceptron de acordo com a regra:
w(n +1) = w(n )

se w T (n ) x(n ) > 0 e x(n ) pertence classe C1

w(n +1) = w(n )

se w T (n ) x(n ) 0 e x(n ) pertence classe C 2

20

(3.24)

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

2. Em caso contrrio, o vetor de pesos do Perceptron atualizado de acordo com a regra:


w(n +1) = w(n ) (n )x(n ) se w T (n ) x(n ) > 0 e x(n ) pertence classe C
2
w(n +1) = w(n ) + (n )x(n ) se w (n ) x(n ) 0 e x(n ) pertence classe C
1

(3.25)

onde o parmetro razo de aprendizado (n ) controla o ajuste aplicado ao vetor de


pesos na iterao n.

Para o caso particular em que (n ) = > 0 (onde uma constante independente


do nmero da iterao n), temos uma regra de adaptao de incrementos fixos para o
Perceptron.
Desejamos primeiro provar a convergncia de uma regra de adaptao de
incrementos fixos, com = 1 . Claramente o valor de no importante, enquanto for
positivo. Um valor de 1 simplesmente escala os vetores sem afetar sua separabilidade.
O caso de uma razo de aprendizado (n ) varivel ser considerado posteriormente.

Convergncia da Regra de Adaptao de Incremento Fixo


(Razo de Aprendizado Fixa)
A prova apresentada para a condio inicial w(0) = 0 .
Suponha que wT (n ) x(n ) < 0 para n = 1,2, " , e o vetor de entrada x(n ) pertena ao
sub-conjunto 1 .
Ou seja, nesta condio, o Perceptron classificou de forma incorreta os vetores
x(1), x(2), " , desde que a segunda condio (dada pela Equao 23) foi violada.
Ento, com a constante (n ) = 1 , podemos usar a segunda linha da Equao 3.25
para escrever

21

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

w(n +1) = w(n ) + x(n )

para x(n ) pertencente classe C1

(3.26)

Dada a condio inicial w(0) = 0 , podemos iterativamente resolver esta equao


para w(n + 1) , obtendo o resultado
w(n + 1) = x(1) + x(2) + ! + x(n )

(3.27)

Desde que as classes C1 e C 2 so assumidas linearmente separveis, existe uma


soluo w 0 para a qual w T x(n ) > 0 para os vetores x(1), x(2 ), " x(n ) pertencentes ao subconjunto 1 . Para uma soluo fixa w 0 , podemos ento definir um nmero positivo
como

= min wT0 x(n )

(3.28)

x (n )1

Multiplicando ambos os lados da Equao (3.27) pelo vetor linha w T0 teremos


w T0 w(n + 1) = w T0 x(1) + w T0 x(2) + ! + w T0 x(n )

(3.29)

De acordo com a definio dada na Equao (3.28), teremos


wT0 w(n + 1) n

(3.30)

Dados dois vetores w 0 e w(n + 1) , a inigualdade de Cauchy-Schwarz, afirma que


w0

w(n + 1) w T0 w(n + 1)
2

(3.31)

onde denota a norma Euclidiana do vetor argumento, e o produto interno w0 w(n + 1)


T

uma quantidade escalar.


A partir da Equao (3.30) observa-se que
n 2 2 . A partir da Equao (3.31) observa-se que

[w

T
0

w(n + 1) . Segue, portanto, que


2

22

[w
w0

T
0
2

w(n + 1)

w(n + 1)

igual ou maior que


igual ou maior que

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

w(n + 1) n 2 2

w0

(3.32)

ou equivalentemente,
(3.33)

n 2 2

w(n + 1)
2

w0

Seguindo, agora, uma nova rota de desenvolvimento, rescreveremos a Equao


(3.26) sob a forma
w(k +1) = w(k ) + x(k )

para k = 1, " , n e x(k ) X 1

(3.34)

Tomando o quadrado da norma Euclidiana de ambos os lados da Equao (3.34),


obteremos
w(k + 1) = w(k ) + x(k ) + 2 w (k )x(k )
2

(3.35)

Mas, tendo sido assumido que o Perceptron classifica incorretamente um vetor de


entrada x(k ) pertencente ao sub-conjunto 1 , teremos que w T (k )x(k ) < 0 . Portanto, podese deduzir, a partir da Equao (3.35) que
w(k + 1) w(k ) + x(k )
2

(3.36)

ou, de forma equivalente,


w(k + 1) w(k ) x(k ) , k = 1, " , n
2

(3.37)

Adicionando estas inigualdades para k = 1, " , n e invocando a condio inicial


assumida w(0) = 0 , chegamos seguinte inigualdade:
n

w(n + 1) x(k ) n
2

(3.38)

k =1

onde

= max x(k )
x (k )1

23

(3.39)

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

A Equao (3.38) afirma que o quadrado da a norma Euclidiana do vetor de pesos


w(n + 1) cresce no mximo linearmente com o nmero de iteraes n.
O segundo resultado da Equao (3.38) est claramente em conflito com o resultado
anterior da Equao (3.33) para valores de n suficientemente grandes.
Na verdade, pode-se afirmar que n no pode ser maior do que algum valor nmax para
o qual as Equaes (3.33) e (3.38) so ambas satisfeitas com o sinal de igualdade. Ou seja,
nmax a soluo da equao
2
2
n max

w0

= n max

(3.40)

Resolvendo para nmax, dado um vetor soluo w 0 ,encontraremos

nmax =

w0

(3.41)

Temos, assim, provado que para (n ) = 1 para todo n, w(0) = 0 e dado que existe
um vetor soluo w 0 , a regra para adaptao dos pesos sinpticos do Perceptron deve
terminar aps, no mximo, n max iteraes. Note tambm a partir das Equaes (3.28),
(3.39) e (3.41) que no h uma nica soluo para w 0 ou n max .
Podemos, agora, afirmar que o teorema da convergncia da regra de adaptao de
incremento fixo para o Perceptron como segue:
Sejam os sub-conjuntos de vetores de treino 1 e 2 linearmente separveis;
Sejam as entradas apresentadas ao Perceptron originadas destes dois sub-conjuntos;
converge
aps algumas iteraes n0 , no sentido de que
O Perceptron
w(n 0 ) = w(n 0 + 1) = w(n 0 + 2 ) = ! um vetor soluo para n 0 n max .

24

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Convergncia da Regra de Adaptao de Incremento Varivel


(Razo de Aprendizado (n ) Varivel )
Consideremos agora o procedimento de correo de erro absoluto para a adaptao
de um Perceptron de uma nica camada, para o qual (n ) varivel. Em particular, seja

(n ) o menor inteiro para o qual


(n )x T (n )x(n ) > w T (n )x(n )

(3.42)

Com este procedimento podemos afirmar que: se o produto interno w T (n )x(n ) na


iterao n tem um sinal incorreto, ento wT (n + 1)x(n ) na iterao n + 1 pode ter o sinal
correto. Isto sugere que, se w T (n )x(n ) tem um sinal incorreto, podemos modificar a
seqncia de treino na iterao n + 1 fazendo x(n +1) = x(n ) .
Em outras palavras, cada padro apresentado repetidamente ao Perceptron at que
o padro seja classificado corretamente.
Note tambm que o uso de um valor inicial w(0) diferente de zero meramente
resulta no decrscimo ou acrscimo do nmero de iteraes requeridas para convergncia
dependendo de como w(0) se relaciona com a soluo w 0 . Indiferentemente do valor
atribudo a w(0) , o Perceptron tem sua convergncia garantida.
Na Tabela 3.2 apresentado um sumrio do algoritmo de convergncia do
Perceptron. O smbolo sgn () , usado no passo 3 da tabela para computar a resposta atual do
Perceptron, representa a funo signum, descrita no Captulo 1 deste texto.
Podemos, ento, expressar a resposta quantizada y (n ) do Perceptron na forma
compacta:

y (n ) = sgn w T (n )x(n )

25

(3.43)

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Variveis e Parmetros:
Vetor de entrada x(n ) de dimenso [(m + 1) 1] ; x(n ) = [+ 1 x1 (n ) x 2 (n ) ! x m (n )]T
Vetor de pesos w(n ) de dimenso [(m + 1) 1] ; w(n ) = [b(n ) w1 (n ) w2 (n ) ! wm (n )]T
Bias = b(n )
Resposta atual (quantizada) = y (n )
Resposta desejada = d (n )
Parmetro razo de aprendizado (constante positiva <1) =
1. Inicializao: Faa w(0) = 0 . Ento execute as etapas seguintes do algoritmo para os
instantes de tempo n = 1,2, "
2. Ativao: No instante de tempo n ative o Perceptron aplicando o vetor de entrada x(n )
e a resposta desejada d (n ).
3. Cmputo da Resposta Atual: Compute a resposta atual do Perceptron atravs de

y (n ) = sgn w T (n )x(n ) , onde sgn () a funo signum.


4. Adaptao do Vetor de Pesos: Atualize o vetor de pesos do Perceptron atravs de
w(n + 1) = w(n ) + [d (n ) y (n )]x(n ) onde
+ 1 se x(n ) pertence classe C1
d (n ) =
1 se x(n ) pertence classe C 2
5. Continuao: Fazer n = n + 1 e voltar etapa 2.
Tabela 3.2 Sumrio do Algoritmo de Convergncia do Perceptron

26

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

Note que o vetor de entrada x(n ) um vetor [(m + 1) 1] , cujo primeiro elemento
fixo em (+1) ao longo de todo o processo computacional. De forma correspondente, o vetor
de pesos w(n ) um vetor [(m + 1) 1] , cujo primeiro elemento igual ao bias b(n ) . Outro
ponto a salientar na Tabela 3.2 a introduo de uma resposta desejada quantizada d (n ),
definida por
+ 1 se x(n ) pertence classe C1
d (n ) =
1 se x(n ) pertence classe C 2

(3.44)

Ento, a adaptao do vetor de pesos w(n ) pode ser sumarizada na forma da regra
de aprendizado por correo de erro:
w(n + 1) = w(n ) + [d (n ) y (n )]x(n )

(3.45)

onde o parmetro razo de aprendizado, e a diferena d (n ) y (n ) representa um sinal


de erro. O parmetro razo de aprendizado uma constante positiva limitada ao intervalo
0 < 1 . Na escolha de um valor para , dentro deste intervalo, preciso considerar dois
requisitos conflitantes:

Manter a estabilidade da trajetria (estimativas estveis para os pesos) requer valores


pequenos para ;

Adaptao rpida com respeito s mudanas reais nas distribuies subjacentes do


processo responsvel pela gerao do vetor de entrada x requer valores grandes para
.

27

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro

3.4 Referncias Bibliogrficas do Captulo 3:


[1] M. H. Hassoun, Fundamentals of Artificial Neural Networks, MIT Press,
Massachusetts, 1995.
[2] R. D. Strum e D. E. Kirk, First Principles of Discrete Systems and Digital Signal
Processing, Addison-Wesley, 1989.
[3] S. Haykin, Adaptive Filter Theory, 3rd ed., Prentice Hall, Upper Saddle River, New
Jersey, 1996.
[4] S. Haykin, Neural Networks, 2nd ed., Prentice Hall, Upper Saddle River, New Jersey,
1999.
[5] Z.L.Kovcs, Redes Neurais Artificiais, Editora Acadmica So Paulo, So Paulo,
1996.

28

Você também pode gostar