Buscar

Perceptron de Múltiplas Camadas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 1 
Perceptron de Múltiplas Camadas*
 
*
 Versões anteriores deste material foram elaboradas pelos Profs. Leandro N. de Castro e Fernando J. Von 
Zuben. 
Conteúdo 
1. Introdução ............................................................................................................................2 
2. Derivação do Algoritmo de Backpropagation......................................................................7 
2.1 Capacidade de Aproximação Universal ........................................................................14 
3. Aspectos Práticos do Treinamento de Redes MLP ............................................................18 
3.1 Treinamento Local ou em Lote .....................................................................................18 
3.2 Critérios de Parada ........................................................................................................20 
3.3 Arquitetura da Rede.......................................................................................................24 
3.4 Normalização dos Dados de Entrada.............................................................................27 
3.5 Inicialização dos Vetores de Pesos e Limiares (Bias) ...................................................27 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 2 
 
1. Introdução 
• Como o erro é função indireta dos pesos nas camadas intermediárias, a regra da 
cadeia deverá ser usada para o cálculo das derivadas. 
• O perceptron de múltiplas camadas (multi-layer perceptron) é uma rede do tipo 
perceptron com, pelo menos, uma camada intermediária. 
• Trata-se de uma generalização do perceptron simples discutido em aula. 
• Com a publicação do livro Perceptrons (Minsky & Papert, 1969) no final da 
década de 1960, foi proposta a rede perceptron com múltiplas camadas como uma 
tentativa de superar as limitações encontradas no perceptron simples. 
• Tornou-se então necessário desenvolver um algoritmo de treinamento mais 
sofisticado capaz de definir de forma automática os pesos para este tipo de rede. 
• Como será detalhado a seguir, o algoritmo de treinamento desta rede é uma 
generalização da regra delta proposta por Widrow & Hoff para o treinamento da 
Adaline. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 3 
• O treinamento da rede MLP foi feito originalmente utilizando-se um algoritmo 
denominado de retropropagação do erro, conhecido como backpropagation. 
• Este algoritmo consiste basicamente de dois passos: 
o Propagação positiva do sinal funcional: durante este processo todos os pesos da 
rede são mantidos fixos; e 
o Retropropagação do erro: durante este processo os pesos da rede são ajustados 
tendo por base uma medida de erro por base. 
• O sinal de erro é propagado em sentido oposto ao de propagação do sinal 
funcional, por isso o nome de retro-propagação do erro. 
• Uma rede MLP típica possui três características principais: 
o Os neurônios das camadas intermediárias (e, eventualmente, os da camada de 
saída) possuem uma função de ativação não-linear do tipo sigmoidal (e.g. 
função logística ou tangente hiperbólica). 
o A rede possui uma ou mais camadas intermediárias. 
o A rede possui um alto grau de conectividade. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 4 
Input layer 
First hidden 
layer 
Output layer Second 
hidden layer 
…
 
…
 
y1 
 
 
y2 
 
 
yo 
 
+1 
 
x1 
 
 
x2 
 
 
x3 
 
 
 
xm 
+1 +1 
… … 
Functional signal propagation
Error backpropagation
 
 
• A regra delta generalizada será utilizada para ajustar os pesos e limiares (bias) da 
rede de forma a minimizar o erro entre a saída da rede e a saída desejada para 
todos os padrões de treinamento. 
 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 5 
