Vous êtes sur la page 1sur 29

PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica

Redes Neurais Artificiais


Fernando Csar C. de Castro e Maria Cristina F. de Castro
1
Captulo 4
Multilayer Perceptrons
As redes Multilayer Perceptron (MLPs) tm sido aplicadas com sucesso em uma
variedade de reas, desempenhando tarefas tais como: classificao de padres
(reconhecimento), controle e processamento de sinais.
Uma RNA do tipo MLP constituda por um conjunto de ns fonte, os quais
formam a camada de entrada da rede (input layer), uma ou mais camadas escondidas
(hidden layers) e uma camada de sada (output layer). Com exceo da camada de entrada,
todas as outras camadas so constitudas por neurnios e, portanto, apresentam capacidade
computacional. O MLP uma generalizao do Perceptron que estudamos no Captulo 3.
A Figura 4.1 mostra a arquitetura de uma rede neural MLP com uma camada de
entrada, 2 camadas escondidas e uma camada de sada.
Figura 4.1: Arquitetura de uma rede neural multilayer perceptron com duas camadas
escondidas.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
2
Duas caractersticas de tal estrutura so imediatamente aparentes:
1. Uma rede multilayer perceptron uma rede progressiva. Conforme estudamos
no Captulo 1, uma RNA dita progressiva (feedforward) quando as sadas dos
neurnios em qualquer particular camada se conectam unicamente s entradas
dos neurnios da camada seguinte, sem a presena de laos de realimentao.
Conseqentemente, o sinal de entrada se propaga atravs da rede, camada a
camada, em um sentido progressivo.
2. A rede pode ser completamente conectada, caso em que cada n
(computacional ou no) em uma camada conectado a todos os outros ns da
camada adjacente. De forma alternativa, uma rede MLP pode ser parcialmente
conectada, caso em que algumas sinapses podero estar faltando. Redes
localmente conectadas representam um tipo importante de redes parcialmente
conectadas. O termo "local" se refere conectividade de um neurnio em uma
camada da rede com relao a somente um sub-conjunto de todas as possveis
entradas. Na prtica, a falta de uma determinada sinapse em um MLP
emulada fazendo-se sua transmitncia constante e igual a zero. Neste estudo,
no entanto, consideraremos apenas MLPs completamente conectados.
O nmero de ns fonte na camada de entrada da rede determinado pela
dimensionalidade do espao de observao, que responsvel pela gerao dos sinais de
entrada. O nmero de neurnios na camada de sada determinado pela dimensionalidade
requerida da resposta desejada. Assim, o projeto de uma rede MLP requer a considerao
de trs aspectos:
I A determinao do nmero de camadas escondidas;
II A determinao do nmero de neurnios em cada uma das camadas escondidas;
III A especificao dos pesos sinpticos que interconectam os neurnios nas diferentes
camadas da rede.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
3
Os aspectos I e II determinam a complexidade do modelo de RNA escolhido e,
infelizmente, no h regras determinadas para tal especificao. A funo das camadas
escondidas em uma RNA a de influir na relao entrada-sada da rede de uma forma
ampla. Uma RNA com uma ou mais camadas escondidas apta a extrair as estatsticas de
ordem superior de algum desconhecido processo aleatrio subjacente, responsvel pelo
"comportamento" dos dados de entrada, processo sobre o qual a rede est tentando adquirir
conhecimento. A RNA adquire uma perspectiva global do processo aleatrio, apesar de sua
conectividade local, em virtude do conjunto adicional de pesos sinpticos e da dimenso
adicional de interaes neurais proporcionada pelas camadas escondidas.
O aspecto III envolve a utilizao de algoritmos de treino supervisionados. As
RNAs MLPs tm sido aplicadas na soluo de diversos e difceis problemas atravs da
utilizao de tais algoritmos. O algoritmo de treino quase universalmente utilizado para
tanto o algoritmo de retro-propagao do erro, conhecido na literatura como
Backpropagation Algorithm ou simplesmente Backprop.
O algoritmo backpropagation baseia-se na heurstica do aprendizado por correo
de erro (em que o erro retro-propagado da camada de sada para as camadas
intermedirias da RNA). Este algoritmo pode ser visto como uma generalizao do
Algoritmo Least Mean Square (LMS) desenvolvido por Bernard Widrow, que estudamos
para o caso especial de um nico neurnio linear, no Captulo 3.
O termo backpropagation surgiu aps 1985. No entanto, a idia bsica foi
primeiramente descrita por Werbos em sua tese de doutorado em 1974. Em 1986, foi
redescoberto por Rumelhart, Hinton e Williams e popularizado atravs da publicao do
livro Parallel Distributed Processing de Rumelhart e McClelland em 1986.
O desenvolvimento do backpropagation representa um marco fundamental em redes
neurais, pois um mtodo computacionalmente eficiente para o treinamento de redes MLPs
e por ter resolvido o problema de realizar a propagao reversa do erro em RNAs com
mltiplas camadas, problema este que atrasou por muitos anos o desenvolvimento da rea
de redes neurais artificiais.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
4
Basicamente, o algoritmo backpropagation consiste de dois passos atravs das
diferentes camadas do MLP: um passo direto e um passo reverso.
No passo direto um padro de atividade do processo a ser aprendido (ou vetor de
entrada) aplicado aos ns de entrada do MLP e o seu efeito se propaga atravs da rede,
camada por camada, produzindo na camada de sada a resposta do MLP excitao
aplicada (vetor de sada). Durante o passo direto os pesos sinpticos so todos fixos.
Durante o passo reverso os pesos sinpticos so todos ajustados de acordo com a
regra de aprendizado por correo de erro. Especificamente, a resposta do MLP excitao
subtrada de um padro de resposta desejado para aquela excitao aplicada, de forma a
produzir um sinal de erro, de forma semelhante ao algoritmo LMS. Este sinal de erro ,
ento, propagado de volta atravs dos mesmos neurnios utilizados no passo direto, mas no
caminho contrrio do fluxo de sinal nas conexes sinpticas - da o nome backpropagation.
Os pesos sinpticos so, ento, ajustados de forma que a resposta obtida do MLP
aproxime-se mais do padro de resposta desejado.
Uma rede MLP apresenta trs caractersticas distintas, de cuja combinao com a
habilidade de aprender atravs da experincia (atravs do treinamento), deriva sua
capacidade computacional:
1. O modelo de cada neurnio do MLP inclui uma funo de ativao no-linear.
importante salientar que esta no-linearidade suave (ou seja, a funo diferencivel
em qualquer ponto), ao contrrio da funo utilizada no modelo do Perceptron de
Rosenblatt (funo signum). Uma forma comumente utilizada de no-linearidade que
satisfaz este requisito a no-linearidade sigmoidal definida pela funo logstica:
( )
j
j
v
y
+

