1998: Técnicas de Otimização Não-Linear Irrestrita para o Treinamento de Redes Neurais Artificiais

2,323 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,323
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

1998: Técnicas de Otimização Não-Linear Irrestrita para o Treinamento de Redes Neurais Artificiais

  1. 1. TÉCNICAS DE OTIMIZAÇÃO NÃO-LINEAR IRRESTRITA APLICADAS AO TREINAMENTO DE REDES NEURAIS DE MÚLTIPLAS CAMADAS IA 353 - Redes Neurais Leandro Nunes de Castro Fernando José Von Zuben
  2. 2. Tópicos <ul><li>Introdução (motivação) </li></ul><ul><li>Redes de múltiplas camadas </li></ul><ul><li>Algoritmo de retropropagação </li></ul><ul><li>Treinamento e critérios de parada </li></ul><ul><li>Superfícies de erro e mínimos locais </li></ul><ul><li>Abordagem (forma de análise) </li></ul><ul><li>Aproximação de funções </li></ul><ul><li>Algoritmos de otimização </li></ul><ul><li>Detalhes de implementação e variações </li></ul><ul><li>Taxas de aprendizagem globais </li></ul><ul><li>Algoritmos </li></ul><ul><li>Exemplos de aplicação </li></ul>
  3. 3. Motivação <ul><li>Estímulo inicial </li></ul><ul><li>Potencial de aplicação na análise e síntese de problemas não-lineares </li></ul><ul><li>Aplicação de redes MLP a problemas de mundo real </li></ul><ul><li>Utilização de técnicas de otimização não-linear irrestrita para o treinamento de redes do tipo MLP </li></ul>Garantia de convergência Taxa de convergência Teoria de otimização Aproximação de funções Teoria de análise numérica Áreas de atuação científica a serem abrangidas
  4. 4. Redes de múltiplas camadas MLP - Multilayer Perceptron
  5. 5. Abordagem matricial para o algoritmo de retro-propagação ( backpropagation )
  6. 6. Treinamento e critérios de parada <ul><li>Treinamento: </li></ul><ul><ul><li>Local ( on-line ): atualização imediatamente após a apresentação de cada amostra. </li></ul></ul><ul><ul><li>Em lote ( off-line , batch ): atualização após a apresentação de todo o conjunto de dados. </li></ul></ul><ul><li>Critérios de parada: </li></ul><ul><ul><li>|| || <  </li></ul></ul><ul><ul><li> J (  ) <  </li></ul></ul><ul><ul><li>J (  ) <  </li></ul></ul><ul><ul><li>Outras funções de custo </li></ul></ul>
  7. 7. Superfícies de erro e mínimos locais (I) Critérios de parada Mínimos locais Mínimo local Mínimo global
  8. 8. Série de Taylor
  9. 9. Aproximação em Taylor - Exemplo Expansão em Taylor para F (x) em torno do ponto x = 0: F 0 (x) F 4 (x) F 2 (x)
  10. 10. Mínimos <ul><li>Local: </li></ul><ul><li>O ponto x * é um mínimo local de F ( x ) </li></ul><ul><li>se existe um escalar  > 0, </li></ul><ul><li>tal que F ( x *) < F ( x +  x ) para todo </li></ul><ul><li> x tal que 0 < ||  x || <  . </li></ul><ul><li>Global: </li></ul><ul><li>O ponto x * é um mínimo global único </li></ul><ul><li>de F ( x ) se F ( x *) < F ( x +  x ) para </li></ul><ul><li>todo  x  0. </li></ul>Mínimo local Mínimo global
  11. 11. Derivada direcional <ul><li>Qual a direção cuja derivada é nula? </li></ul><ul><li>Qual a direção de maior inclinação (maior crescimento da função)? </li></ul>Primeira derivada direcional : Segunda derivada direcional :
  12. 12. Otimalidade & Hessiana (caso quadrático) Condições de otimalidade : <ul><li>Primeira ordem: ( Ponto estacionário) </li></ul><ul><li>Segunda ordem: ( Hessiana semi-definida positiva) </li></ul>Auto-sistema da Hessiana : Z 1 (  min ) Z 2 (  max )
  13. 13. Hessiana - Exemplos
  14. 14. Superfícies de erro e mínimos locais (II) Função a ser aproximada Rede para aproximação
  15. 15. Superfícies de erro e mínimos locais (III) Superfície do erro quadrático e seu contorno em relação aos pesos v 11 e w 11 Vales Platô
  16. 16. Superfícies de erro e mínimos locais (IV) Superfície do erro quadrático e seu contorno em relação aos limiares v 01 e w 01 Mínimo global Mínimo local
  17. 17. Abordagem <ul><li>Representar o treinamento sob a forma de aproximação de funções minimização de um funcional de erro ( J ) </li></ul><ul><li>Aproximação quadrática do funcional J (Taylor) </li></ul><ul><li>Objetivo: </li></ul><ul><li>Processo iterativo de solução: </li></ul>vetor gradiente matriz hessiana
  18. 18. <ul><li>Aproximar: g (.): X   m   r </li></ul><ul><li>Modelo: : X   P   r , onde    P ( P finito) </li></ul><ul><li>Dados: amostrados da forma </li></ul><ul><li> *   P tal que dist( g (.),   )    dist( g (.),   ), para todo    P </li></ul><ul><li>Nível de aproximação: </li></ul><ul><li>Otimização: </li></ul><ul><li>Erros: </li></ul><ul><ul><li>representação ( bias ) </li></ul></ul><ul><ul><li>generalização ( variância ) </li></ul></ul><ul><ul><li>otimização </li></ul></ul>Aproximação de funções
  19. 19. Algoritmos de otimização <ul><li>Algoritmo padrão (BP) </li></ul><ul><li>Método do gradiente (GRAD) </li></ul><ul><li>Método de Newton (MN) </li></ul><ul><li>Método de Levenberg-Marquardt (LM) </li></ul><ul><li>Método do gradiente conjugado (GC) </li></ul><ul><li>Método de Fletcher & Reeves (FR) </li></ul><ul><li>Método de Polak-Ribère (PR) </li></ul><ul><li>Gradiente conjugado escalonado (SCG) </li></ul><ul><li>Davidon-Fletcher-Powell (DFP) </li></ul><ul><li>Broyden-Fletcher-Goldfarb-Shanno (BFGS) </li></ul><ul><li>One-Step Secant (OSS) </li></ul>1 a ordem 2 a ordem 2 a ordem (grad. conjugado) 2 a ordem (quase-Newton) 2 a ordem
  20. 20. Algoritmos de otimização
  21. 21. <ul><li>Algoritmo padrão (BP) </li></ul><ul><ul><li>passo fixo </li></ul></ul>Métodos de 1 a ordem (I) <ul><li>Método do gradiente (GRAD) </li></ul><ul><ul><li>Busca simples do passo </li></ul></ul>momento
  22. 22. Métodos de 1 a ordem (II) Exemplo 1: Problema XOR (OU-exclusivo) <ul><li>Rede: [2-10-1] </li></ul><ul><li>SSE: 0.01 </li></ul>
  23. 23. Métodos de 1 a ordem (III) Algoritmo padrão com e sem momento Método do gradiente Exemplo 1: Erro
  24. 24. <ul><li>Newton modificado (NM) </li></ul><ul><li>Levenberg-Marquardt (LM) </li></ul>Métodos de 2 a ordem (I) Positivando a Hessiana Gauss-Newton
  25. 25. Métodos de 2 a ordem (II) Exemplo 1: Levenberg-Marquardt Erro
  26. 26. <ul><li>Davidon-Fletcher-Powell (DFP) </li></ul><ul><li>Broyden-Fletcher-Goldfarb-Shanno (BFGS) </li></ul>Métodos de 2 a ordem (III) Quase-Newton Aproximação iterativa da inversa da Hessiana:
  27. 27. Métodos de 2 a ordem (IV) Exemplo 1: Quase-Newton DFP BFGS Erro
  28. 28. <ul><li>Secantes de um Passo (OSS) </li></ul>Métodos de 2 a ordem (V) Exemplo 1: Erro
  29. 29. <ul><li>Polak-Ribière (PR) </li></ul><ul><li>Fletcher & Reeves (FR) </li></ul>Métodos de 2 a ordem (VI) Gradiente Conjugado Passo  i
  30. 30. Métodos de 2 a ordem (VII) PR FR Exemplo 1: Erro
  31. 31. <ul><li>Gradiente conjugado escalonado modificado </li></ul><ul><ul><li>evita a busca unidimensional através de um escalonamento do passo de ajuste  [M OLLER ,1993] </li></ul></ul><ul><ul><li>modificado: cálculo exato da informação de segunda ordem [P EARLMUTTER ,1994] </li></ul></ul>Métodos de 2 a ordem (VIII) Exemplo 1: Erro
  32. 32. Complexidade Computacional P : graus de liberdade do modelo l : número de unidades na N : número de amostras camada intermediária
  33. 33. Detalhes de implementação/Variações <ul><li>Os métodos de segunda ordem (QN & GC) foram projetados para problemas quadráticos </li></ul><ul><li>Momento de segunda ordem: </li></ul><ul><li>Variação do ganho da função de ativação: </li></ul><ul><li>Normalização dos dados de entrada: </li></ul>Busca unidimensional Reinicialização do algoritmo  tanh(  x )
  34. 34. <ul><li>Minimizar: </li></ul><ul><li>Mínimo: f (2, 1) = 0 </li></ul><ul><li>Ponto inicial: ( x 1 , x 2 ) = (0, 0) </li></ul><ul><li>Estratégias: </li></ul><ul><ul><li>método do gradiente (GRAD) </li></ul></ul><ul><ul><li>método de Newton (MN) </li></ul></ul><ul><ul><li>método de Davidon-Fletcher-Powell (DFP) </li></ul></ul><ul><ul><li>método de gradiente conjugado (GC) </li></ul></ul>Algoritmos de otimização não-linear irrestrita Exemplo 2: Propriedades de convergência
  35. 35. Algoritmos de otimização (139) GRAD (1) MN (9) GC (13) DFP
  36. 36. <ul><li>Determinação da taxa </li></ul><ul><li>Busca inexata </li></ul><ul><ul><li>simples </li></ul></ul>Taxas de Aprendizagem Globais (I) <ul><li>Busca exata </li></ul><ul><ul><li>método de Fibonacci </li></ul></ul><ul><ul><li>método da Seção Áurea </li></ul></ul><ul><ul><li>método da Falsa Posição </li></ul></ul>
  37. 37. <ul><li>Garantia de ajustes minimizantes </li></ul><ul><li>Encontrar um valor ótimo para  i  (0, ] </li></ul><ul><li>Subproblema: J (  i +  i d i ) </li></ul><ul><li>Busca unidimensional: d   P fixo </li></ul>Taxas de Aprendizagem Globais (II)
  38. 38. Algoritmos <ul><li>Busca Simples </li></ul><ul><li>Falsa posição </li></ul>
  39. 39. Taxas de Aprendizagem Globais (III) Exemplo 3: Busca simples Alfa
  40. 40. Algoritmos - Seção Áurea
  41. 41. Taxas de Aprendizagem Globais (IV) Exemplo 4: Redução do intervalo de incertezas <ul><li>Problema: min f ( x i +  i d i ) s.a.   (0, 1] </li></ul><ul><li>Onde: </li></ul><ul><li>Mínimo: f (2, 1) = 0 </li></ul><ul><li>Ponto inicial: ( x 1 , x 2 ) = (0, 0) e d = [1, -1] </li></ul><ul><li>Estratégias: </li></ul><ul><ul><li>método da Seção Áurea (GOLD) </li></ul></ul><ul><ul><li>método de Fibonacci (FIB) </li></ul></ul><ul><ul><li>método da Falsa Posição (FP) </li></ul></ul>
  42. 42. Taxas de Aprendizagem Globais (V) Exemplo 4: (20) Fibonacci (20) Seção áurea (6) Falsa posição
  43. 43. Exemplo Atualização em lote: 625 amostras do Exercício 3
  44. 44. Exemplo - exercício 3 Parâmetros: nh = 10; minerr = 0.64; maxep = 1000; val = 0.5; dn = 0.001; cm = 0.9;
  45. 45. Exemplo - exercício 3
  46. 46. Exemplo - exercício 3 Comportamento do SSE (soma dos erros quadráticos)
  47. 47. <ul><li>XOR - paridade </li></ul><ul><ul><li>k = 2; N = 4 e m = 1 </li></ul></ul><ul><li>COD/DEC - paridade </li></ul><ul><ul><li>k = 10; N = 10 e m = 10 </li></ul></ul><ul><li>sen( x )  cos(2 x ) - aproximação de funções </li></ul><ul><ul><li>k = 1; N = 21 e m = 1 </li></ul></ul><ul><li>ESP - aproximação de funções </li></ul><ul><ul><li>k = 2; N = 75 e m = 5 </li></ul></ul><ul><li>SOJA - aproximação de funções </li></ul><ul><ul><li>k = 36; N = 144 e m = 1 </li></ul></ul><ul><li>IRIS - classificação </li></ul><ul><ul><li>k = 4; N = 150 e m = 1 </li></ul></ul><ul><li>ECOLI - classificação </li></ul><ul><ul><li>k = 7; N = 336 e m = 1 </li></ul></ul><ul><li>GLASS - classificação </li></ul><ul><ul><li>k = 10; N = 214 e m = 1 </li></ul></ul>Problemas Abordados
  48. 48. <ul><li>Algoritmo padrão (BP) </li></ul><ul><li>Método do gradiente (GRAD) </li></ul><ul><li>Fletcher & Reeves (FR) </li></ul><ul><li>Pollak-Ribière (PR) </li></ul><ul><li>Gradiente conjugado escalonado modificado (SCGM) </li></ul><ul><li>One step secant (OSS) </li></ul><ul><li>Davidon-Fletcher-Powell (DFP) </li></ul><ul><li>Broyden-Fletcher-Goldfarb-Shanno (BFGS) </li></ul>Algoritmos Implementados
  49. 49. Velocidade de Convergência (I) Exemplo 5: Problema XOR (OU-exclusivo)
  50. 50. Velocidade de Convergência (II) Exemplo 6: Problema sen( x ).cos(2 x )
  51. 51. Velocidade de Convergência (III) Exemplo 7: Problema GLASS
  52. 52. Velocidade de Convergência (IV) Estatísticas: Épocas Tempo de processamento Esforço computacional ( flops )
  53. 53. Referências (I) <ul><li>Barnard, E. , “Optimization for Training Neural Nets”, IEEE Trans. on Neural Networks , vol. 3, n° 2, 1992. </li></ul><ul><li>Battiti, R., “First- and Second-Order Methods for Learning: Between Steepest Descent and Newton’s Method”, Neural Computation , vol. 4, pp. 141-166, 1992. </li></ul><ul><li>Battiti, R., “Learning with First, Second, and no Derivatives: A Case Study in High Energy Physics”, Neurocomputing , NEUCOM 270, vol. 6, pp. 181-206, 1994, URL: ftp:// ftp.cis.ohio-state.edu/pub/neuroprose/ battiti.neuro-hep.ps.Z. </li></ul><ul><li>Castro, L.N. , “Análise e Síntese de Estratégias de Aprendizagem para redes Neurais Artificiais”, Tese de Mestrado, FEEC/UNICAMP, Outubro de 1998. </li></ul><ul><li>Fahlman, S.E., “An Empirical Study of Learning Speed in Back-Propagation Networks”, Technical Report , September 1988, URL: ftp://archive.cis.ohio-state.edu/pub/neuroprose/ fahlman.quickprop-tr.ps.Z </li></ul><ul><li>Fiesler, E., “Comparing Parameterless Learning Rate Adaptation Methods,” Proceedings of the ICNN’97 , pp. 1082-1087, 1997. </li></ul><ul><li>Finschi, L. , “An Implementation of the Levenberg-Marquardt Algorithm”, Technical Report , April 1996, URL: http://www.ifor.math.ethz.ch/staff/finschi/Papers/ LevMar.ps.gz. </li></ul><ul><li>Groot, C. de & Würtz, D. , “Plain Backpropagation and Advanced Optimization Algorithms: A Comparative Study”, NEUCOM 291, vol. 6, pp.153-161, 1994. </li></ul>
  54. 54. <ul><li>Haygan, M.T. , “Training Feedforward Networks with the Marquardt Algorithm”, IEEE Trans. on Neural Networks , vol. 5, n° 6, pp. 989-993, 1994. </li></ul><ul><li>Jacobs, R.A. , “Increased Rates of Convergence Through Learning Rate Adaptation”, Neural Networks , vol. 1, pp. 295-307, 1988, URL: http://www.cs.umass.edu/Dienst/UI/2.0/Describe/ncstrl.umassa_cs %2fUM-CS-1987-117 </li></ul><ul><li>Jondarr, C.G.H. , “Back Propagation Family Album”, Technical Report C/TR96-5 , 1996, URL: ftp://ftp.mpce.mq.edu.au/pub/comp/techreports/96C005.gibb.ps. </li></ul><ul><li>Joost, M. & Schiffman, W. , “Speeding Up Backpropagation Algorithms by Using Cross-Entropy Combined With Pattern Normalization”, International Journal of Uncertainty, Fuzzyness and Knowledge-Based Systems , 1993, URL: http://www.uni-koblenz.de/~schiff/ cenprop_eng.ps.gz </li></ul><ul><li>Moller, M.F., “A Scaled Conjugate Gradient Algorithm for Fast Supervised Learning”, Neural Networks , vol. 6, pp. 525-533, 1993. </li></ul><ul><li>Pearlmutter, B.A., “Fast Exact Calculation by the Hessian”, Neural Computation , vol. 6, pp. 147-160, 1994, URL: ftp://ftp.cis.ohio-state.edu/pub/neuroprose/pearlmutter. hessian.ps.Z. </li></ul>Referências (II)
  55. 55. <ul><li>Shepherd, A.J. , “Second-Order Methods for Neural Networks – Fast and Reliable Methods for Multi-Layer Perceptrons”, Springer, 1997. </li></ul><ul><li>Shewchuk, J.R ., “An Introduction to the Conjugate Gradient Method Without the Agonizing Pain”, Technical Report, 1994, URL: http://www.cs.cmu.edu/ afs/cs/project/quake/public/papers/painless-conjugate-gradient.ps. </li></ul><ul><li>Schiffman, W., Joost, M., & Werner, R. , “Optimization of the Backpropagation Algorithm for Training Multilayer Perceptrons”, Technical Report , 1994, URL: ftp://archive.cis.ohio-state.edu/pub/neuroprose/schiff. bp_speedup.ps.Z. </li></ul><ul><li>Stäger, F., & Agarwal, M. , “Three Methods to Speed up the Training of Feedforward and Feedback Perceptrons”, Neural Networks , vol. 10, n° 8, pp. 1435-1443, 1997. </li></ul><ul><li>Van Der Smagt, P., P , “Minimization Methods for Training Feedforward Neural networks,” Neural Networks, vol 1, n° 7, 1994, URL: http://www.op.dlr.de/~smagt/ papers/SmaTB92.ps.gz </li></ul><ul><li>Von Zuben, F.J. , “Modelos Paramétricos e Não-Paramétricos de Redes neurais Artificiais e Aplicações”, Tese de Doutorado , Faculdade de Engenharia Elétrica, Unicamp, 1996. </li></ul>Referências (III)

×