• Para isso, serão utilizadas informações sobre o gradiente do erro em relação aos 
pesos e limiares da rede, pois já sabemos que, atualizando os pesos da rede na 
direção oposta à do vetor gradiente, estamos minimizando o erro entre a saída da 
rede e a saída desejada. 
• Entretanto, o erro é calculado diretamente apenas para a camada de saída. A 
pergunta que o algoritmo de retropropagação do erro responde é: como determinar 
a influência do erro nas camadas intermediárias da rede? 
,
)(
α)()1(
,
,, m
ji
m
ji
m
ji
w
t
twtw
∂
∂ℑ
−=+
 
m
i
m
i
m
i b
t
tbtb
∂
∂ℑ
−=+
)(
α)()1(
 
• A derivação do algoritmo de backpropagation será apresentada e resumida em 
notação matricial: 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 6 
f1
W1
b1
∑∑∑∑
u1
x
1
Primeira camada
y1 = f1 (W1x + b1)
f2
W2
b2
∑∑∑∑
u2
y1
1
Segunda camada
y2 = f2 (W2y1 + b2)
f3
W3
b3
∑∑∑∑
u3
y2
1
Terceira camada
y3 = f3 (W3y2 + b3)
y3
 
• A saída de cada camada da rede torna-se a entrada para a camada seguinte: 
ym + 1 = fm + 1 (Wm + 1ym + bm + 1), para m = 0, 1, …, M – 1, 
onde M é o número de camadas da rede; y0 = x, ou seja, a entrada da primeira 
camada é o vetor de entradas; e y = yM é a saída da última camada (ou da rede como 
um todo). 
• Para a rede apresentada na figura acima, tem-se: 
y3 = f3(W3f2(W2f1(W1x + b1)+b2)+b3). 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 7 
2. Derivação do Algoritmo de Backpropagation 
• Como o erro é função indireta dos pesos nas camadas intermediárias, a regra da 
cadeia deverá ser usada para o cálculo das derivadas. 
,
,,
m
ji
m
i
m
i
m
ji w
u
uw ∂
∂
×
∂
∂ℑ
=
∂
∂ℑ
 
.
m
i
m
i
m
i
m
i b
u
ub ∂
∂
×
∂
∂ℑ
=
∂
∂ℑ
 
• O segundo termo de cada uma das equações acima pode ser facilmente calculado, 
uma vez que a entrada líquida da camada m é uma função explícita dos pesos e 
limiares nesta camada (Sm é a quantidade de neurônios na camada m): 
.
1
1
1
,∑
−
=
− +=
mS
j
m
i
m
j
m
ji
m
i bywu
 
.1,1
,
=
∂
∂
=
∂
∂
−
m
i
m
im
jm
ji
m
i
b
uy
w
u
 
• Definindo agora a sensibilidade de ℑ a mudanças na entrada líquida do i-ésimo 
neurônio da camada m como sendo: 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 8 
,δ
m
i
m
i
u∂
∂ℑ
≡
 
então: 
,δ
1
,
−
=
∂
∂ℑ m
j
m
im
ji
y
w 
.δ
m
im
ib
=
∂
∂ℑ
 
• As equações para atualização de pesos em qualquer camada podem então ser 
expressas da seguinte forma: 
,αδ)()1( 1
,,
−
−=+ mj
m
i
m
ji
m
ji ytwtw .αδ)()1( mimimi tbtb −=+ 
• Em notação matricial temos: 
,)(α)()1( 1 Tmmmm tt −−=+ yδWW
 
,α)()1( mmm tt δbb −=+
 
onde .
21
T
m
S
mmm
m
muuu 







∂
∂ℑ
∂
∂ℑ
∂
∂ℑ
=
∂
∂ℑ
≡ L
u
δ
 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron deMúltiplas Camadas 9 
• Ainda é necessário calcular as sensibilidades δδδδm, o que requer outra aplicação da 
regra da cadeia. É este processo que dá origem ao termo retro-propagação, pois 
descreve a relação de recorrência na qual a sensibilidade na camada m é calculada 
a partir da sensibilidade na camada m + 1. 
• Para derivar a relação de recorrência das sensibilidades, utilizaremos a seguinte 
matriz jacobiana: 
.
1
2
1
1
1
1
2
2
1
2
1
1
2
1
1
2
1
1
1
1
1
1
111






















∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
=
∂
∂
+++
+++
+++
+
+++
m
S
m
S
m
m
S
m
m
S
m
S
m
m
m
m
m
m
S
m
m
m
m
m
m
m
m
mmm
m
m
u
u
u
u
u
u
u
u
u
u
u
u
u
u
u
u
u
u
L
MOMM
L
L
u
u
 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 10 
• Considere um elemento i, j qualquer desta matriz: 
),()( 1
,
1
,
1
,
1
m
j
mm
jim
j
m
j
m
m
jim
j
m
jm
jim
j
m
i ufw
u
uf
w
u
y
w
u
u &+++
+
=
∂
∂
=
∂
∂
=
∂
∂
 
onde .
)()(
m
j
m
j
m
m
j
m
u
uf
uf
∂
∂
=
&
 
• Em notação matricial: 
),(1
1
mmm
m
m
uFW
u
u
&+
+
=
∂
∂
 
onde 
.
)(00
0)(0
00)(
)( 2
1














=
m
S
m
mm
mm
mm
muf
uf
uf
&L
MOMM
L&
L&
& uF
 
• Agora podemos escrever a relação de recorrência para a sensibilidade utilizando a 
regra da cadeia em forma matricial: 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 11 
.))(())(( 11111
1
++
+
+
+
+
=
∂
∂ℑ
=
∂
∂ℑ








∂
∂
=
∂
∂ℑ
=
mTmmm
m
Tmmm
m
T
m
m
m
m
δWuF
u
WuF
uu
u
u
δ &&
 
• Observe que as sensibilidades são propagadas da última para a primeira camada 
através da rede: 
δδδδM → δδδδM – 1 → …→ δδδδ2 → δδδδ1 
• Ainda existe um último passo a ser executado para que o algoritmo de retro-
propagação fique completo. Precisamos do ponto de partida, δδδδM, para a relação de 
recorrência da equação acima. Este ponto é obtido na última camada: 
.)(2
)()()(
δ
1
2
M
i
i
iiM
i
S
j
jj
M
i
T
M
i
M
i
u
yys
u
ys
uu
J
M
∂
∂
−−=
∂
−∂
=
∂
−−∂
=
∂
∂
=
∑
=ysys
 
• Como: 
),()( MjMM
i
M
j
M
M
i
M
i
M
i
i uf
u
uf
u
y
u
y &
=
∂
∂
=
∂
∂
=
∂
∂
 então ).()(2δ MjMiiMi ufys &−−= 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 12 
• Em notação matricial: ).)((2 ysuFδ −−= MMM & 
 
f
 
1 
W
 
1 
b
 
1 
∑∑∑∑ 
u
 
1 
x
 
1 
f
 
2 
W
 
2 
b
 
2 
∑∑∑∑ 
u
 
2 
y
 
1 
1 
f
 
3 
W
 
3 
b
 
3 
∑∑∑∑ 
u
 
3 
y
 
2 
1 
y
 
3 
F
 
1 . F
 
2 . F
 
3 
.
 
Propagação dos sinais 
pi pi pi 2 ( y – s ) 
δδδδ 3 δδδδ 2 δδδδ 1 
Retro-propagação 
das sensibilidades 
pi pi 
(W
 
2 )
 
T (W
 
3 )
 
T 
δδδδ 2 δδδδ 3 
 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 13 
procedure [W] = backprop(max_it,min_err,α,X,D) 
for m from 1 to M do, 
initialize Wm //small random values 
initialize bm //small random values 
end for 
t ← 1 
while t < max_it & MSE > min_err do, 
 for i from 1 to N do, //for each training pattern 
//forward propagation of the functional signal 
y0 ← xi 
yim + 1 ← fm + 1 (Wm + 1yim + bm + 1), m = 0, 1, …, M – 1, 
//backpropagation of sensitivities 
))((2 iiMiMMi yduFδ −−← & 
11))(( ++← miTmmimmi δWuFδ & , m = M – 1, …,2,1, 
//update weights and biases 
Tm
i
m
i
mm )(α 1−−← yδWW , m = 1, …, M , 
m
i
mm
δbb α−← , m = 1, …, M , 
Ei ← eiTei = (di − yi)T (di − yi) //calculate the error for pattern i 
 end for 
 MSE ← (1/N).sum(Ei) //MSE 
t ← t + 1 
end while 
end procedure 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 14 
2.1 Capacidade de Aproximação Universal 
• Uma arquitetura do tipo MLP pode ser vista como uma ferramenta prática geral 
para fazer um mapeamento não-linear de entrada-saída. 
• Especificamente, seja m o número de entradas da rede e o o número de saídas. A 
relação entrada-saída da rede define um mapeamento de um espaço euclidiano de 
entrada m-dimensional para um espaço euclidiano de saída o-dimensional, que é 
infinitamente continuamente diferenciável. 
• CYBENKO (1989) foi o primeiro pesquisador a demonstrar rigorosamente que uma 
rede MLP com uma única camada intermediária é suficiente para aproximar 
uniformemente qualquer função contínua que encaixe em um hipercubo unitário. 
• O teorema da aproximação universal aplicável a redes MLP é descrito abaixo: 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 15 
• Teorema: Seja f(.) uma função contínua não-constante, limitada, e 
monotonicamente crescente. Seja Im um hipercubo unitário m-dimensional (0,1)m. 
O espaço das funções contínuas em Im é denominado C(Im). Então, dada qualquer 
função g ∈ C(Im) e ε > 0, existe um inteiro M e conjuntos de constantes reais αi e 
wij, onde i = 1, …, M e j = 1, …, m, tais que pode-se definir 
∑ ∑
= =






−=
M
i
i
m
j
jijim wxwfxxxF
1
0
1
21 α),...,,(
 
como uma aproximação da função g(.) tal que, 
ε<− ),...,,(),...,,( 2121 mm xxxgxxxF 
Para todo {x1,…, xm} ∈ Im. 
• Este teorema é diretamente aplicável aos perceptrons de múltiplas camadas: 
o Percebemos que a função logística (ou a tangente hiperbólica) utilizada como 
não-linearidade de um neurônio é contínua, não-constante, limitada e 
monotonicamente crescente, o que satisfaz as condições impostas à função f(.). 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 16 
o Verificamos também que a equação para a função F(⋅) representa as saídas de 
uma rede MLP descrita como segue: 
� a rede possui m nós de entrada e uma única camada intermediária com M 
unidades; o conjunto de entradas é {x1,…, xm} 
� o neurônio intermediário i possui pesos wi1, …, wim e limiar w0i 
� a saída da rede é uma combinação linear das saídas das unidades 
intermediárias, com α1, …, αM definindo os coeficientes dessa combinação. 
• O teorema afirma que um perceptron de múltiplas camadas com uma única 
camada intermediária é capaz de realizar uma aproximação uniforme, dado um 
conjunto de treinamento suficientemente significativo para representar a função. 
• Note que este teorema é um teorema de existência. Nada garante que um MLP com 
uma única camada seja ótimo no sentido de tempo de processamento, facilidade de 
implementação e eficiência na representação. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 17 
 1 
xl1 
xlm 
+ f 
w2m 
w21 
w02 
+ f 
wMmwM1 
w0
 
+ f 
w1m 
w11 
w01 
+ 
αM 
α2 
α1 Fl 
 
1 
1 
α0 
1 
 
 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 18 
3. Aspectos Práticos do Treinamento de Redes MLP 
3.1 Treinamento Local ou em Lote 
• Em aplicações práticas do algoritmo de retro-propagação, o aprendizado é 
resultado de apresentações repetidas de todas as amostras do conjunto de 
treinamento ao MLP. 
• Cada apresentação de todo o conjunto de treinamento durante o processo de 
aprendizagem é chamada de época. 
• O processo de aprendizagem é repetido época após época, até que um determinado 
critério de parada seja atingido (próxima seção). 
• É uma boa prática fazer com que a ordem de apresentação das amostras seja feita 
aleatoriamente de uma época para a outra. Esta aleatoriedade tende a fazer com 
que a busca no espaço de pesos tenha um caráter estocástico ao longo dos ciclos de 
treinamento. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 19 
• Para um dado conjunto de treinamento, a atualização dos pesos pode ser feita de 
duas maneiras básicas: 
o Atualização local: neste método, a atualização dos pesos é feita imediatamente 
após a apresentação de cada amostra de treinamento. Especificamente, considere 
uma época consistindo de N padrões de treinamento arbitrariamente ordenados 
( ) ( ){ }NN sxsx ,,...,, 11 . A primeira amostra ( )11, sx da época é apresentada à rede, e 
são efetuados o passo positivo e a retro-propagação do erro, resultando em um 
ajuste dos pesos das conexões. Em seguida, a próxima amostra ( )22 ,sx é 
apresentada à rede e o passo positivo e a retro-propagação do erro são efetuados, 
resultando em mais um ajuste do conjunto de pesos. Este processo é repetido até 
que a última amostra seja apresentada à rede. Este método também é conhecido 
como método de atualização online ou padrão a padrão. 
o Atualização em lote: no método em lote, a atualização dos pesos só é feita após 
a apresentação de todas as amostras de treinamento que constituem uma época. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 20 
O ajuste relativo a cada padrão é acumulado (somado). Este método também é 
conhecido como método de atualização offline ou batch. 
• Do ponto de vista operacional, o método local de treinamento é preferível, pois 
requer um menor armazenamento local para cada conexão. 
• O caráter “mais marcadamente estocástico” da atualização padrão por padrão pode 
reduzir a possibilidade de o algoritmo ficar preso em um mínimo local. 
• Por outro lado, a utilização do método em lote fornece uma estimativa mais precisa 
do vetor gradiente. 
• Numa análise final, entretanto, a eficiência dos dois métodos depende do problema 
a ser tratado (HAYKIN, 1994). 
3.2 Critérios de Parada 
• O processo de minimização do MSE (ou da função custo), em geral, não tem 
convergência garantida e não possui um critério de parada bem definido. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 21 
• Um critério de parada não recomendável, por não levar em conta o estado do 
processo iterativo de treinamento, é interromper o treinamento após um número 
fixo (definido previamente) de iterações. 
• Serão discutidos aqui critérios de parada que levam em conta alguma informação a 
respeito do estado do processo iterativo, cada qual com seu mérito prático. 
• Para formular tal critério, deve-se considerar a possibilidade de existência de 
mínimos locais. 
• Seja θ* o vetor de parâmetros (pesos) que denota um ponto de mínimo, seja ele 
local ou global. 
• Uma condição necessária para que θ* seja um mínimo é que o vetor gradiente 
)θ(∇ℑ
 (ou seja, a derivada parcial de primeira ordem) da superfície de erro em 
relação ao vetor de pesos θ seja zero em θ = θ*. 
• Sendo assim, é possível formular critérios de convergência (ou parada) como o 
seguinte: 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 22 
o é considerado que o algoritmo de retro-propagação convergiu quando a norma 
Euclidiana da estimativa do vetor gradiente (|| )θ(∇ℑ ||) atingiu um valor 
suficientemente pequeno. 
Obs.: o problema deste critério de parada é que, para simulações bem sucedidas, 
o tempo de treinamento pode ser muito longo. Este critério também requer o 
cálculo da norma do vetor gradiente. O Tópico 9 fará um estudo sobre técnicas 
de aceleração da convergência deste algoritmo. 
o é considerado que o algoritmo de retro-propagação convergiu quando a 
variação do erro quadrático de uma época para a outra atingir um valor 
suficientemente pequeno. 
Obs.: esse critério é proposto devido a uma outra propriedade única de um 
mínimo: o fato de que a função custo, ou medida de erro, ℑmed(θ) é estacionária 
no ponto θ = θ*. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 23 
o é considerado que o algoritmo de retro-propagação convergiu quando o erro 
quadrático médio atingir um valor suficientemente pequeno, ou seja, 
ℑmed(θ) ≤ ε, onde ε é um valor suficientemente pequeno. 
Obs.: este critério é uma variação do critério anterior. 
• Se o critério de parada é, por exemplo, um valor mínimo para o MSE, então não 
podemos garantir que o algoritmo será capaz de atingir o valor desejado. 
• Por outro lado, ao tomarmos como critério de parada um valor mínimo para a 
norma do vetor gradiente, devemos estar conscientes de que o algoritmo, 
provavelmente, irá produzir como resultado o mínimo local mais próximo da 
condição inicial. 
• Atualmente existe uma grande quantidade de pesquisadores procurando funções de 
erro (custo) alternativas, com o objetivo de melhorar as características de 
convergência dos perceptrons de múltiplas camadas. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 24 
• Um exemplo disso é a função de custo chamada de entropia cruzada (cross-
entropy) (SHEPHERD, 1997), dada por: 
( ) ( )[ ],1ln
1 1
1
,,
,,∑∑
= =
−
−−=ℑ
N
n
S
i
sM
ni
sM
ni
m
nini yy
 
onde N é o número de amostras, M é o número de camadas, Sm é a dimensão de 
cada camada e y são as saídas da rede. 
• Outro critério de parada bastante útil, e geralmente utilizado em conjunto com 
algum dos critérios anteriores, é a avaliação da capacidade de generalização da 
rede após cada época de treinamento. O processo de treinamento é interrompido 
antes que a capacidade de generalização da rede seja deteriorada. 
3.3 Arquitetura da Rede 
• A quantidade de neurônios na camada de entrada da rede é geralmente dada pelo 
problema ser abordado. 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 25 
• Entretanto, a quantidade de neurônios nas camadas intermediárias e de saída são 
características de projeto. 
• Aumentando-se a quantidade de neurônios na camada intermediária, aumenta-se a 
capacidade de mapeamento não-linear da rede MLP. 
• Porém, é preciso tomar cuidado para que o modelo não se sobre-ajuste aos dados, 
pois então surge a possibilidade de que a rede esteja sujeita ao chamado sobre-
treinamento (overfitting). 
• Uma rede com poucos neurônios na camada intermediária pode não ser capaz de 
aproximar o mapeamento desejado, o que causa underfitting.IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 26 
-3
 
-2
 
-1
 
0
 
1
 
2
 
3
 
-1.0
 
-0.8
 
-0.6
 
-0.4
 
-0.2
 
0.0
 
0.2
 
0.4
 
0.6
 
0.8
 
1.0
 
-3
 
-2
 
-1
 
0
 
1
 
2
 
3
 
-1.0
 
-0.8
 
-0.6
 
-0.4
 
-0.2
 
0.0
 
0.2
 
0.4
 
0.6
 
0.8
 
1.0
 
 
-3
 
-2
 
-1
 
0
 
1
 
2
 
3
 
-1.0
 
-0.8
 
-0.6
 
-0.4
 
-0.2
 
0.0
 
0.2
 
0.4
 
0.6
 
0.8
 
1.0
 
-3 -2 -1 0 1 2 3 
-1.0
 
-0.8 
-0.6
 
-0.4
 
-0.2 
0.0
 
0.2
 
0.4
 
0.6
 
0.8
 
1.0 
 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 27 
• O underfitting também pode ser causado caso o treinamento seja interrompido 
prematuramente. 
3.4 Normalização dos Dados de Entrada 
• Uma das características importantes de uma função sigmoidal é a presença de 
saturação para valores muito grandes de seu argumento. 
• Por esse motivo, é importante fazer com que os valores dos atributos dos dados de 
entrada estejam contidos em um intervalo pré-definido, por exemplo, [0,1] ou 
[−1,1]. 
3.5 Inicialização dos Vetores de Pesos e Limiares (Bias) 
• A qualidade e a eficiência do aprendizado supervisionado em redes multicamadas 
dependem fortemente da especificação da arquitetura da rede, da função de 
ativação dos neurônios, da regra de aprendizagem e dos valores iniciais do vetor de 
parâmetros (pesos). 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 28 
• Valores ótimos destes itens são desconhecidos a priori, pois dependem 
principalmente do conjunto de treinamento e da natureza da solução (THIMM & 
FIESLER, 1997). 
• Assumimos aqui que a arquitetura da rede, as funções de ativação dos neurônios e 
a regra de aprendizado já tenham sido determinadas adequadamente, embora não 
necessariamente de maneira ótima. Sob essas considerações, um processo de 
treinamento bem sucedido passa a depender somente de uma definição do 
conjunto inicial de pesos que guie o processo de treinamento para uma solução 
satisfatória, fora de mínimos locais pobres e problemas de instabilidade numérica. 
• Logo, o conjunto inicial de pesos a ser utilizado no treinamento supervisionado de 
redes multicamadas possui grande influência na velocidade do aprendizado e na 
qualidade da solução obtida após a convergência. 
• Uma escolha inicial inadequada para os valores dos pesos pode fazer com que o 
treinamento não conduza a modelos de aproximação satisfatórios (mesmo que o 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 29 
processo de otimização seja bem-sucedido) ou apresente problemas numéricos 
que, de outro modo, poderiam ser evitados. 
• Atualmente, existem várias técnicas propostas no sentido de definir 
adequadamente o conjunto de pesos iniciais. 
• A importância de uma boa escolha do conjunto de pesos iniciais é enfatizada por 
KOLEN & POLLAK (1990). Eles mostraram que uma busca global pelo conjunto 
ótimo de pesos não é factível. Assim, por motivações práticas, a regra de 
aprendizagem deve ser baseada em técnicas de otimização com busca local. 
• Por outro lado, a busca local implica que a solução a ser obtida está fortemente 
relacionada à condição inicial, pois cada condição inicial pertence à base de 
atração de um mínimo local particular, o qual atrairá a solução (HERTZ et al., 
1991). 
• Conseqüentemente, apenas mínimos locais podem ser produzidos, na prática, 
como resultados de um processo de treinamento supervisionado bem-sucedido. Se 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 30 
este mínimo for o mínimo global, ou um bom mínimo local da superfície de erro, 
então a rede neural estará em, ou próxima de, seu limite de desempenho. Caso 
contrário, quanto pior for o mínimo local, pior o desempenho da rede treinada. 
• Diversas estratégias de inicialização dos pesos já foram sugeridas. Os métodos 
mais simples baseiam-se em uma distribuição uniforme aleatória (KOLEN & 
POLLAK 1990), representando a ausência total de conhecimento sobre o conjunto 
amostral. 
• Há abordagens mais sólidas, como os dois paradigmas alternativos para busca do 
melhor conjunto inicial de pesos via treinamento supervisionado que exporemos a 
seguir: 
• Paradigma do caminho mais fácil: não é tão comum na literatura. A idéia básica é 
fornecer uma condição inicial não necessariamente próxima da solução ótima, mas 
que seja tal que o processo de treinamento possa, a partir da condição inicial, 
evoluir mais rapidamente (em média) e mais eficientemente. A estratégia mais 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 31 
simples é definir automaticamente um intervalo de inicialização para os pesos e 
utilizar uma distribuição uniforme neste intervalo. 
• Paradigma do caminho mais curto: é a abordagem geralmente empregada na 
literatura. A idéia básica é fornecer uma condição inicial tão próxima quanto 
possível da solução ótima, ainda desconhecida. A idéia intuitiva desta abordagem é 
que, quanto mais próxima da solução ótima estiver a condição inicial, menor será a 
probabilidade de existência de mínimos locais no caminho até esta solução, e mais 
eficiente se tornaria o processo de treinamento. Duas estratégias podem ser 
consideradas: extração de conhecimento do conjunto de treinamento com o 
objetivo de descobrir peculiaridades da superfície de otimização (baseado em 
aspectos teóricos), ou exploração da superfície de otimização para aumentar as 
chances de se encontrar uma região promissora na busca pelo ótimo (baseada em 
aspectos heurísticos). 
IA353 – Profs. Fernando J. Von Zuben & Romis R. F. Attux 
DCA/FEEC/Unicamp & DECOM/FEEC/Unicamp 
Tópico 5: Perceptron de Múltiplas Camadas 32 
• O paradigma do caminho mais fácil geralmente ignora o conjunto de treinamento 
na tentativa de definir um bom intervalo de valores para os pesos. Como 
conseqüência, o caminho entre a condição inicial e a solução ótima, embora fácil 
de ser percorrido, pode ser muito longo. 
• Por outro lado, o paradigma do caminho mais curto considera todo o conjunto de 
treinamento, mas geralmente ignora as conseqüências da combinação 〈dados de 
entrada-saída〉 + 〈pesos〉 no processamento de sinais da rede neural. Como 
conseqüência, o caminho entre a condição inicial e a solução ótima, embora curto, 
pode ser muito difícil de ser percorrido. 
• Exemplos destes paradigmas e pontos de partida para uma pesquisa mais avançada 
envolvendo técnicas para geração de condições iniciais podem ser encontrados em: 
NGUYEN & WIDROW (1990), KIM & RA (1991), LEHTOKANGAS et al. (1995) e DE 
CASTRO, L.N. & VON ZUBEN (1998).

Continue navegando