exp 1
1 (4.1)
onde
j
v o potencial de ativao (isto , a soma ponderada de todas as entradas
sinpticas mais a polarizao) do neurnio j, e
j
y a sada do neurnio.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
5
2. O MLP contm uma ou mais camadas de neurnios escondidos que no so parte da
camada de entrada ou da camada de sada da rede. Estes neurnios escondidos
possibilitam que a rede aprenda tarefas complexas, extraindo progressivamente mais
caractersticas significativas dos padres de entrada (vetores de entrada).
3. A rede MLP exibe um alto grau de conectividade, determinado pelas sinapses da rede.
Uma mudana na conectividade da rede requer uma mudana na populao de conexes
sinpticas, ou pesos sinpticos.
Estas mesmas caractersticas, entretanto, so tambm responsveis pelas
dificuldades encontradas na anlise de tais redes. Por exemplo, a presena das
no-linearidades distribudas e a alta conectividade tornam difcil a anlise terica das
redes MLPs. Em uma rede MLP, o conhecimento aprendido sobre o ambiente
representado pelos valores assumidos pelos pesos sinpticos da rede. A natureza distribuda
deste conhecimento ao longo da rede a torna de difcil interpretao. Alm disso, o uso de
neurnios escondidos torna o processo de aprendizado mais difcil de ser "visualizado" na
estrutura da rede.
Observe, na Figura 4.1 que o sinal flui atravs da rede MLP no sentido direto, da
esquerda para a direita e de camada a camada. A Figura 4.2 apresenta um detalhe parcial de
uma rede MLP. Dois tipos de sinais so identificados nesta rede:
1. Sinais funcionais: So estmulos que chegam aos ns de entrada da rede, se
propagam de forma direta (neurnio a neurnio) atravs da rede e emergem da
camada de sada da rede como sinais de sada. Cada neurnio de um MLP tem
aplicado s suas entradas um conjunto de sinais funcionais que gera um sinal
funcional na sada do respectivo neurnio . Na camada de entrada de um MLP o
conjunto de sinais funcionais aplicado a cada neurnio o prprio conjunto de
sinais de entrada (vetor de entrada). A denominao sinal funcional decorre do
fato de que estes sinais so obtidos na sada de cada neurnio como uma funo
dos sinais de entrada do respectivo neurnio.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
6
2. Sinais de Erro: Um sinal de erro se origina em um neurnio de sada da rede
MLP e se propaga de volta (camada a camada) atravs da rede. Este sinal
referido como sinal de erro porque seu clculo, a cada neurnio da rede, envolve
algum tipo de funo de erro.
Figura 4.2: Ilustrao das direes dos dois fluxos bsicos de sinal em uma rede multilayer
perceptron: propagao direta dos sinais e retro-propagao dos sinais de erro.
Cada neurnio de cada camada escondida ou da camada de sada de uma RNA MLP
desempenha duas operaes computacionais:
1. A computao do sinal funcional na sada de cada neurnio, o qual
expresso como uma funo contnua no-linear do sinal funcional de
entrada e dos pesos sinpticos associados com aquele neurnio.
2. A computao de uma estimativa do vetor gradiente (isto , os
gradientes da superfcie de erro com respeito aos pesos conectados
s entradas de um neurnio), clculo este que necessrio para o
passo reverso atravs da rede MLP.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
7
4.1 O Algoritmo Backpropagation
Assim como o algoritmo LMS considerado o mais renomado dos algoritmos
utilizados em filtragem linear adaptativa, o algoritmo backpropagation foi estabelecido
como o mais popular algoritmo utilizado no contexto do aprendizado de RNAs MLP.
A popularidade do algoritmo backpropagation resulta de sua relativa simplicidade
de implementao e do fato de ser um poderoso dispositivo para armazenar o contedo de
informao (adquirido pela rede MLP a partir do conjunto de dados) nos pesos sinpticos
da rede.
Na medida em que o conjunto de dados usado para treinar uma RNA MLP seja
grande o suficiente para ser representativo do ambiente no qual a rede est inserida, a rede
MLP treinada atravs do algoritmo backpropagation desenvolver a capacidade de
generalizar. Especificamente, esta capacidade permite rede MLP apresentar um
desempenho satisfatrio quando alimentada com dados de teste retirados do mesmo
espao de entrada que os dados de treino, mas no previamente apresentados ao MLP.
Antes de passarmos descrio do algoritmo backpropagation, conveniente
fazermos algumas consideraes quanto notao que ser utilizada:
! Os ndices i, j e k se referem a diferentes neurnios no MLP. Os sinais
funcionais se propagam atravs da rede, da esquerda para a direita, sendo
que o neurnio j est na camada direita do neurnio i, e o neurnio k est
na camada direita do neurnio j, quando o neurnio j uma unidade
escondida.
! Na iterao n, o n-simo padro de treino (vetor-exemplo) apresentado
ao MLP.
! O smbolo ( ) n se refere soma instantnea dos erros quadrticos nos ns
de sada do MLP (ou energia do erro) na iterao n. A mdia de ( ) n sobre
todos os valores de n (isto , o conjunto de treino inteiro) representa a
energia mdia do erro
av
.
! O smbolo ( ) n e
j
se refere ao sinal de erro na sada do neurnio j para a
iterao n.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
8
! O smbolo ( ) n d
j
se refere resposta desejada para o neurnio j e usado
para computar ( ) n e
j
.
! O smbolo ( ) n y
j
se refere ao sinal funcional encontrado na sada do
neurnio j, na iterao n.
! O smbolo ( ) n w
ji
denota o peso sinptico que conecta a sada do neurnio
i entrada do neurnio j, na iterao n. A correo aplicada a este peso na
iterao n denotada por ( ) n w
ji
.
! O potencial de ativao (isto , a soma ponderada de todas as entradas
sinpticas mais a polarizao) do neurnio j na iterao n denotado por
( ) n v
j
e constitui o sinal aplicado funo de ativao associada ao
neurnio j.
! A funo de ativao que descreve a relao funcional entrada-sada da
no-linearidade associada ao neurnio j denotada por ( )
j
.
!
A polarizao aplicada ao neurnio j denotada por
j
b ; seu efeito
representado por uma sinapse de peso
0 j j
b w conectada a uma entrada
fixa igual a (+1). Alternativamente, a polarizao pode ser gerada por uma
sinapse de peso
j j
w
0
conectada a uma entrada de valor fixo e igual a
(1), quando recebe o nome de threshold. A nvel de operao do MLP,
para todos os fins prticos as duas alternativas apresentam os mesmos
resultados. Neste estudo consideraremos apenas o nome genrico
polarizao, a qual pode ser originada de um valor fixo positivo (+1) ou
negativo (-1).
! O i-simo componente do vetor de entrada do MLP denotado por ( ) n x
i
.
! O k-simo componente do vetor de sada do MLP denotado por ( ) n o
k
.
! O parmetro razo de aprendizado denotado por .
Tendo estabelecido a notao, inicialmente apenas descreveremos as equaes de
definio do algoritmo backpropagation e sua forma de operao. Posteriormente,
deduziremos as equaes que regem sua operao.
Seja o sinal de erro na sada do neurnio j da camada de sada na iterao n (isto ,
na apresentao do n-simo vetor de treinamento) definido por
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
9
( ) ( ) ( ) e n d n y n
j j j

