5 - mlp
DESCRIPTION
zxxTRANSCRIPT
-
1Antonio G. [email protected] - 1013(021)2598-3268
Modelo MLPModelo MLP
Universidade Federal do Rio de Janeiro
www.labic.nce.ufrj.br
GRADUAO - 2007/1
fev-072
MLP Multi Layers Perceptron
1. Redes Neurais (RN) de mltiplas camadas resolvem problemas no linearmente separveis.
2. Uma funo contnua sempre pode ser aproximada por uma rede de uma camada oculta, desde que a camada de sada seja linear e a camada oculta utilize uma funo de propagao contnua no-constante, limitada e monotonicamente crescente. (Teorema da Aproximao Universal).
3. Uma funo qualquer sempre pode ser aproximada por uma rede de duas camadas ocultas.
4. Toda classificao pode ser feita com uma rede com uma camada oculta e uma de sada, ambas no lineares.
-
2fev-073
x1
x2
1a camada de pesos ajustveiscamada de sada
W0
2a camada de pesos ajustveis1a camada escondida
W1
ka camada de pesos ajustveis(K-1)a camada escondida
vrias camadas de pesos ajustveis; conexo completa; tipo acclica (feedforward)
Wk-1
y0
y1
^
^
O Modelo MLPO Modelo MLP
fev-074
Esquema de Treinamento - A Regra Delta Generalizada
o modelo do neurnio
a funo degrau substituda pela sigmoid ou tangente hiperblica
x1
xm wm
w1
net
w0
+1
y
yd
Xi
iw xerro
esquema aprendizagem
f(net)
BackpropagationBackpropagation
-
3fev-075
z Camada oculta: 2 neurniosz Camada de sada: 1 neurnioz Funo de propagao: sigmides
Problema do XOR (OU Exclusivo)
fev-076
Definio do problema
-
4fev-077
Retas definidas pelos Perceptrons da camada oculta.
x1.x2 + x1.x2
Reta 1
Reta 2
fev-078
O valor dos nets dos neurnios da camada oculta para cada uma das 4 entradas.
Net 1
Net 2
-
5fev-079
O valor das sadas dos neurnios da camada oculta para cada uma das 4 entradas. Observe que agora o problema linearmente separvel.
n1
n2
fev-0710
A reta traada pelo neurnio da camada de sada.
Reta 3
-
6fev-0711
Observe que a reta deixou de ser reta, isso s possvel porque a transformao exercida pela camada escondida no linear.
A reta traada pelo neurnio da camada de sada projetada no domnio original de x1 e x2.
fev-0712
( )2
)(2
)(2
d2 (k)ykye(k)kE ==
)()1( kEkWi +
mtrica de aprendizagem - erro quadrtico
regra de aprendizagem
o mesmo da regra delta
A Regra Delta GeneralizadaA Regra Delta Generalizada
-
7fev-0713
o ajuste dos pesos da camada de sada
W0i
j
k
i
j
yi^
y^j
)()1(0 kEkW iki + 2))()((
21)( kykykE idii =
A Regra Delta GeneralizadaA Regra Delta Generalizada
fev-0714
)(/)()(
)()(
)()(
)()()( 0
0
00 ktodokwknet
knetky
kykE
kwkEkE
ki
i
i
i
i
i
ki
ii
=
=
)(2
))()((2)(2
))()(()()( 2 kekyky
kykyky
kykE
iidi
i
idi
i
i ===
)()1(0 kEkW iki +
i
j
k
i
j
yi^
0kiw
ydi
ei(k)
A Regra Delta GeneralizadaA Regra Delta Generalizada
-
8fev-0715
))(()(
))((()(
)( 0'0
0
knetfknetknetf
knetky
ii
i
i
i ==
)()(
))()(()()( 1
0
10
0
0
kykw
kykwkwknet
kki
hhi
ki
i ==
)())(()()1( 10'0 kyknetfkekw kiiki +entrada
Derivada da propagaoerro na camada de sada
A Regra Delta GeneralizadaA Regra Delta Generalizada
fev-0716
o ajuste dos pesos da 1a camada escondida
i
j
h
ii
jj
k1hkw
)()1(1 kEkWhk + = )(
21)( kEkE i
A Regra Delta GeneralizadaA Regra Delta Generalizada
-
9fev-0717
=
= ))()(
)()(
)()(
)()(
)()((
)()()( 1
1
1
1
1
0
01 kwknet
knetky
kyknet
knetky
kykE
kwkEkE
hk
h
h
h
h
i
i
i
i
i
hk
i
)()1(1 kEkWhk +
)())(())())(()(()1( 21'00'1 kyknetfkwknetfkekw hkkkiiihk + retropropagao ponderadado erro de cada neurnio da
camada de sada
entradaderivada da propagao
erro na camada de sadaderivada da propagao
peso da conexo
A Regra Delta GeneralizadaA Regra Delta Generalizada
fev-0718
Quanto ao perodo de ajustes dos pesos
por padro (incremental)
- os pesos so ajustados aps a apresentao de cada exemplo do conjunto de treinamento
- estvel se a taxa de aprendizado pequena
- rpida se o conjunto de treinamento grande e redundante
- requer menos memria
Estratgias de TreinamentoEstratgias de Treinamento
-
10
fev-0719
Quanto ao perodo de ajustes dos pesos
por ciclo (batch/epoch)
- os pesos so ajustados aps a apresentao de todos os exemplos do conjunto de treinamento
- geralmente mais estvel
- lenta se o conjunto de treinamento grande e redundante
- requer mais memria
Estratgias de TreinamentoEstratgias de Treinamento
fev-0720
Quanto ao perodo de ajustes dos pesos
por bloco
- combina as abordagens de ajuste por padro e por ciclo
- os pesos so ajustados aps a apresentao de k exemplos do conjunto de treinamento
Estratgias de TreinamentoEstratgias de Treinamento
-
11
fev-0721
Quanto ao critrio de parada
pelo nmero de ciclos de treinamento
- pra aps a execuo de k ciclos de treinamento
pelo valor do erro (ou mtrica usada)
- pra quando valor do erro menor ou igual a pelo critrio de validao
- pra quando o erro no conjunto de validao pra de decrescer
Estratgias de TreinamentoEstratgias de Treinamento
fev-0722
Quanto a seleo dos conjuntos de dados
treinamento e teste separados
- razo 70% e 30% treinamento, teste e validao (50%, 30% e 20%)
- razo 50%, 30% e 20 % treinamento e teste juntos
- poucos dados
Estratgias de TreinamentoEstratgias de Treinamento
-
12
fev-0723
Quanto a arquitetura da rede
nmero de camadas escondidas
- uma, duas ou mais?
nmero de elementos por camada
- menor / maior que o nmero de entradas?
funes de propagao
- linear, sigmoid ou tangente hiperblico?
infelizmente no existe uma regra que diz qual a melhor configurao de rede para um determinado problema
Estratgias de TreinamentoEstratgias de Treinamento
fev-0724
Velocidade de convergncia, mnimos locais e plats
taxa de aprendizado adaptativa
termo de momento
algoritmos alternativos
Demos: Steepest descent Variable learning rateMomentumToo large a learning rate
com momentosem momento
Dificuldades e Solues no TreinamentoDificuldades e Solues no Treinamento
-
13
fev-0725
Capacidade de aprendizagem
aumentar o nmero de elementos na camada escondida
aumentar o nmero de camadas escondidas
trocar / combinar diferentes funes de propagao
rever a representao usada para o problema (populao)
Dificuldades e Solues no TreinamentoDificuldades e Solues no Treinamento
fev-0726
Perda de generalizao overfitting
Demo: Generalization
generalizao ruim
boa generalizao
Dificuldades e Solues no TreinamentoDificuldades e Solues no Treinamento
-
14
fev-0727
Como evitar perda de generalizao?
pelo critrio da validao
reduzir (podar) a arquitetura da rede
adicionar rudo aos dados
ponto de parada
erro no treinamento
erro na validao
Dificuldades e Solues no TreinamentoDificuldades e Solues no Treinamento
fev-0728
Corte e Saturao
f (net) 0
corte
saturao1
0 net
f(net)
Dificuldades e Solues no TreinamentoDificuldades e Solues no Treinamento
-
15
fev-0729
Corte e Saturao
iniciar com pesos muito prximos de zero
normalizar e reduzir o valor absoluto das entradas
adicionar uma constante derivada
usar mtrica que ao infinito quando a derivada a 0
)1()(' yynetf =derivada da sigmoid
21)(' ynetf =derivada da tang. hiperb.
Dificuldades e Solues no TreinamentoDificuldades e Solues no Treinamento
fev-0730
z Gradient descent with momentum and adaptive learn rule backprop.
z Resilient backprop.z Powell-Beale conjugate
gradient backpropagationz Fletcher-Powell conjugate
gradient backpropagationz Gradient descent
backpropagation
z BFGS quasi-Newton backpropagation
z Levenberg-Marquardt backpropagation
z One-step secant backpropagation
z Scaled conjugate gradient backpropagation
z Polak-Ribiere conjugate gradient backpropagation
Algoritmos alternativosAlgoritmos alternativos