(4.2)
Define-se o valor instantneo do erro quadrtico para o neurnio j como ( )
1
2
2
e n
j
.
Correspondentemente, o valor instantneo da soma dos erros quadrticos ( ) n
obtida somando ( )
1
2
2
e n
j
sobre todos os neurnios da camada de sada. Estes so os nicos
neurnios visveis para os quais os sinais de erro podem ser calculados de forma direta. A
soma instantnea dos erros quadrticos na camada de sada do MLP ento escrita como
( ) ( )
2
1
2

C j
j
n e n
(4.3)
onde o conjunto C inclui todos os neurnios na camada de sada. Seja N o nmero total de
padres (vetores-exemplo) contidos no conjunto de treino. O erro mdio quadrtico (MSE)
obtido somando ( ) n sobre todo n e ento normalizando com respeito ao tamanho N do
conjunto de treino, conforme
) (

1
0
1
1

N
n
av
n
N

(4.4)
O valor instantneo da soma dos erros quadrticos ( ) n ,e portanto o MSE denotado
por
av
, funo de todos os parmetros livres (isto , pesos sinpticos e nveis de
polarizao) do MLP. Para um dado conjunto de treino,
av
representa a Funo de Custo
do processo de minimizao do erro de aprendizado, constituindo uma medida inversa do
desempenho do processo de aprendizado a partir do conjunto de treino. Para minimizar
av
os pesos sinpticos so atualizados a cada apresentao n de um novo padro ao MLP
atravs do vetor de entrada at o trmino de uma poca. Uma poca consiste no intervalo
correspondente apresentao de todos os N vetores-exemplo do conjunto de treino
camada de entrada do MLP. O ajuste dos pesos feito de acordo com os respectivos erros
computados para cada padro apresentado ao MLP. A mdia aritmtica destas alteraes
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
10
individuais nos pesos sobre o conjunto de treino portanto uma estimativa da verdadeira
alterao que resultaria a partir da alterao de pesos baseada na minimizao da funo
custo
av
sobre todo conjunto de treino.
Considere a Figura 4.3, a qual descreve o neurnio j sendo alimentado por um
conjunto de sinais produzidos na sada dos neurnios da camada sua esquerda.
Figura 4.3: Grafo de fluxo de sinal no neurnio j.
O potencial de ativao ( ) n v
j
aplicado na entrada da no-linearidade associada ao
neurnio j , portanto
( ) ( ) ( )

m
i
i ji j
n y n w n v
0

(4.5)
onde m o nmero total de entradas (excluindo a polarizao) aplicadas ao neurnio j. O
peso sinptico w
j0
(correspondente entrada fixa y
0
= -1 ) define a polarizao
j
aplicada
ao neurnio j. ( ) n w
ji
o peso sinptico conectando a sada do neurnio i ao neurnio j e
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
11
( ) n y
i
o sinal no i-simo n de entrada do neurnio j, ou equivalentemente, o sinal na
sada do neurnio i. Portanto o sinal ( ) n y
j
resultante na sada do neurnio j na iterao n :
( ) ( ) ( )
y n v n
j j j

(4.6)
De maneira similar ao algoritmo LMS, o algoritmo backpropagation aplica a
correo ( ) n w
ji
ao peso sinptico ( ) n w
ji
, tendo como base a direo contrria do
gradiente local da superfcie de erro ( ) w relativo ao peso sinptico.
Se, para uma dada variao no peso sinptico, o algoritmo movimenta-se em uma
trajetria ascendente na superfcie ( ) w , ento significa que esta variao deve ser aplicada
com o sinal invertido sobre o peso sinptico, j que houve um aumento do erro, e
objetiva-se uma diminuio do erro.
Por outro lado, se para uma dada variao no peso sinptico o algoritmo
movimenta-se em uma trajetria descendente na superfcie ( ) w , ento significa que esta
variao deve ser aplicada com o sinal positivo sobre o peso sinptico, j que houve uma
diminuio do erro e, portanto, o movimento deve ser encorajado naquela direo.
Este mtodo de correo dos pesos sinpticos denominado de Regra Delta. No
algoritmo LMS, estudado em captulo anterior, a Regra Delta definida pela j conhecida
expresso ( ) ( ) ( ) n w n w J , onde ( ) ( )
( ) ( )
( )
( ) { }
( ) n w
n e
n w
n w
n w


2
2
1
J
J o gradiente local
da superfcie de erro gerada pela funo de custo ( ) ( ) ( ) n e n w
2
2
1
J J a ser minimizada no
instante n.
No caso do MLP, o gradiente local da superfcie de erro ( ) w relativo ao peso
sinptico
ji
w representa, portanto, um fator de sensibilidade, determinando a direo de
movimento no espao de pesos sinpticos para o valor do peso sinptico
ji
w que minimiza
( ) w .
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
12
A correo ( ) n w
ji
aplicada a ( ) n w
ji
, ditada pela Regra Delta, definida por
( ) ( ) ( )
( )
( )
1
n w
n
n w n w n w
ji
ji ji ji

+
(4.7)
onde a constante que determina a razo de aprendizado do algoritmo backpropagation.
O uso do sinal negativo em (4.7) impe a movimentao contrria direo apontada pelo
gradiente na superfcie de erro definida no espao de pesos sinpticos.
O algoritmo backpropagation estabelece (ver Seo 4.1.5 para a demonstrao das
equaes que seguem) o aprendizado de um MLP atravs da Regra Delta como sendo a
correo efetuada em suas sinapses atravs de
( ) ( ) ( ) n y n n w
i j ji

(4.8)
onde ( ) n w
ji
a correo aplicada i-sima sinapse do neurnio j, ( ) n y
i
o sinal de
entrada no i-simo n de entrada do neurnio j (= sinal na sada do neurnio i, pertencente
camada esquerda da que pertence o neurnio j, se este no estiver na primeira camada
escondida se o neurnio j estiver na primeira camada escondida ento ( ) n y
i
corresponde
ao i-simo n de entrada ( ) n x
i
do MLP) e ( ) n
j
o gradiente local do neurnio j, definido
por
(4.9a)
( )
( ) ( ) ( )
( ) ( ) ( ) ( )

'

n

kj
k
k j j
j j j
j
w n n v
n e n v
n

, neurnio j de sada
, neurnio j escondido (4.9b)
De acordo com (4.9a) o gradiente local ( ) n
j
para o neurnio de sada j igual ao
produto do correspondente sinal de erro ( ) n e
j
pela derivada ( ) ( ) n v
j j
da funo de
ativao associada. Neste caso o fator chave necessrio envolvido no clculo do ajuste dos
pesos ( ) n w
ji
o sinal de erro ( ) n e
j
na sada do neurnio j.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
13
Quando o neurnio j est localizado em uma camada escondida, conforme mostra a
Figura 4.4, mesmo no sendo diretamente acessveis, tais neurnios dividem a
responsabilidade pelo erro resultante na camada de sada. A questo, no entanto, saber
como penalizar ou recompensar os pesos sinpticos de tais neurnios pela sua parcela de
responsabilidade, j que no existe resposta desejada especificada neste local do MLP e,
portanto, no h como calcular o sinal de erro.
A soluo, dada pela equao (4.9b), computar o sinal de erro recursivamente para
o neurnio escondido j retro-propagando os sinais de erro de todos os neurnios direita do
neurnio j aos quais a sada deste encontra-se conectado.
Figura 4.4: Grafo de fluxo de sinal mostrando os detalhes do neurnio de sada k comectado
ao neurnio escondido j.
O fator ( ) ( ) n v
j j
envolvido na computao do gradiente local ( ) n
j
na equao
(4.9b) depende somente da funo de ativao associada com o neurnio escondido j. Os
demais fatores envolvidos no somatrio sobre k em (4.9b) dependem de dois conjuntos de
termos. O primeiro, ( ) n
k
, requer conhecimento dos sinais de erro ( ) n e
k
recursivamente
retro-propagados, conforme veremos adiante, a partir de todos aqueles neurnios
localizados na camada imediatamente direita do neurnio escondido j e que esto
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
14
diretamente conectados a ele (ver Figura 4.4). O segundo conjunto de termos, ( ) n w
kj
,
consiste dos pesos sinpticos dos neurnios direita do neurnio j e que com ele
estabelecem conexo.
Figura 4.5: Grafo de fluxo de sinal mostrando o processo de retro-propagao dos sinais de
erro na camada de sada para um neurnio j da camada escondida imediatamente
esquerda. m
L
o nmero de neurnios da camada de sada.
4.1.1 Os Dois Passos Computacionais do
Algoritmo Backpropagation
Na aplicao do algoritmo backpropagation, dois passos computacionais distintos
podem ser identificados, um passo direto e um passo reverso.
No passo direto (forward pass) os pesos sinpticos permanecem inalterados em todo
MLP e os sinais so propagados da entrada da rede para a sada, de neurnio a neurnio.
O sinal que resulta na sada do neurnio j computado por
( ) ( ) ( ) n v n y
j j

(4.10)
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
15
onde ( ) n v
j
o potencial de ativao do neurnio j, definido por
( ) ( ) ( )
0

m
i
i ji j
n y n w n v
(4.11)
sendo m o nmero total de entradas (excluindo a polarizao) aplicadas ao neurnio j,
( ) n w
ji
o peso sinptico conectando a sada do neurnio i ao neurnio j e ( ) n y
i
o sinal
de entrada do neurnio j, ou equivalentemente, o sinal na sada do neurnio i. Se o neurnio
j est na primeira camada escondida do MLP, ento o ndice i refere-se ao i-simo n de
entrada do MLP, para o qual escreve-se
( ) ( ) y n x n
i i

(4.12)
onde ( ) n x
i
o i-simo componente do vetor de entrada do neurnio j. Se, por outro lado, o
neurnio j est na camada de sada, o ndice j refere-se ao j-simo n de sada do MLP,
para o qual escreve-se
( ) ( ) y n o n
j j

(4.13)
sendo ( ) n o
j
o j-simo componente do vetor de sada.
Esta sada comparada com a resposta desejada ( ) n d
j
sendo obtido o sinal de erro
( ) n e
j
para o j-simo neurnio de sada.
Portanto, o passo direto comea na primeira camada escondida pela apresentao do
vetor de entrada a ela e termina na camada de sada com a determinao do sinal de erro
para cada neurnio desta camada.
O passo reverso (backward pass) comea na camada de sada, propagando os sinais
de erro na direo contrria atravs do MLP (de volta para a entrada retro-propagando),
de camada em camada, e recursivamente computando os gradientes locais para cada
neurnio.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
16
Este processo recursivo de determinao dos gradientes locais permite que sejam
executadas correes nos pesos sinpticos do MLP de acordo com a Regra Delta (Equao
(4.8)).
Para um neurnio localizado na camada de sada, o gradiente local simplesmente o
sinal de erro daquele neurnio multiplicado pela primeira derivada de sua no-linearidade
(equao (4.9a)).
A partir do gradiente local de cada neurnio da camada de sada, usa-se a equao
(4.8) para computar as mudanas em todas as sinapses (conexes) que alimentam a camada
de sada.
Obtidos os gradientes locais para os neurnios da camada de sada, usa-se a equao
(4.9b) para computar o gradiente local de cada neurnio na camada esquerda.
A partir do gradiente local de cada neurnio da camada esquerda, usa-se a equao
(4.8) para computar as mudanas em todas as sinapses (conexes) que alimentam esta
camada.
Este procedimento continuado recursivamente, propagando correes nos pesos
sinpticos camada por camada, at a camada de entrada.
Note que durante cada ciclo passo direto - passo reverso ao longo da apresentao
do conjunto de treino ao MLP, o vetor de entrada para aquele ciclo mantido fixo.
4.1.2 A Derivada da Funo de Ativao
A determinao do gradiente local para cada neurnio do MLP requer o
conhecimento da derivada ( ) da funo ativao ( ) associada com o neurnio,
conforme se infere de (4.9). Para que esta derivada exista, necessrio que a funo de
ativao ( ) seja contnua. Uma funo de ativao no-linear continuamente
diferencivel, comumente aplicada em redes MLP a funo sigmoidal, j descrita no
Captulo 1. Duas formas da funo sigmoidal so aqui tratadas:
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
17
a) Funo Logstica:
Esta forma de no-linearidade sigmoidal definida por:
( ) ( )
( ) ( )
( ) < < 0 >
+ 1
1
n v a
n av
n v
j
j
j j
- e ,
exp

(4.14)
onde ( ) n v
j
o potencial de ativao do neurnio j. De acordo com esta no-linearidade, a
amplitude da sada fica restrita ao intervalo 1 0
j
y . Omitindo os ndices n e j por
simplicidade, e derivando a funo de ativao expressa em (4.14) com respeito a ( ) n v
j
,
temos
( ) ( )
( )
( )
( ) [ ]

+ 1

'

+ 1
1

2
-av
-av a
av dv
d
v
dv
d
v
exp
exp
exp

(4.15)
( )
( )
( ) ( ) ( ) v v a
v
v a

,
_

1
1

2
e como ( ) ( ) ( ) n v n y
j j
,
( ) ( ) ( ) ( ) ( ) ( ) [ ] n y n y a n v
dv
d
n v
j j j j
1
(4.16)
Note na Equao (4.16) que a derivada atinge valor mximo em ( ) 5 0 . n y
j
, e seu
valor mnimo (= zero) em ( ) 0 n y
j
, ou ( ) 0 . 1 n y
j
.
J que a quantidade de mudana em um peso sinptico do MLP proporcional
derivada, segue que, para uma funo de ativao sigmoidal, os pesos sinpticos sofrem a
maior alterao para aqueles neurnios no MLP onde os sinais assumem valores no meio de
seu intervalo de variao. Esta uma caracterstica que contribui para a estabilidade do
algoritmo de aprendizagem.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
18
b) Funo Tangente Hiperblica:
Esta forma de no-linearidade sigmoidal definida por:
( ) ( ) ( ) ( )
( ) ( )
( ) ( )
0 >

'

2 + 1
2 1
b a
n bv
n bv
a n bv a n v
j
j
j j j
, ,
exp
exp
tanh
(4.17)
De acordo com esta no-linearidade, a amplitude da sada fica restrita ao intervalo
a y a
j
. Omitindo os ndices n e j por simplicidade, a derivada da funo ativao
pode ser obtida atravs de
( ) ( ) ( ) ( ) ( ) 1
2 2
bv ab bv ab bv a
dv
d
v
dv
d
v tanh ) ( sech tanh
(4.18)
( ) ( ) ( ) ( )

,
_

,
_

,
_

,
_

1
2
2
2
2 2
a
v
ab
a
bv a
ab
a
bv a
ab
tanh tanh
( ) ( )( ) y a y a
a
b
y a
a
b
a
y a
ab
a
y
ab +

,
_

,
_

1
2 2
2
2 2
2
2
Portanto
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) n y a n y a
a
b
n v
dv
d
n v
j j j j
+
(4.19)
A Figura 4.6 mostra o grfico da funo tangente hiperblica e de sua derivada para
7159 1 . a e 3 2 b .
Observe que, ao utilizarmos a Equao (4.16) como derivada da funo logstica e a
Equao (4.19) como derivada da funo tangente hiperblica, o gradiente local
j
dado
por (4.9) pode ser calculado sem o uso explcito da definio analtica da funo de
ativao.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
19
Figura 4.6: Grfico de ( ) ( ) bv a v tanh e ( ) ( ) ( ) bv ab v
2
1 tanh p/ 7159 1 . a e 3 2 b .
4.1.3 Razo de Aprendizado e Fator de Momento
O algoritmo backpropagation prov uma aproximao da trajetria de movimento
sobre a superfcie de erro no espao de pesos sinpticos a qual, a cada ponto da superfcie,
segue a direo de descida mais ngreme.
Quanto menor for feita a razo de aprendizado , menores sero as correes
aplicadas aos pesos sinpticos do MLP de uma iterao para a prxima e mais suave ser a
trajetria no espao de pesos. Isto obtido sob o custo de uma lenta convergncia do
algoritmo at um valor de erro pequeno o suficiente para ser aceitvel.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
20
Se, por outro lado, a razo de aprendizado feita grande, de modo a acelerar a
convergncia do algoritmo, as correes feitas nos pesos sinpticos podem resultar
demasiadamente grandes, de modo que o algoritmo se torna instvel (oscilatrio).
Um mtodo simples utilizado para acelerar a convergncia e manter a trajetria
estvel o acrscimo do chamado Fator de Momento Regra Delta (mostrada na Equao
4.7). Assim, teremos
( ) ( ) ( ) ( ) 1 n y n n w n w
i j ji ji
+
(4.20)
onde a constante denominada de Constante de Momento com 0 < < 1. Seu efeito
aumentar a velocidade da trajetria no espao de pesos na direo da descida mais ngreme.
Da equao (4.20) nota-se que se a correo aplicada em determinado peso
sinptico mantm o mesmo sinal algbrico durante vrias iteraes consecutivas, situao
que ocorre quando a trajetria na superfcie de erro desenrola-se ao longo de um caminho
em descida ngreme, a correo do peso sinptico acelerada pelo fator de momento, j
que, sendo o caminho uma descida ngreme, o mnimo deve estar longe ainda. Um eventual
mnimo local encontrado ao longo desta descida acelerada pode, ento, ser facilmente
transpassado. Isto ocorre porque, imaginando que a trajetria das coordenadas do vetor de
pesos sinpticos
j
W de um neurnio j qualquer seja a trajetria de um mvel de grande
massa descendo uma ladeira irregular (i.e., com vrios mnimos locais), em conseqncia
do alto momento de inrcia (energia cintica) do mvel devido sua massa, as
irregularidades (mnimos locais) no conseguem parar o movimento do mvel.
Por outro lado, se a correo aplicada em determinado peso sinptico troca o sinal
algbrico durante vrias iteraes consecutivas, situao esperada ocorrer quando a
trajetria na superfcie de erro desenrola-se ao longo de um caminho prximo ao mnimo
global, a correo do peso sinptico freada pela reduo do valor absoluto mdio do fator
de momento acrescentado, j que um mnimo (provavelmente global) est prximo e uma
alta velocidade poderia desestabilizar o algoritmo em torno do mnimo.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
21
4.1.4 Sumrio do Algoritmo Backpropagation e
Sugestes Operacionais
I - Inicializao:
1.Define-se o nmero de camadas do MLP. Em geral, sob o ponto de vista de rapidez de
reduo do MSE, prefervel utilizar poucas camadas escondidas com muitos neurnios
por camada do que muitas camadas escondidas com poucos neurnios por camada. Isto
porque o uso de muitas camadas escondidas dilui o efeito corretivo da retro-propagao
dos sinais de erro sobre as sinapses ao longo do backward pass. Em conseqncia, o MLP
demorar mais pocas para atingir um MSE suficientemente baixo. Por outro lado, um
nmero maior de camadas escondidas habilita o MLP a captar melhor as estatsticas de
ordem superior do processo a ser aprendido, melhorando, assim, a capacidade de
generalizao do MLP. Isto ocorre porque um maior nmero de camadas escondidas torna
o mapeamento
L
m m

1
realizado pelo MLP, sendo
1
m e
L
m respectivamente o
nmero de ns de entrada e sada do MLP, um mapeamento com maior no-linearidade
recursiva. A informao sobre o processo a ser aprendido pelo MLP fica armazenada nas
sinapses dos neurnios de cada camada, e as sadas de cada camada recursivamente
alimentam as entradas da camada seguinte durante a fase de treino. Cada camada executa
uma operao no-linear devido a funo de ativao, portanto, a medida que uma camada
alimenta a seguinte uma nova instncia da operao no-linear efetuada. A operao
no-linear efetuada pela funo de ativao definida pela funo exponencial
x
e (ou
por uma combinao de exponenciais no caso da Tangente Hiperblica) , sendo
x
e
passvel de ser expandida na srie de potncias
e
x
1 x
1
2
x
2
.
1
6
x
3
.
1
24
x
4
.
1
120
x
5
.
...
.
Ora, como a informao recursivamente acumulada nas sinapses do MLP, sendo
processada atravs de vrias instncias recursivas de uma srie de potncias durante o
treino, fica implcito que o MLP acumula informao na forma de estruturas de
correlao estatstica de ordem superior, isto , aps a fase de treino do MLP a
informao armazenada no conjunto de sinapses est associada
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
22
{ } { } { } ! + + +
l k j i k j i j i
x x x x E x x x E x x E onde
i
x ,
j
x , ... representam
individualmente todos os possveis N vetores existentes no conjunto de treino, {} E o
operador mdia estatstica;
j i
x x representa a matriz m m formada pelos
2
m produtos
entre os m componentes do vetor
i
x pelos m componentes do vetor
j
x , isto ,
T
j i j i
x x x x ;
k j i
x x x representa a estrutura cbica em
3
formada pelos
3
m
produtos entre os
2
m elementos da matriz
j i
x x e os m componentes do vetor
k
x ; e
assim sucessivamente.
1- Subtrai-se o vetor mdia do conjunto de N vetores de treino.
2- Normaliza-se a i-sima componente de cada vetor de treino pelo desvio padro do
conjunto de N valores formado pela i-sima componente de todos os N vetores de
treino.
3- Normaliza-se o conjunto de N sadas desejadas para o intervalo [-1,+1].
4- Definem-se os parmetros a e b da funo de ativao. Em geral, 7159 1 . a e 3 2 / b
so valores adequados para ( ) ( ) bv a v tanh , de modo que ( ) 1 14 1 0 . ab .
5- Inicializam-se os pesos sinpticos com valores aleatrios de distribuio uniforme. Uma
possvel heurstica adotar uma inicializao randmica com valores compreendidos no
intervalo [-2.4/F
i
, +2.4/F
i
] onde F
i
o fan-in ou o nmero total de ns de entrada
(sinapses) do neurnio. Outra possvel heurstica adotar uma inicializao randmica
com conjunto de valores de mdia zero e varincia definida por
i
F / 1 .
6- Definem-se o momento 0< < 1 e a razo de aprendizado 0<<1 por camada do MLP.
7- Visto que os neurnios prximos da camada de sada tendem a ter maiores gradientes
locais, atribui-se a eles usualmente razes de aprendizado menores. Outro critrio a ser
considerado simultaneamente que neurnios com muitas entradas devem ter
menores.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
23
II - Treinamento:
1- Apresenta-se cada exemplo (vetor de entrada) do conjunto de treino ao MLP. Definindo
como
L
m m

1
: o mapeamento ou processo a ser aprendido pelo MLP, sendo
1
m e
L
m respectivamente o nmero de ns de entrada e sada do MLP, o conjunto de treino
deve conter uma parcela suficientemente significativa do universo de vetores-exemplo
que descrevem o processo , caso contrrio, aps o treino o MLP no ter condies
de inferir um resultado correto quando a ele for apresentado um vetor de que no
encontrava-se no conjunto de treino. Em outras palavras, o conjunto de treino deve
conter uma parcela suficientemente significativa do universo de vetores-exemplo que
descrevem o processo para no prejudicar a capacidade de generalizao do MLP.
2- Para cada exemplo executa-se completamente um ciclo passo direto - passo reverso,
mantendo-se o vetor de entrada aplicado entrada do MLP.
3- O final da apresentao de todos os exemplos do conjunto de treino define uma poca .
A cada determinado nmero de pocas em que for observado uma significativa queda
no MSE, aumenta-se o momento e/ou a razo de aprendizado .
4- Prossegue-se o treino do MLP de poca em poca, eventualmente ajustando e ,
at que se atinja o Critrio de Parada.
III - Critrio de Parada:
O critrio de parada no treino de uma rede MLP subjetivo, j que no existe prova de que
o algoritmo backpropagation tenha convergido para o mnimo global da superfcie de erro
(se que existe o mnimo global).
Sugere-se como critrio de parada o seguinte procedimento:
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
24
As iteraes de treino so terminadas se:
1- O valor do MSE atingiu um valor suficientemente baixo e/ou
2- A razo de variao do MSE atingiu um valor suficientemente baixo
em valor absoluto e negativo.
Quando qualquer uma das condies acima atingida, considera-se que o MLP no
necessita mais ser treinado. Note que o critrio 2 pode significar que o backpropagation
ficou preso em um mnimo local e no global.
importante observar que um MSE baixo ao final do treino no necessariamente
implica em uma alta capacidade de generalizao. Se o conjunto de treino escolhido para
representar o processo a ser aprendido pelo MLP constituir um sub-conjunto cujas
propriedades estatsticas no correspondem s de , ento o MLP falhar em inferir o
resultado correto quando um vetor de que no pertence ao conjunto de treino for
apresentado ao MLP.
4.1.5 A Determinao da Expresso do Gradiente
Local do Algoritmo Backpropagation
Conforme j discutido, o algoritmo backpropagation aplica a correo ( ) n w
ji
ao
peso sinptico ( ) n w
ji
, tendo como base a direo contrria do gradiente local
( )
( )

n w
n
ji

da
superfcie de erro ( ) w relativo ao peso sinptico. Em ltima anlise, o gradiente local
( )
( )

n w
n
ji

representa a variao resultante ( ) w no erro quadrtico instantneo ( ) w do


MLP quando aplicada uma pequena variao ao peso sinptico que liga a sada do
neurnio i ao i-simo n de entrada do neurnio j.
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
25
De acordo com a regra da cadeia do clculo diferencial, o gradiente local
( )
( )

n w
n
ji

pode ser expresso por


( )
( )
( )
( )
( )
( )
( )
( )
( )
( ) n w
n v
n v
n y
n y
n e
n e
n
n w
n
ji
j
j
j
j
j
j ji


(4.21)
De (4.3) temos
( ) ( ) ( ) ( ) ( ) ( ) { } n e n e n e n e n e n
L
L
m j
m
j
j
2
1
2 2
1
2
0
1
0
2

2
1
2
1

+ + + + +

! !
(4.22)
onde m
L
o nmero de neurnios da camada de sada.
Derivando (4.22) em relao ( ) n e
j
resulta em
( )
( ) ( )
( ) ( ) ( ) ( ) { } ( ) n e n e n e n e n e
n e n e
n
j m j
j j
L
+ + + + +

2
1
2 2
1
2
0
2
1
! !

(4.23)
Derivando (4.2) em relao ( ) n y
j
obtemos
( )
( )
1
n y
n e
j
j

(4.24)
Derivando (4.6) em relao ( ) n v
j
temos
( )
( )
( ) ( ) n v
n v
n y
j j
j
j


(4.25)
valor j determinado por (4.16) ou (4.19), dependendo da funo de ativao utilizada no
MLP.
De (4.5) temos
( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )

'

+ + +
+ +

n y n w n y n w
n y n w n y n w
n y n w n v
m jm i ji
j j
m
i
i ji j
! !
!
1 1 0 0
0

(4.26)
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
26
Derivando (4.26) em relao ( ) n w
ji
resulta em
( )
( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) n y
n y n w n y n w
n y n w n y n w
n w n w
n v
i
m jm i ji
j j
ji ji
j

'

+ + +
+ +

! !
!
1 1 0 0

(4.27)
Substituindo (4.23), (4.24), (4.25) e (4.27) em (4.21), temos
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )( ) ( ) ( ) ( ) n y n v n e
n w
n v
n v
n y
n y
n e
n e
n
n w
n
i j j j
ji
j
j
j
j
j
j ji

1
(4.28)
Substituindo (4.28) em (4.7)
( ) ( ) ( ) ( ) ( ) ( ) ( ) 1 n y n v n e n w n w n w
i j j j ji ji ji
+
(4.29)
Note de (4.28) que o termo ( ) ( ) ( ) n v n e
j j j
em (4.29) origina-se da cadeia de
operaes
( )
( )
( )
( )
( )
( )
( )( ) ( ) ( ) n v n e
n v
n y
n y
n e
n e
n
j j j
j
j
j
j
j

1
(4.30)
isto
( )
( )
( )
( )
( )
( )
( ) ( ) ( ) n v n e
n v
n y
n y
n e
n e
n
j j j
j
j
j
j
j


(4.31)
ou ainda, simplificando os diferenciais intermedirios em (4.31), obtemos o denominado
gradiente local j
( )
( )
( )
( ) ( ) ( ) n v n e
n v
n
n
j j j
j
j


(4.32)
Note que (4.32) equivalente (4.9a). Substituindo (4.32) em (4.29) obtemos
( ) ( ) ( ) ( ) ( ) 1 n y n n w n w n w
i j ji ji ji
+
(4.33)
Observe que (4.33) a Equao (4.8).
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
27
No entanto, (4.32) no pode ser explicitamente determinada exceto para neurnios
na camada de sada, porque na camada de sada existe um erro ( ) n e
j
associado a cada
neurnio j no instante n.
Como proceder, ento, para determinar o gradiente local ( ) n
j
de neurnios
pertencentes a camadas escondidas, onde no existe um erro explcito associado a cada
neurnio? Para solucionar este problema, inicialmente vamos expandir (4.32) em
( )
( )
( )
( ) ( ) ( )
( )
( )
( )
( )
( )
( )
( ) ( ) n v
n y
n
n v
n y
n y
n
n v n e
n v
n
n
j j
j j
j
j
j j j
j
j


(4.34)
Reescrevendo (4.22), temos
( ) ( ) ( )

k
k
m
k
k
n e n e n
L
2
1
0
2
2
1
2
1

(4.35)
A Equao (4.35) idntica (4.22) apenas com o ndice do somatrio substitudo
por k para caraterizar que (4.35) refere-se erros quadrticos de neurnios da camada de
sada. Isto feito para evitar confuso com neurnios da camada escondida imediatamente
esquerda da camada de sada, os quais, segundo a conveno aqui adotada devem ser
indexados por j. conveniente relembrar que estamos buscando determinar o gradiente
local ( ) n
j
de neurnios pertencentes a camadas escondidas, onde no existe um erro
explcito associado a cada neurnio.
De (4.35) temos
( )
( ) ( )
( ) ( )
( )
( )

k j
k
k
k
k
j j
n y
n e
n e n e
n y n y
n
2
2
1
(4.36)
que pode ser re-escrita como
( )
( )
( )
( )
( )
( )
( )
( )

k j
k
k
k
k
k j
k
k
j
n y
v
v
n e
n e
n y
n e
n e
n y
n
(4.37)
Mas, da Figura 4.4 temos para o neurnio k na camada de sada
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
28
( ) ( ) ( ) ( ) ( ) ( ) n v n d n y n d n e
k k k k k k

(4.38)
e, portanto, derivando (4.38) em relao ( ) n v
k
( )
( )
( ) ( ) n v
n v
n e
k k
k
k

(4.39)
De (4.5), temos que o potencial de ativao para um neurnio k situado na camada
direita da que esto situados os neurnios de ndice j a ele conectado dado por
( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )

'

+ + +
+ +

1 1 0 0
0

n y n w n y n w
n y n w n y n w
n y n w n v
m km j kj
k k
m
j
j kj k
! !
!

(4.40)
onde m o nmero total de entradas (excluindo a polarizao) aplicadas ao neurnio k.
Derivando (4.40) em relao a ( ) n y
j
temos
( )
( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) n w
n y n w n y n w
n y n w n y n w
n y n y
n v
kj
m km j kj
k k
j j
k

'

+ + +
+ +

1 1 0 0
! !
!
(4.41)
Substituindo (4.39) e (4.41) em (4.37) obtemos
( )
( )
( )
( )
( )
( ) ( ) ( ) ( )

k
kj k k k
k j
k
k
k
k
j
n w n v n e
n y
v
v
n e
n e
n y
n

(4.42)
Mas de (4.34) com j substitudo por k temos
( ) ( ) ( ) ( ) n v n e n
k k k k

(4.43)
Substituindo (4.43) em (4.42),
( )
( )
( ) ( )

k
kj k
j
n w n
n y
n

(4.44)
Substituindo (4.44) em (4.34) resulta em
( )
( )
( )
( )
( )
( ) ( ) ( ) ( ) ( ) ( )


k
kj k j j j j
j j
j
n w n n v n v
n y
n
n v
n
n

(4.45)
PUCRS - FENG - DEE - Mestrado em Engenharia Eltrica
Redes Neurais Artificiais
Fernando Csar C. de Castro e Maria Cristina F. de Castro
29
Observe que (4.45) a Equao (4.9b), vlida quando o neurnio j encontra-se em
uma camada escondida.
Desta forma, fica demonstrada a consistncia das Equaes (4.8)/(4.20) e (4.9)
utilizadas na atualizao das sinapses do MLP durante o backward pass.
4.2 Referncias Bibliogrficas do Captulo 4
[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, 3
rd
ed., Prentice Hall, Upper Saddle River, New
Jersey, 1996.
[4] S. Haykin, Neural Networks, 2
nd
ed., Prentice Hall, Upper Saddle River, New Jersey,
1999.
[5] Z.L.Kovcs, Redes Neurais Artificiais, Editora Acadmica So Paulo, So Paulo,
1996.

Vous aimerez peut-être aussi