2014: Introdução às Redes Neurais Artificiais

  • 393 views
Uploaded on

Curso introdutório de Redes Neurais Artificiais oferecido no Programa de Pós-Graduação em Engenharia Elétrica da Universidade Mackenzie.

Curso introdutório de Redes Neurais Artificiais oferecido no Programa de Pós-Graduação em Engenharia Elétrica da Universidade Mackenzie.

More in: Engineering
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
393
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
30
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 1 INTRODUÇÃO ÀS REDES NEURAIS ARTIFICIAIS Este material foi desenvolvido com base na seguinte referência bibliográfica: DE CASTRO, L. N. Fundamentals of Natural Computing: Basic Concepts, Algorithms, and Applications. Capítulo 4, CRC Press, 2006. Estes slides foram gerados em 2002 em conjunto com o Prof. Fernando José Von Zuben da Unicamp, a quem atribuo os devidos créditos e agradecimentos. Versões mais atuais do material são utilizadas em disciplinas de pós-graduação do Programa de Pós-Graduação em Engenharia Elétrica (PPGEE) da Universidade Presbiteriana Mackenzie e da Pós-Graduação da FEEC/Unicamp. O uso deste material para fins acadêmicos é livre e gratuito, desde que sejam mantidas as informações originais de autoria. A sugestão de citação é: “L. N. de Castro (2014), Introdução às Redes Neurais Artificiais, Material de Apoio do Curso de Redes Neurais do PPGEE/Universidade Mackenzie, Disponível online em http://www.slideshare.net/lndecastro, p. 464.” As referências citadas e não listadas podem ser encontradas no livro supracitado. Outros cursos do autor, como “Fundamentos de Computação Natural” e “A Nova Escola do Empreendedorismo” estão disponíveis no mesmo Slideshare. Mais informações sobre o tema podem ser encontradas no site do Laboratório de Computação Natural (LCoN): http://www.mackenzie.br/lcon.html.
  • 2. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 2 Sumário 1. Introdução as Redes Neurais Artificiais ............................................................. 9 2. Nomenclatura dos Dados.................................................................................. 11 2.1. Normalização dos Dados de Entrada ........................................................ 14 3. Principais Tarefas em Aprendizagem de Máquina ........................................... 16 3.1. Predição.................................................................................................... 17 3.2. Classificação............................................................................................. 18 3.3. Agrupamento ............................................................................................ 24 3.4. Exemplos de Áreas de Aplicação ............................................................. 26 4. Alguns Conceitos em Estatística....................................................................... 27 4.1. Conceitos Básicos..................................................................................... 28 4.2. Medidas Resumo ...................................................................................... 30 4.3. A Curva Normal ....................................................................................... 31 4.4. Testes de Diferenças entre Médias ........................................................... 33 5. Base Biológica das RNAs................................................................................. 41 6. O Sistema Nervoso........................................................................................... 42 6.1. Níveis de Organização no Sistema Nervoso ............................................. 44 6.2. Base Biológica e Física da Aprendizagem e Memória.............................. 55 7. Projeto de Redes Neurais Artificiais................................................................. 59 7.1. Neurônios Artificiais ................................................................................ 66
  • 3. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 3 7.2. Arquiteturas de Rede ................................................................................ 80 7.3. Paradigmas de Aprendizagem................................................................... 88 8. A Regra de Hebb ............................................................................................ 101 9. O Perceptron Simples ..................................................................................... 104 9.1. Perceptron Simples para Classificação de Padrões................................. 105 9.2. Exemplo de Aplicação e Motivação Geométrica.................................... 108 9.3. Perceptron com Múltiplos Neurônios ..................................................... 110 9.4. Exemplo de Aplicação: Reconhecimento de Caracteres......................... 112 9.5. Aspectos Práticos do Treinamento do Perceptron................................... 113 10. Adaline ........................................................................................................... 115 10.1. A Regra Delta......................................................................................... 115 10.2. Superfícies de Erro ................................................................................. 118 11. Redes Neurais Competitivas: Introdução........................................................ 121 11.1. Quantização Vetorial .............................................................................. 123 12. Rede Neural Competitiva: Algoritmo Básico ................................................. 125 13. Mapas Auto-Organizáveis de Kohonen.......................................................... 130 13.1. Fundamentos........................................................................................... 130 13.2. Projeto de Mapas Auto-Organizáveis ..................................................... 135 13.3. Fase Competitiva .................................................................................... 141 13.4. Fase Cooperativa .................................................................................... 144 13.5. Fase Adaptativa ...................................................................................... 148
  • 4. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 4 14. Exemplos de Aplicação .................................................................................. 151 14.1. Agrupamento de dados (Clusterização) .................................................. 151 14.2. O Problema da Identificação dos grupos ................................................ 154 14.3. Ordenamento de pontos em espaços multidimensionais......................... 156 14.4. Problemas Combinatoriais (Caixeiro Viajante) ...................................... 157 14.5. Questões a serem investigadas................................................................ 158 15. Quantização Vetorial Supervisionada............................................................. 159 16. Referências sobre Redes Auto-Organizadas................................................... 160 17. Introdução às Redes de Hopfield.................................................................... 162 18. Fundamentos de Sistemas Dinâmicos Não Lineares....................................... 164 18.1. Noções Elementares sobre Estabilidade ................................................. 164 18.2. Sistemas Dinâmicos................................................................................ 166 18.3. Sistemas Não lineares Multidimensionais .............................................. 169 18.4. Análise de Sistemas Não lineares ........................................................... 172 18.5. Exemplos de Comportamentos Dinâmicos Não lineares ........................ 174 18.6. Estado Estacionário em Sistemas Não lineares....................................... 177 19. Redes Neurais Recorrentes como Sistemas Dinâmicos Não lineares ............. 194 19.1. Modelos Derivados da Física Estatística ................................................ 196 19.2. Modelo Aditivo de Neurônio.................................................................. 198 19.3. Adaptação para a Rede de Hopfield........................................................ 200 20. Rede de Hopfield Discreta.............................................................................. 206
  • 5. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 5 20.1. Características Operacionais da Rede de Hopfield ................................. 209 20.2. Fase 1: Armazenagem de Padrões (memórias fundamentais)................. 211 20.3. Fase 2: Recuperação dos Padrões (estados de equilíbrio estáveis) ......... 212 20.4. Resumo................................................................................................... 213 20.5. A Emergência de Memória Associativa.................................................. 214 20.6. Atratores Espúrios .................................................................................. 217 20.7. Capacidade de Memória da Rede de Hopfield........................................ 218 20.8. Regra da Projeção................................................................................... 221 21. Referências sobre Redes de Hopfield ............................................................. 222 22. Introdução às Redes RBF ............................................................................... 225 23. Regressão........................................................................................................ 227 23.1. Modelos Lineares de Regressão.............................................................. 231 23.2. Interpolação ............................................................................................ 234 23.3. Redes Neurais para Interpolação ............................................................ 236 23.4. A Função de Base Radial........................................................................ 243 24. Teoria de Regularização ................................................................................. 246 24.1. Aprendizagem Supervisionada como Problema Mal-Comportado......... 246 24.2. Regularização ......................................................................................... 249 24.3. Redes Regularizadoras............................................................................ 254 25. Redes RBF Generalizadas .............................................................................. 257 25.1. Aproximação Universal das Redes RBF................................................. 261
  • 6. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 6 25.2. Maldição da Dimensionalidade............................................................... 262 25.3. Propriedades das Redes RBF.................................................................. 263 26. Treinamento de Redes RBF Generalizadas .................................................... 264 26.1. Seleção de Centros por Auto-Organização ............................................. 266 26.2. Treinamento Supervisionado da Rede RBF............................................ 268 26.3. Um Exemplo de Aproximação Usando Redes RBF ............................... 270 27. Referências sobre Redes RBF ........................................................................ 272 28. Introdução às Redes MLP............................................................................... 275 29. Derivação do Algoritmo de Backpropagation ................................................ 280 29.1. Capacidade de Aproximação Universal.................................................. 287 29.2. Exemplo de Aproximação Universal ...................................................... 291 29.3. Virtudes e Limitações das Redes MLP................................................... 301 30. Aspectos Práticos do Treinamento de Redes MLP......................................... 314 30.1. Treinamento Local ou em Lote............................................................... 314 30.2. Critérios de Parada.................................................................................. 317 30.3. Arquitetura da Rede................................................................................ 321 30.4. Validação Cruzada.................................................................................. 323 30.5. Normalização dos Dados de Entrada ...................................................... 328 30.6. Inicialização dos Vetores de Pesos e Limiares (Bias)............................. 329 31. Referências sobre Redes MLP........................................................................ 334
  • 7. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 7 32. Técnicas de Otimização Não Linear Irrestrita para o Treinamento de Redes MLP........................................................................................................................ 336 32.1. Série de Taylor e Derivadas de Primeira e Segunda Ordem ................... 339 32.2. Exemplo de aproximação (expansão) em série de Taylor:...................... 340 33. Aproximação de Funções ............................................................................... 343 33.1. Avaliação do Nível de Aproximação...................................................... 344 34. Técnicas de Otimização Não linear Irrestrita.................................................. 347 34.1. Métodos Sem Diferenciação................................................................... 353 34.2. Métodos de Primeira Ordem................................................................... 353 34.3. Métodos de Segunda Ordem................................................................... 358 35. Busca Iterativa da Taxa de Aprendizagem ..................................................... 381 35.1. Busca Simples do Passo.......................................................................... 382 35.2. Método de Fibonacci .............................................................................. 384 35.3. Método da Seção Áurea.......................................................................... 388 35.4. Método da Falsa Posição ........................................................................ 390 36. Comparação de Desempenho ......................................................................... 391 36.1. Desempenho: Velocidade de Convergência............................................ 392 36.2. Capacidade de Generalização ................................................................. 395 37. Referências sobre Otimização Não Linear para Treinamento de Redes MLP 398 38. Máquinas de Vetores Suporte......................................................................... 400 39. Otimização e Produto Interno Kernel ............................................................. 402
  • 8. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 8 39.1. Conceitos de Otimização ........................................................................ 402 39.2. Produto Interno Kernel ........................................................................... 411 40. Teoria do Aprendizado Estatístico.................................................................. 419 40.1. Dimensão VC ......................................................................................... 426 41. O Hiperplano Ótimo....................................................................................... 429 41.1. Hiperplano Ótimo para Classes Linearmente Separáveis ....................... 429 41.2. Hiperplano Ótimo para Classes Não linearmente Separáveis ................. 434 42. SVMs para Classificação................................................................................ 439 42.1. Caso 1: Classes Linearmente Separáveis ................................................ 441 42.2. Caso 2: Classes Não linearmente Separáveis.......................................... 451 42.3. Discussão................................................................................................ 461 43. Referências sobre SVM.................................................................................. 464
  • 9. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 9 1. Introdução as Redes Neurais Artificiais  A capacidade de aprendizagem ou adaptação (a estímulos recebidos do ambiente) das redes neurais biológicas (RNBs) é uma de suas mais importantes e marcantes características.  Para que uma RNB aprenda é preciso que haja um processo de estimulação externa, ou seja, é preciso que sejam apresentados exemplos à rede de forma que ela extraia informação destes exemplos e construa seu ‘modelo interno’ do ambiente.  O princípio de funcionamento das redes neurais artificiais (RNAs) é similar ao das redes neurais biológicas: o Dado um conjunto de exemplos de entrada, são feitos ajustes nos parâmetros livres da rede de forma que ela crie um modelo interno capaz de representar os exemplos de entrada adequadamente.
  • 10. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 10 o O processo de apresentação de dados de entrada e ajuste de parâmetros da rede é denominado de aprendizagem ou treinamento. o Este tipo de aprendizagem é conhecido, portanto, como aprendizagem a partir de dados (learning from data).  O uso de uma RNA para a solução de um dado problema envolve duas fases: treinamento e aplicação.  Assim como no caso das redes biológicas, a aprendizagem de um determinado conteúdo leva a uma possibilidade de aplicação desta rede a um novo problema, similar ao aprendido, mas ainda desconhecido. o Este processo de uso da rede para avaliar novos dados é denominado de aplicação da rede, e a qualidade (ou desempenho) da rede quando aplicada a dados não usados no treinamento (novos dados) é conhecida como capacidade de generalização.
  • 11. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 11 o A capacidade de generalização da rede é uma de suas características essenciais, pois ela permite que uma RNA seja treinada com um conjunto conhecido de dados de entrada e posteriormente aplicada na avaliação de novos dados. o Uma rede com baixa capacidade de generalização pode não ter utilidade prática. Por exemplo, quando os dados de treinamento possuem muito ruído. 2. Nomenclatura dos Dados  Os conjuntos de dados ou exemplos usados para o treinamento de redes neurais são normalmente denominados por dados de treinamento ou dados de entrada.  Por exemplo, a Tabela 1 apresenta parte de uma base de dados (cadastros) para solicitação de crédito (financiamento) para pagamento em 36 meses.
  • 12. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 12 Tabela 1: Solicitação de crédito para pagamento em 36 meses. Salário R$ Idade Estado civil Cartão de crédito Imóveis Veículos Nro de filhos Possui cheque especial Financiamento Pretendido R$ Crédito autorizado 350 21 Sol. 0 0 0 0 Sim 10.000 Não 3700 52 Cas. 1 1 2 2 Sim 7.000 Sim 1200 26 Cas. 1 0 1 1 Não 10.000 Não 700 25 Sol. 0 0 0 0 Não 5.000 Sim 8500 50 Cas. 2 1 2 2 Sim 40.000 Sim 1800 27 Sol. 1 0 1 0 Sim 20.000 Não 350 20 Sol. 0 0 0 0 Não 10.000 Não  A nomenclatura usada para descrever cada item desta tabela depende, dentre outros fatores, da área de pesquisa (disciplina).  Cada linha desta tabela corresponde a um registro, amostra, exemplo, instância, objeto, vetor de entradas ou padrão (de entrada ou treinamento). Em mineração
  • 13. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 13 de dados a nomenclatura mais comum é registro, amostra, objeto ou instância. Em RNAs é mais usual denominar de amostra, padrão de treinamento, padrão de entrada ou vetor de entradas.  Cada coluna corresponde a um atributo, característica, entrada ou variável. Em mineração de dados normalmente denominamos as colunas por atributo ou variáveis independentes, enquanto em estatística normalmente denominamos por características (features). Em RNAs geralmente chamamos as colunas de entradas ou variáveis de entrada, pois cada atributo corresponde a uma das entradas da rede neural artificial.  Nota: a representação dos padrões nas linhas é uma convenção da literatura, mas os padrões também poderiam estar dispostos nas colunas da matriz, desde que isso seja explicitado.
  • 14. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 14  Um conjunto de dados pode conter objetos com comportamento distinto do comportamento geral dos dados ou de seus modelos. Estes objetos são denominados outliers. o Entretanto, há aplicações, como detecção de fraudes, onde eventos raros podem ser mais importantes que os eventos comuns. o Há técnicas específicas para a identificação de outliers.  Neste curso usaremos a nomenclatura descrita acima de forma consistente, mas enfatizando quase sempre a nomenclatura da área de RNAs. 2.1. Normalização dos Dados de Entrada  Normalização é um processo de transformação dos dados que objetiva torná-los mais apropriados ao processo de treinamento da rede.  A necessidade de normalização dos dados para o treinamento de RNAs pode ser consequência de diversos fatores como, por exemplo, evitar a saturação dos
  • 15. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 15 neurônios e fazer com que cada atributo dos dados de entrada tenha o mesmo domínio.  Um atributo é normalizado escalonando seus valores de forma que eles pertençam a um dado intervalo, por exemplo, [1, 1] ou [0, 1].  Vamos estudar aqui dois tipos de normalização: a) normalização max-min; e b) normalização pelo escore-z. Normalização Max-Min  A normalização max-min realiza uma transformação linear nos dados originais.  Assuma que maxa e mina são, respectivamente, os valores máximo e mínimo de um determinado atributo a.  A normalização max-min mapeia um valor a em um valor a’ no domínio [novo_mina, novo_maxa] da seguinte forma: aaa aa a novonovonovo a a min_)min_max_( minmax min '    
  • 16. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 16 Normalização pelo escore-z  Na normalização pelo escore-z, também conhecida por normalização de média zero, os valores de um atributo a são normalizados baseado na média e desvio padrão de a da seguinte forma: a’ = (a ā)/a, onde ā é a média e a é o desvio padrão de a.  Este método de normalização é útil quando os valores máximo e mínimo reais de um atributo são desconhecidos, ou quando há outliers dominando a normalização max-min. 3. Principais Tarefas em Aprendizagem de Máquina  Dado um conjunto de treinamento há duas principais tarefas que podem ser executadas por uma RNA: predição (classificação e estimação) e agrupamento.
  • 17. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 17 3.1. Predição  Predição é uma terminologia usada para se referir à construção e uso de um modelo para avaliar a classe de uma amostra não rotulada, ou para estimar o valor de um atributo de uma dada amostra. o No primeiro caso denominamos a tarefa de classificação; e o No segundo caso denominamos de regressão (em estatística) ou simplesmente estimação.  Sob esta perspectiva, classificação e regressão constituem os dois principais tipos de problemas de predição, onde a classificação é usada para predizer valores nominais ou discretos, enquanto a regressão é usada para predizer valores contínuos ou ordinais.  Exemplos: classificação (o crédito será oferecido ou não?); regressão (qual o valor do crédito a ser oferecido?).
  • 18. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 18 3.2. Classificação  O processo de classificação, assim como o uso das RNAs, possui duas etapas: o Na primeira etapa a rede neural é treinada, tal que ela se torne capaz de descrever e distinguir um conjunto pré-determinado de classes. A RNA é treinada usando um conjunto de treinamento rotulado, ou seja, para cada vetor de entradas a saída desejada é conhecida. Isso implica na disponibilidade de pares {(xi,ci)}i = 1,...,N, onde xi e ci i, são os vetores de entrada e as respectivas saídas desejadas. o Uma vez que a rede neural está treinada a classificar os dados de treinamento, é preciso avaliar seu desempenho quando aplicada a dados não usados no processo de treinamento da rede, conhecidos como dados de teste. O desempenho da rede quando aplicada a dados de teste oferece uma estimativa de sua capacidade de generalização.
  • 19. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 19  Como os rótulos das classes dos dados de treinamento são conhecidos, este processo é denominado de treinamento supervisionado (ou aprendizagem supervisionada).  Exemplos de tarefas de classificação: identificação de spams, classificação de objetos, atribuição de crédito, etc. Aprendizagem Supervisionada como Aproximação de Funções  O processo de treinamento supervisionado pode sempre ser entendido como um problema geral de aproximação de funções.  Considere o problema de aproximar uma função g(.): X  m  r por um modelo de aproximação representado pela função ĝ(,): X  P  r , onde   P (P finito) é um vetor de parâmetros.  O problema geral de aproximação pode ser formalmente apresentado como segue: o Considere a função g(): X  m  r , que mapeia pontos de um subespaço compacto X  m em pontos de um subespaço compacto g[X]  r .
  • 20. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 20 o Com base nos pares de vetores de entrada saída {(xi,si)}i = 1,...,N, amostrados a partir do mapeamento determinístico definido pela função g na forma: si = g(xi)+i, i = 1,...,N, e dado o modelo de aproximação ĝ(,): XP  r , determine o vetor de parâmetros *  P tal que dist(g(.), ĝ(,*))  dist(g(.), ĝ(,)), para todo   P , onde o operador dist(,) mede a distância entre duas funções definidas no espaço X. o O vetor l expressa o erro no processo de amostragem, sendo assumido ser de média zero e variância fixa. o A solução deste problema, se existir, é denominada a melhor aproximação e depende diretamente da classe de funções a qual ĝ pertence.  Em problemas de aproximação utilizando um número finito de dados amostrados e definido um modelo de aproximação ĝ(,), a distância entre a função a ser aproximada e sua aproximação dist(g(),ĝ(,)) é uma função apenas do vetor de parâmetros   P .
  • 21. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 21  Tomando a norma euclidiana como a medida de distância, produz-se a seguinte expressão:     N l gg N J 1 2 )θ,(ˆ)( 1 )θ( xx (1)  O funcional J: P   é denominado superfície de erro do problema de aproximação, pois pode ser interpretado como uma hipersuperfície localizada “acima” do espaço de parâmetros P , sendo que para cada ponto   P corresponde uma “altura” J().  O termo funcional corresponde a toda função f : X  n  , e por isso o problema de minimizar J() torna-se um problema de minimização funcional.  Dada a superfície de erro, o problema de aproximação passa a ser um problema de otimização cuja solução é o vetor *  P que minimiza J(), ou seja, )θ(minarg*θ θ J P   (2)
  • 22. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 22  Durante o processo de aproximação da função g(.) pela função ĝ(,) fornecida pela rede neural, devem ser considerados três tipos de erros:  Erro de Representação: primeiro consideremos o caso em que todo o conjunto amostral está disponível {(xi,si)}i = 1,...,. Assuma, também, que dado {(xi,si)}i = 1,...,, é possível encontrar um conjunto de parâmetros ótimo *. Neste caso, o erro vai depender da adequação e do nível de flexibilidade do modelo de aproximação ĝ(,). Este erro é também conhecido como erro de aproximação, ou efeito bias.  Erro de Generalização: em aplicações de mundo real, somente um número finito de amostras está disponível ou pode ser usado simultaneamente. Além disso, os dados podem conter ruído. Os valores de g para os quais nenhuma amostra está disponível devem ser interpolados. Devido a estes fatores pode ocorrer um erro de generalização, também conhecido como erro de estimação, ou variância.
  • 23. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 23  Erro de Otimização: como o conjunto de dados é limitado, o erro é avaliado somente nos pontos que pertencem ao conjunto amostral.  Dado o conjunto amostral {(xi,si)}i = 1,...,N, o vetor de parâmetros  = * deve fornecer a melhor função de aproximação possível com base na representação paramétrica ĝ(,) e na medida de distância.  Quando o processo de treinamento supervisionado é visto sob uma perspectiva de aproximação de funções, seu elenco de aplicações se estende para diversas outras áreas além da classificação e estimação, pois ele gera um mapeamento entrada- saída. o Este mapeamento pode ser aplicado, por exemplo, para determinar a saída de um controlador de um robô autônomo, especificando assim qual a próxima ação do robô.
  • 24. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 24 3.3. Agrupamento  Clustering é o nome dado ao processo de agrupamento de um conjunto de objetos em classes ou clusters (grupos) de objetos similares.  Diferentemente dos processos de classificação, a análise de clusters considera dados de entrada não rotulados, ou seja, a classe à qual cada padrão de entrada pertence não é conhecida a priori. o O processo de agrupamento ou clusterização é normalmente usado para identificar tais classes.  Os objetos são agrupados com o objetivo de maximizar a distância interclasse e minimizar a distância intraclasse. o Portanto, um cluster é uma coleção de objetos similares uns aos outros e dissimilares aos objetos de outros clusters.  Cada cluster formado pode ser visto como uma classe de objetos.
  • 25. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 25  Como os rótulos das classes dos dados de treinamento não são conhecidos, este processo é denominado de treinamento não supervisionado (ou aprendizagem não supervisionada).  A figura a seguir apresenta alguns possíveis mapeamentos de RNAs. -2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 -2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 Random
  • 26. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 26 -2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 -2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 K-Means 3.4. Exemplos de Áreas de Aplicação  Reconhecimento de padrões (p. ex. visão computacional, análise de sons, etc.); processamento de sinais; reconhecimento de caracteres; identificação e controle; biometria; navegação autônoma de robôs; etc.
  • 27. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 27 4. Alguns Conceitos em Estatística  O processo de treinamento das RNAs envolve a inicialização, geralmente aleatória, do conjunto de pesos da rede. o A partir deste conjunto inicial de pesos um algoritmo de aprendizagem é aplicado à rede para ajustar os valores dos pesos. o Portanto, cada inicialização da rede pode conduzir a um conjunto final de pesos diferente.  Além disso, há outros fatores que normalmente influenciam a determinação de conjuntos de pesos distintos para a rede a cada vez que ela é treinada, por exemplo, a ordem de apresentação dos padrões de entrada.  Conclui-se, portanto, que cada vez que a rede é treinada um desempenho distinto é apresentado.  Como consequência, o resultado do processo de treinamento da rede deve ser avaliado com base em um conjunto amostral de treinamentos e execuções da rede.
  • 28. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 28  Quando diferentes algoritmos de treinamento e/ou tipos de rede são aplicadas na solução de um dado problema, seus desempenhos precisam ser comparados considerando-se critérios de desempenho médio. o Uma vez determinados os desempenhos médios dos algoritmos, é preciso considerar também se há uma diferença significativa entre estes desempenhos. Para isso, são utilizados testes de significância estatística. 4.1. Conceitos Básicos  Uma população é a coleção completa de elementos a serem estudados, por exemplo, valores, medidas, cidades, etc.  Amostra é um subconjunto dos elementos extraído da população.  Uma variável aleatória x é uma variável que admite um valor numérico para cada resultado de um experimento. o A palavra aleatória indica que, normalmente, só podemos saber seu valor após a execução do experimento.
  • 29. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 29 o Portanto, para cada valor possível da variável há uma probabilidade associada.  Uma variável aleatória discreta admite um número finito ou contável de possíveis valores.  O termo probabilidade refere-se à frequência relativa de ocorrência de um dado ou evento qualquer, ou seja, a probabilidade associada a um evento qualquer é o número de vezes que tal evento pode ocorrer em relação ao número total de eventos.  A distribuição de probabilidade discreta P, também chamada de função de probabilidade discreta, fornece a probabilidade de ocorrência de cada valor de uma variável aleatória discreta.  Qualquer distribuição P deve satisfazer as seguintes condições: P(x) = 1, x; e 0  P(x)  1, x. (3)
  • 30. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 30 4.2. Medidas Resumo  Algumas medidas podem ser usadas para resumir ou sumarizar a informação contida em uma base de dados.  Dois tipos de medidas são importantes: medidas de tendência central e medidas de dispersão.  As medidas de tendência central mais comuns são: média, mediana e moda: Média:   N i ix N x 1 1 . Mediana: valor central. Moda: valor mais frequente.  As medidas de dispersão fornecem informação sobre a variabilidade dos dados. Por exemplo, a variância corresponde à variação dos dados em relação à média. Variância:   N i i xx N x 1 2 )( 1 )var( .
  • 31. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 31 Desvio padrão: )var()( xx  . 4.3. A Curva Normal  Em estatística, a curva normal é uma distribuição comum na qual é possível determinar a probabilidade associada a todos os pontos da linha de base da distribuição. o Ela pode ser vista como uma distribuição de frequências, onde a frequência total sob a curva é 100%. o Essa curva apresenta uma área central que circunda a média ū onde se localizam os escores mais frequentes e há, ainda, áreas progressivamente menores em ambas extremidades (caudas).
  • 32. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 32 ū 223 3 68,26% 95,44% 99,74% Figura 1: Curva normal com as porcentagens da área total compreendidas entre , 2 e 3.  Para calcular a porcentagem exata entre a média e diversas distâncias-sigma da curva normal é empregada uma tabela. o O cálculo da distância sigma a partir da média ū produz um valor chamado escore z ou escore padronizado, que indica, em unidades de desvio padrão, o
  • 33. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 33 sentido e o grau com que um dado escore bruto se afasta da média da sua distribuição de frequências: z = (u ū)/, (4) onde  é o desvio padrão da distribuição. o Exemplo: um escore z de 1,4 significa que o escore bruto está a 1,4 à direita da média. 4.4. Testes de Diferenças entre Médias  Os testes de diferença entre médias são usados para verificar se há uma diferença significativa entre uma amostra e outra. o No contexto de RNAs, ele permite-nos verificar se o desempenho apresentado por um algoritmo é significativamente superior ao desempenho de outro algoritmo ou não.  Tornou-se habitual em estatística começar pelo teste da hipótese nula, que afirma que duas amostras foram extraídas da mesma população.
  • 34. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 34 o De acordo com a hipótese nula, qualquer diferença entre as amostras é resultado do processo amostral. Portanto, uma diferença entre médias amostrais não representa uma verdadeira diferença entre as médias populacionais.  De forma complementar à hipótese nula, a hipótese experimental afirma existir uma verdadeira diferença populacional.  A distribuição amostral de diferenças oferece uma base sólida para testarmos hipóteses acerca da diferença média entre duas amostras aleatórias. Grandes Amostras  Vamos assumir inicialmente que estamos trabalhando com uma grande amostra, ou seja, que N  30.  Para compararmos duas amostras faremos o seguinte raciocínio: o Se a diferença média entre duas amostras situar-se ‘tão longe’ da diferença zero de forma a conferir-lhe somente uma pequena probabilidade de ocorrência na
  • 35. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 35 distribuição amostral de diferenças, rejeitaremos a hipótese nula, ou seja, a hipótese que afirma ser a diferença obtida apenas ação do acaso. o Analogamente, se a diferença média amostral for tão próxima de zero tal que sua probabilidade de ocorrência seja grande, então devemos aceitar a hipótese nula e tratar a diferença obtida como resultante de erro de amostragem.  Portanto, devemos procurar determinar a que distância a diferença média obtida fica da diferença média de zero.  Para decidir se a diferença amostral obtida é estatisticamente significante (ou seja, resultado de uma real diferença entre as populações e não apenas produto de erro amostral) é habitual estabelecer um nível de confiança, também chamado de nível de significância. o O nível de significância representa a probabilidade com que a hipótese nula pode ser rejeitada com confiança.
  • 36. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 36 o Analogamente, o nível de significância representa a probabilidade com que a hipótese experimental pode ser aceita com confiança. o Por convenção, usamos um nível de significância de 5%, mas também é comum uma escolha mais rigorosa de 1%.  Dadas duas amostras, podemos estimar de forma acurada o desvio padrão da distribuição de diferenças, designada erro padrão da diferença dif: dif = (ū1 2 + ū2 2 )½ , (5) onde dif é o erro padrão da diferença, ū1 é o erro padrão da primeira média amostral e ū2 é o erro padrão da segunda média amostral.  O erro padrão para cada média amostral é calculado através do desvio padrão das amostras: ū = s/((N 1)½ ). (6)  Uma vez que conhecemos o erro padrão para cada média amostral, podemos obter o erro padrão da diferença pela Equação (5).
  • 37. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 37  A diferença média amostral obtida pode ser traduzida no seu equivalente z: z = (ū1 ū2)/dif. (7)  Utilizando a tabela de porcentagem da área sob a curva normal entre ū e z, verifica- se que um escore z encontrado representa um percentual das diferenças médias para cada lado à partir da média.  Se subtrairmos essa soma de 100% encontraremos o valor dos escores-diferenças entre médias. Este valor deve ser comparado ao nível de significância pré- determinado para verificar se a hipótese nula deve ou não ser aceita.  Resumo: o Passo 1: achar a média e o desvio padrão de cada amostra. o Passo 2: achar o erro padrão de cada média (Eq. 6) o Passo 3: achar o erro padrão da diferença (Eq. 5) o Passo 4: traduzir a diferença média amostral em unidades de erro padrão da diferença (Eq. 7)
  • 38. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 38 o Passo 5: achar a porcentagem da área total sob a curva normal entre z e a média das diferenças. o Passo 6: subtrair de 100% para achar a porcentagem da área total associada à diferença média amostral obtida. o Conclusão: Se a probabilidade de ocorrência da diferença média é maior do que o nível de significância pré-determinado, então a hipótese nula deve ser aceita. Pequenas Amostras  Em muitos casos efetuar 30 ou mais treinamentos e execuções de uma RNA pode ser muito custoso computacionalmente.  Nestes casos, onde a quantidade de amostras é pequena, por exemplo, N = 10, a tabela que fornece a porcentagem de área sob a curva normal entre ū e z fica comprometida.
  • 39. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 39  Isso ocorre, pois a distribuição amostral de diferenças só assume a forma da curva normal se as amostras que a compõem forem grandes.  Esse afastamento da normalidade na distribuição de diferenças pode ser compensado estatisticamente mediante o uso do que se convencionou chamar razão t.  Assim como no caso do escore z, a razão t pode ser usada para traduzir uma diferença média amostral em unidades de erro padrão da diferença.  A razão t pode ser obtida da seguinte forma: calcular a diferença entre as médias das amostras e dividi-la pelo erro padrão da diferença: t = (ū1 ū2)/dif. (8)  Porém, ao contrário do que ocorre com a estatística z, a razão t precisa ser interpretada considerando-se o número de graus de liberdade, gl: gl = N  1, (9) onde Ni é o número de elementos da amostra i.
  • 40. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 40  Dado o valor de gl encontrado emprega-se uma tabela com os valores de t em função dos graus de liberdade e do nível de significância escolhidos. Esta tabela fornece os valores necessários para rejeição da hipótese nula.
  • 41. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 41 5. Base Biológica das RNAs  Como o cérebro processa informação? Como ele é organizado? Quais são os mecanismos envolvidos no funcionamento cerebral?  Estas são apenas algumas das perguntas mais desafiadoras para a ciência.  O cérebro é especialista em desempenhar funções como reconhecimento de padrões, controle motor, percepção, inferência, intuição, adivinhações, etc. Entretanto, o cérebro também é “preconceituoso”, lento, impreciso, realiza generalizações incorretas e, acima de tudo, é geralmente incapaz de explicar suas próprias ações (embora este seja um requisito cultural e não funcional).  Os neurônios são considerados as unidades básicas de processamento do cérebro.  De modo análogo, modelos simplificados dos neurônios biológicos constituem as unidades básicas de processamento das redes neurais artificiais (RNAs).
  • 42. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 42  Os neurônios biológicos estão conectados uns aos outros por meio de conexões sinápticas. Acredita-se que a capacidade das sinapses serem moduladas é a principal base para todos os processos cognitivos, como percepção, raciocínio e memória.  Sendo assim, algumas informações essenciais sobre neurônios, sinapses e organização estrutural, são importantes para o projeto de RNAs. 6. O Sistema Nervoso  Todos os organismos multicelulares possuem algum tipo de sistema nervoso, cuja complexidade e organização varia de acordo com o tipo de animal.  Mesmo os vermes, lesmas e insetos são capazes de adaptar seu comportamento e armazenar informações em seus sistemas nervosos.  O sistema nervoso é responsável por dotar o organismo, por meio de entradas sensoriais, de informações sobre o estado do ambiente no qual ele vive e se move.
  • 43. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 43 A informação de entrada é processada, comparada com as experiências passadas, e transformada em ações apropriadas ou absorvidas sob a forma de conhecimento.  Anatomicamente, o sistema nervoso possui duas divisões principais: sistema nervoso central e sistema nervoso periférico, sendo que a diferença básica entre eles está na localização. Brainstem: . midbrain . pons . medulla Diencephalon . thalamus . hypothalamus Cerebrum Cerebellum Forebrain
  • 44. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 44 6.1. Níveis de Organização no Sistema Nervoso  As estruturas que realmente constituem um nível de organização do sistema nervoso são definidas de forma empírica.  Sendo assim, algumas estruturas particularmente interessantes ao estudo das RNAs serão discutidas aqui.  O sistema nervoso pode ser organizado em diferentes níveis: moléculas, sinapses, neurônios, camadas, mapas e sistemas.  Uma estrutura facilmente identificável no sistema nervoso é o neurônio, especialista em processamento de sinais.  Dependendo das condições ambientais, os neurônios são capazes de gerar um sinal, mais especificamente um potencial elétrico, que é utilizado para transmitir informação a outras células.
  • 45. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 45 h Brain Network of neurons Neuron Synapse Neurônios e Sinapses  Os neurônios utilizam uma variedade de mecanismos bioquímicos para o processamento e transmissão de informação, incluindo os canais iônicos.
  • 46. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 46  Os canais iônicos permitem um fluxo contínuo de entrada e saída de correntes (elétricas), a geração e a propagação de potenciais de ação, e a liberação de neurotransmissores.  O processo de transmissão de sinais entre neurônios é central para a capacidade de processamento de informação do cérebro.  Uma das descobertas mais empolgantes em neurociência foi a de que a efetividade da transmissão de sinais pode ser modulada, permitindo o cérebro se adaptar a diferentes situações.  A plasticidade sináptica, ou seja, a capacidade das sinapses sofrerem modificações, é o ingrediente chave para o aprendizado da maioria das RNAs.  Os neurônios podem receber e enviar sinais a vários outros neurônios.  Os neurônios que enviam sinais, chamados de neurônios pré-sinápticos ou “enviadores”, fazem contato com os neurônios receptoress ou pós-sinápticos em regiões especializadas denominadas de sinapses.
  • 47. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 47 Cell body (soma) Axon Synaptic clefts Dendrites Axon hillock Mielin sheath  A sinapse é, portanto, a junção entre o axônio de um neurônio pré-sináptico e o dendrito ou corpo celular de um neurônio pós-sináptico (ver figura).  A capacidade de processamento de informação das sinapses permite que elas alterem o estado de um neurônio pós-sináptico, eventualmente gerando um pulso elétrico, denominado potencial de ação, no neurônio pós-sináptico.
  • 48. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 48  Portanto, um neurônio pode ser visto como um dispositivo capaz de receber estímulos (de entrada) de diversos outros neurônios e propagar sua única saída, função dos estímulos recebidos e do estado interno, a vários outros neurônios.  Existem diversos mecanismos envolvidos na transmissão de informação (sinais) entre neurônios. Como os neurônios são células encapsuladas por membranas, pequenas aberturas nestas membranas (canais) permitem a transferência de informação entre eles.  Os mecanismos básicos de processamento de informação são baseados no movimento de átomos carregados, ou íons: o Os neurônios habitam um ambiente líquido contendo certa concentração de íons, que podem entrar ou sair do neurônio através dos canais. o Um neurônio é capaz de alterar o potencial elétrico de outros neurônios, denominado de potencial de membrana, que é dado pela diferença do potencial elétrico dentro e fora do neurônio.
  • 49. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 49 o Quando um potencial de ação chega ao final do axônio, ele mobiliza alguns íons abrindo os canais (que são sensíveis à tensão) e permitindo fluir íons para o terminal, eventualmente resultando na liberação de íons no canal. o Estes íons promovem a liberação de neurotransmissores (substâncias químicas) na fenda sináptica que se difundem e se ligam a receptores no neurônio pós- sináptico. o Os neurotransmissores recebidos pelo neurônio pós-sináptico se propagam até o corpo celular, são integrados e o potencial de membrana resultante irá determinar a ativação do neurônio, que corresponde ao envio de um sinal de saída a outro(s) neurônio(s). o Entretanto, a ativação de um neurônio ocorre apenas quando seu potencial de membrana é maior do que um dado limiar (threshold). o Alguns neurotransmissores possuem a capacidade de ativar um neurônio enquanto outros possuem a capacidade de inibir a ativação do neurônio, levando
  • 50. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 50 o neurônio pós-sináptico a um estado de repouso. Este último tipo de neurotransmissor gera um potencial de repouso.  A ativação de um neurônio é também denominada de spiking, firing, ou disparo de um potencial de ação (triggering of an action potential). Redes, Camadas e Mapas  Os neurônios podem ter conexões de sentido positivo (feedforward) e/ou de sentido negativo (feedback) com outros neurônios, ou seja, as conexões podem ter um único sentido ou serem recíprocas.  Diversos neurônios interconectados geram uma estrutura em rede conhecida como rede neural. o Por exemplo, em um milímetro cúbico de tecido do córtex, existe aproximadamente 105 neurônios e 109 sinapses, com a grande maioria destas sinapses se originando de células localizadas dentro do córtex.
  • 51. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 51  Um agrupamento de neurônios interconectados pode exibir comportamentos complexos e uma capacidade de processamento de informação que não pode ser predita tomando-se cada neurônio individualmente.  Uma característica marcante das redes neurais é a representação distribuída de informação e seu processamento paralelo.  Redes neurais com arquiteturas específicas são incorporadas em estruturas maiores capazes de realizar tarefas ainda mais complexas.  Muitas áreas do cérebro apresentam uma organização laminar de neurônios. Lâminas são camadas de neurônios em contato com outras camadas.
  • 52. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 52
  • 53. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 53  Um dos arranjos mais comuns de neurônios é uma estrutura bidimensional em camadas organizada através de um arranjo topográfico das respostas de saída. O exemplo mais conhecido deste tipo de estrutura é o córtex humano.  O córtex corresponde à superfície externa do cérebro; uma estrutura bidimensional com vários dobramentos, fissuras e elevações.  Diferentes partes do córtex possuem diferentes funções (ver figura).  Em geral os neurônios do córtex estão organizados em camadas distintas, que são subdivididas em camada de entrada, camadas intermediárias ou escondidas e camada de saída.  A camada de entrada recebe os sinais sensoriais ou de entrada, a camada de saída envia sinais para outras partes do cérebro e as camadas intermediárias recebem (enviam) sinais de (para) outras camadas do córtex. Isso significa que as camadas intermediárias nem recebem entradas diretamente e nem produzem uma saída do tipo motora, por exemplo.
  • 54. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 54  Um princípio organizacional importante em vários sistemas sensoriais e motores é o mapa topográfico.
  • 55. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 55 o Por exemplo, neurônios em áreas visuais do córtex estão arranjados topograficamente, no sentido de que neurônios adjacentes possuem campos de recepção visual adjacentes e, coletivamente, eles constituem um mapa da retina. o Obs: Como neurônios vizinhos ocupam-se de representações similares, mapas topográficos constituem uma forma parcimoniosa de organização do cérebro (há economia de conexões, por exemplo).  A organização estrutural em redes, mapas topográficos e camadas são todos casos especiais de um princípio mais geral: a exploração das propriedades estruturais e espaço-temporais para o processamento e armazenagem de informação. 6.2. Base Biológica e Física da Aprendizagem e Memória  O sistema nervoso está continuamente sofrendo modificações e atualizações. Virtualmente todas as suas funções, incluindo percepção, controle motor, regulação térmica e raciocínio, são modificadas por estímulos.
  • 56. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 56  Observações comportamentais permitiram verificar graus de plasticidade do sistema nervoso: existem mudanças rápidas e fáceis, mudanças lentas e profundas, e mudanças mais permanentes (porém ainda modificáveis).  Em geral, a aprendizagem global é resultado de alterações locais nos neurônios.  Existem diversas formas de modificações possíveis em um neurônio: o Dendritos podem nascer, assim como também podem ser removidos o Alguns dendritos podem se esticar ou ser encolhidos permitindo ou eliminando, respectivamente, a conexão com outras células o Novas sinapses podem ser criadas ou sofrerem alterações o Sinapses também podem ser removidas o Todo neurônio pode morrer e também se regenerar.  Toda esta vasta gama de adaptação estrutural pode ser convenientemente condensada simplesmente referindo-se às sinapses, pois estas modificações envolvem a modificação sináptica de forma direta ou indireta.
  • 57. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 57  Sendo assim, a aprendizagem via modulação sináptica é o mecanismo mais importante para as redes neurais, sejam elas biológicas ou artificiais.  A modulação sináptica poderá depender de mecanismos de adaptação de neurônios individuais e de redes neurais como um todo.  Assim como a aprendizagem, a memória também é resultado de um processo adaptativo das sinapses. Ela é causada por variações da eficiência sináptica de alguns neurônios como resultado da atividade neural.  Estas alterações resultam em novos ou facilitados caminhos de desenvolvimento e transmissão de sinais através dos circuitos neurais.  Na verdade, um dos resultados de um processo de aprendizagem é a criação de um padrão mais permanente de conexões sinápticas, que, por sua vez, resulta na memorização (aprendizagem) de uma determinada experiência.  Note, portanto, que a diferença entre aprendizagem e memória é sutil: a aprendizagem pode ser vista como o processo adaptativo que resulta em uma
  • 58. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 58 mudança da eficiência e estrutura sináptica, enquanto a memória pode ser interpretada como o resultado deste processo adaptativo.
  • 59. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 59 7. Projeto de Redes Neurais Artificiais  Uma RNA pode ser definida como sendo uma estrutura de processamento (rede), passível de implementação em dispositivos eletrônicos, composta por um número de unidades interconectadas (neurônios artificiais), sendo que cada unidade apresenta um comportamento específico de entrada/saída (computação local), determinado pela sua função de transferência, pelas interconexões com outras unidades, dentro de um raio de vizinhança, e possivelmente pelas entradas externas.  Uma rede neural artificial é um circuito composto por uma grande quantidade de unidades simples de processamento inspiradas no sistema neural (Nigrin, 1993).  Uma RNA é um sistema massivamente paralelo e distribuído, composto por unidades de processamento simples que possuem uma capacidade natural de armazenar e utilizar conhecimento (Haykin, 2008).
  • 60. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 60 Período Pesquisadores Avanços 1943 McCulloch e Pitts Modelo lógico do neurônio 1948 Wiener Livro Cybernetics (controle, comunicação e processamento de sinais) 1949 Hebb Livro The Organization of Behavior (primeira regra de aprendizagem) 1958 Rosenblatt Perceptron convergence theorem 1960 Widrow e Hoff Least-mean square algorithm 1969 Minsky e Papert Livro Perceptrons (demonstrou limites fundamentais das redes SLP) 1979 Werbos Reverse-mode gradient computation** 1980 Grossberg A new principle of self-organization (ART) 1982 Hopfield Uso de uma função de energia para redes recorrentes com conexões simétricas 1982 Kohonen Redes competitivas e mapas auto-organizáveis de Kohonen 1983 Barto, Sutton e Anderson Reinforcement learning 1986 Rumelhart e McClelland Processamento paralelo distribuído 1988 Broomhead e Lowe Redes RBF 1992 Vapnik Máquinas de vetores suporte Tabela 2  Marcos históricos da pesquisa em Redes Neurais Artificiais
  • 61. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 61  As RNAs apresentam diversas características em comum com o sistema nervoso: o O processamento básico de informação ocorre em diversas unidades simples denominadas de neurônios artificiais ou simplesmente neurônios (ou nós); o Os neurônios estão interconectados gerando redes de neurônios, ou redes neurais; o A informação (sinais) é transmitida entre neurônios através de conexões ou sinapses; o A eficiência de uma sinapse, representada por um peso associado, corresponde à informação armazenada pelo neurônio e, portanto, pela rede neural; e o O conhecimento é adquirido do ambiente através de um processo de aprendizagem que é, basicamente, responsável por adaptar os pesos das conexões aos estímulos recebidos do ambiente.
  • 62. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 62  Uma característica importante das RNAs é o local onde o conhecimento está armazenado. Nos casos mais simples, este conhecimento é armazenado nos pesos das conexões entre neurônios.  Esta característica tem grandes implicações para a capacidade de processamento e aprendizagem da rede.  A representação do conhecimento é feita tal que o conhecimento necessariamente influencie a forma de processamento da rede, ou seja, o seu comportamento de entrada-saída.  Se o conhecimento está armazenado nos pesos das conexões, então o processo de aprendizagem corresponde a identificar um conjunto apropriado de pesos de forma que a rede se comporte como desejado.  Esta característica possui duas implicações importantes para as RNAs: a possibilidade de desenvolvimento de técnicas de aprendizagem e a representação distribuída de conhecimento.
  • 63. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 63  Existem tipos de redes neurais cujo treinamento (ou projeto) é mais complicado do que a simples determinação de conjuntos apropriados de pesos sinápticos.  Uma rede neural artificial pode ser projetada através de: 1. Uma definição ou escolha de um conjunto de neurônios artificiais; 2. A definição ou escolha de um padrão de conectividade entre os neurônios, ou seja, de uma arquitetura para a rede; e 3. A definição de um método de determinação dos parâmetros livres da rede, denominado de algoritmo de aprendizagem ou treinamento.  Embora seja possível projetar uma rede neural a partir da definição do papel (computação global) que ela deve desempenhar, combinando-se os efeitos individuais de todos os neurônios, uma rede neural usualmente se adapta para atingir a funcionalidade desejada a partir de uma ou mais estratégias de aprendizado, as quais vão atuar junto a parâmetros configuráveis da rede neural.
  • 64. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 64  É fundamental, portanto, que a rede neural possua meios de interagir com o ambiente.  Cada rede neural artificial representa uma arquitetura de processamento específica, havendo uma família de arquiteturas, cada qual adequada para funcionalidades específicas.  A diversidade de arquiteturas tem aumentado muito, sendo que as últimas gerações de redes neurais já não podem ser caracterizadas por apresentarem um grande número de unidades e conexões, com funções de transferência simples e idênticas para todas as unidades.  Portanto, a funcionalidade de uma rede neural artificial será determinada pela: o Topologia da rede o Função de transferência de cada neurônio individual o Estratégia de aprendizado o Dados de treinamento
  • 65. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 65  No entanto, analisar o papel de cada componente da rede neural no resultado final não é uma tarefa elementar.  É por este motivo que as mais avançadas estratégias de aprendizado passaram a ser responsáveis pela definição automática de muitas características de projeto, antes a cargo do projetista.  O projetista geralmente não possui informação a priori suficiente para definir, por exemplo, a melhor topologia da rede e as funções de transferência que devem ser utilizadas em cada neurônio, deixando apenas as conexões ajustáveis a cargo do algoritmo de treinamento.  Quando o aprendizado atua apenas modificando as conexões, ao arbitrar a topologia da rede e as funções de transferência que devem ser utilizadas em cada neurônio, o projetista está “introduzindo um conhecimento inicial”, cujo nível de adequação pode não estar a seu alcance.
  • 66. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 66 7.1. Neurônios Artificiais  No neurônio biológico, os sinais de entrada chegam através de canais localizados nas sinapses, permitindo a entrada e saída de íons. Um potencial de membrana aparece como resultado da integração dos sinais de entrada, que irão determinar se o neurônio irá produzir um sinal de saída (spike, pulso, ou potencial de ação) ou não. O potencial de ação resulta na liberação de neurotransmissores na sinapse sempre que o potencial de membrana for superior a um determinado limiar (threshold).  O efeito líquido de todos estes processos biológicos que ocorrem nas sinapses é representado por um peso associado. O Neurônio de McCulloch e Pitts  O modelo mais clássico de neurônio em RNAs foi proposto por McCulloch e Pitts em 1943. Eles assumiram que o neurônio está executando uma função lógica.
  • 67. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 67  Este trabalho, intitulado “Um cálculo lógico das ideias intrínsecas da atividade neural” é bastante famoso e exerceu grande influência na comunidade científica da época.  Foi a primeira tentativa de entender a atividade neural baseado em unidades elementares de computação. Foram supostas cinco premissas: o A atividade do neurônio é binária (“tudo-ou-nada”), podendo apresentar apenas dois estados lógicos: 1 (ativo) ou 0 (inativo); o Uma certa quantidade fixa de sinapses deve ser excitada em um período latente de adição de forma a excitar o neurônio e este número é independente da atividade prévia e da posição do neurônio; o O único atraso significativo no cérebro é o atraso do processamento sináptico; o A atividade de uma sinapse inibitória bloqueia completamente a atividade do neurônio num dado instante de tempo; o A estrutura da rede neural não varia com o tempo.
  • 68. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 68  McCulloch e Pitts consideraram a resposta neural como sendo equivalente a uma proposição (se A então B) adequada para estimular o neurônio. Sendo assim, eles estudaram o comportamento de diversas redes neurais utilizando a notação simbólica da lógica das proposições.  A característica binária dos neurônios era suficiente para garantir que a atividade de qualquer neurônio poderia ser expressa sob a ótica da lógica das proposições.  Obs: Uma proposição é uma sentença declarativa que pode ser verdadeira ou falsa, mas não ambas. Exemplo: Este curso é RNA. Contraexemplo: Qual seu nome?  Embora com os conhecimentos atuais sobre os mecanismos físicos e químicos envolvidos na transmissão de sinais no cérebro seja possível afirmar que nenhum tipo de lógica das proposições é realizada no cérebro, o neurônio de McCulloch e Pitts pode ser visto como um caso particular do neurônio genérico utilizado em RNAs.  Considere a representação simbólica do neurônio de McCulloch e Pitts:
  • 69. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 69 u y  x1 x2 f(u) Junção somadora Função de ativação Saída f(u) u Figura 2: Representação pictórica do neurônio de McCulloch e Pitts.  Cada neurônio possui um limiar (threshold) fixo  e recebe algumas entradas.  A cada iteração t, o neurônio responde a suas entradas sinápticas, que refletem o estado do neurônio pré-sináptico. Se nenhuma sinapse inibitória está ativa, o neurônio integra (soma) suas entradas, gerando a entrada líquida (ou entrada interna) u do neurônio e verifica se u é maior do que o limiar . Caso positivo, o neurônio responde com um sinal de saída de valor 1. Caso negativo, ele responde com um sinal de saída 0.
  • 70. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 70  Exemplo de operação: funções lógicas OR e AND. Neurônio Básico “Integrate-and-Fire”  Estes neurônios são os mais clássicos em neurociência computacional. Trata-se de modelos contínuos e não discretos de neurônios, com pequenas variantes entre si.  Considere um neurônio livre de ruído com entrada líquida u(t) sendo função do tempo e correspondente ao potencial de membrana do neurônio. Os principais efeitos de alguns canais neurais podem ser capturados através de uma simples equação de um integrador: )()( )( τ tiRtuu dt tdu mresm  , (1) onde m é a constante de tempo da membrana determinada pela condutância média dos canais; ures é o potencial de repouso do neurônio; i(t) é a corrente de entrada dada pela soma das correntes geradas pelos disparos dos neurônios pré-sinápticos; e Rm é a resistência do neurônio ao fluxo de corrente.
  • 71. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 71  A Equação (1) propõe que a taxa de variação do potencial de membrana do neurônio é proporcional a seu potencial atual, ao seu potencial de repouso e ao potencial gerado pelos sinais de entrada.  A corrente de entrada i(t) do neurônio é dada pela soma das correntes de entrada dependendo da eficiência das sinapses individuais, descritas pela variável wj para cada sinapse j. Portanto, a corrente total de entrada do neurônio pode ser escrita como sendo a soma das correntes individuais multiplicadas pelos pesos wj:    j t f jjf j ttfwti )()( onde a função f() parametriza a forma da resposta pós-sináptica.  Esta função foi denominada de função de ativação por McCulloch e Pitts e esta nomenclatura prevalece até os dias de hoje em praticamente todos os modelos de RNAs.  A variável tj f corresponde ao momento do disparo do neurônio pré-sináptico da sinapse j.
  • 72. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 72  O tempo de disparo do neurônio pós-sináptico é definido como sendo o tempo para o potencial de membrana atingir o limiar .  Para completar este modelo, basta “resetar” o valor do potencial de membrana do neurônio para seu potencial de repouso após o disparo do neurônio. O Neurônio Genérico em RNAs  O elemento computacional básico empregado na maioria das RNAs é um integrador. Trata-se de um elemento processador de informações que é fundamental para a operação das RNAs.  As principais partes do neurônio artificial genérico são: o As sinapses, caracterizadas pelos seus pesos associados; o A junção somadora; e o A função de ativação.
  • 73. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 73 uk yk  x1 x2 xm f(uk) Junção somadora Função de ativação Saída … wk1 wk2 wkm +1 Limiar(bias) bk Pesos das conexões Entradas Figura 3: Neurônio genérico em RNAs.  Nesta representação, o primeiro subscrito k do peso sináptico wkj corresponde ao neurônio pós-sináptico e o segundo subscrito corresponde à sinapse ligada a ele.  A junção somadora soma todos os sinais de entrada ponderados pelos pesos das conexões. Assumindo os vetores de entrada e de pesos como sendo vetores coluna, esta operação corresponde ao produto interno do vetor de entradas x pelo vetor de
  • 74. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 74 pesos wk, mais o limiar bk. Genericamente, trata-se de uma combinação linear das entradas pelos pesos associados, mais o limiar bk.  A função de ativação é geralmente utilizada com dois propósitos: limitar a saída do neurônio e introduzir não linearidade no modelo.  O limiar bk tem o papel de aumentar ou diminuir a influência do valor da entrada líquida para a ativação do neurônio k. o Por exemplo, no neurônio de McCulloch e Pitts a saída será 1 para u  :      contráriocaso0 θse1 )( u ufy onde u = x1 + x2.  É possível substituir o limiar (threshold)  por um limiar (bias) que será multiplicado por um valor constante de entrada igual a +1:      contráriocaso0 0se1 )( u ufy
  • 75. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 75 onde u = x1 + x2  b (para b negativo).  Note que a saída deste neurônio genérico é simplesmente um número, a presença de potenciais de ação (disparos) discretos é ignorada. Entretanto, existem modelos de neurônios, denominados spiking neurons, que utilizam disparos discretos.  Matematicamente, a saída do neurônio k pode ser descrita por:           k m j jkjkk bxwfufy 1 )(  É possível simplificar a notação acima de forma a incluir o bias simplesmente definindo um sinal de entrada de valor x0 = 1 com peso associado wk0 = bk:           m j jkjkk xwfufy 0 )(  Existem vários tipos de função de ativação como, por exemplo, a função linear, a função degrau, as funções sigmoidais, e as funções de base radial.
  • 76. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 76 uk y  x1 x2 xm f(uk) … wk1 wk2 wkm +1 wk0 = b0 Junção somadora Função de ativação Saída Pesos das conexões Entradas Figura 4: Outra representação para o neurônio genérico.
  • 77. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 77            0pse0 1p0se 1pse1 k kk k k pf u uu u u com p constante e positivo. a) 1/p0 b) 1/p0 p 0 Figura 5: Função semi-linear (a) e sua derivada em relação à entrada interna (b).
  • 78. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 78 kk k pp p k ee e fy uu u u      1 1 1 )(   01  kk k p y uu u  a) b) p=0.8 p=1.5 p=3 p=0.8 p=1.5 p=3 Figura 6: Função logística (a) e sua derivada em relação à entrada interna (b).
  • 79. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 79 kk kk pp pp kk ee ee pfy uu uu uu      )tanh()(   01 2  k k p y u u  a) b) p=1 p=0.6 p=2.2 p=0.6 p=1 p=2.2 Figura 7: Função tangente hiperbólica (a) e sua derivada em relação à entrada interna (b).
  • 80. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 80 7.2. Arquiteturas de Rede  Muito pouco é sabido sobre os padrões de conexão entre os neurônios biológicos.  Entretanto, a maioria das RNAs utilizam arquiteturas padronizadas, projetadas especialmente para resolver algumas classes de problemas.  O processo de conexão entre neurônios artificiais leva à geração de sinapses e à construção de redes neurais artificiais. w g u wij w xij i yi g yj 1 wi0 Figura 8: Processo de conexão entre neurônios.
  • 81. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 81  Existem basicamente três tipos de camadas em uma rede neural artificial: camada de entrada, camada(s) intermediária(s) e camada de saída. Entretanto, nem todas as RNAs possuem camadas intermediárias.  A forma pela qual os neurônios estão interconectados está intimamente relacionada ao algoritmo a ser utilizado no seu treinamento.  Existem, basicamente, três tipos principais de arquitetura em RNAs: redes feedforward de uma única camada, redes feedforward de múltiplas camadas, e redes recorrentes. Rede Feedforward com Uma Única Camada  Este caso mais simples de rede em camadas consiste em uma camada de entrada e uma camada de saída.  Geralmente os neurônios de entrada são lineares, ou seja, eles simplesmente propagam o sinal de entrada para a próxima camada. São também denominados de neurônios sensoriais.
  • 82. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 82 … Camada de entrada Camada de saída Neurônio sensorial Neurônio de processamento … … y1 y2 y3 yo x0 x1 x2 xm w10 w20 . . . . wom Figura 9: Rede feedforward de uma única camada.  Esta rede é denominada feedforward porque a propagação do sinal ocorre apenas da entrada para a saída, ou seja, é apenas no sentido positivo.
  • 83. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 83            omoo m www www    10 11110 W yi = f(wi.x) = f(j wij.xj) , j = 1,…,m. Note que a primeira coluna de W corresponde ao vetor de bias.  Em forma matricial: y = f(W.x), onde W  om , wi  1m , i = 1,…,o, x  m1 , e y  o1 . Rede Feedforward de Múltiplas Camadas  As redes de múltiplas camadas possuem uma ou mais camadas intermediárias ou escondidas. Adicionando-se camadas intermediárias não lineares é possível aumentar a capacidade de processamento de uma rede feedforward.  A saída de cada camada intermediária é utilizada como entrada para a próxima camada.
  • 84. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 84  Em geral o algoritmo de treinamento para este tipo de rede envolve a retropropagação do erro entre a saída da rede e uma saída desejada conhecida. … … Camada de entrada Primeira camada escondida Camada de saída Segunda camada escondida … … y1 y2 yo x0 x1 x2 xm Figura 10: Rede feedforward de múltiplas camadas.
  • 85. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 85  Seja Wk a matriz de pesos da camada k, contada da esquerda para a direita. o k ijw corresponde ao peso ligando o neurônio pós-sináptico i ao neurônio pré- sináptico j na camada k.  Em notação matricial, a saída da rede é dada por: y = f3 (W3 f2 (W2 f1 (W1 x)))  Note que fk , k = 1,..., M (M = número de camadas da rede) pode ser dado por uma matriz quadrada fk  ll , onde l é o número de neurônios na camada k, ou por um vetor fk  l1 , onde l é o número de neurônios na camada k.  O que acontece se as funções de ativação das unidades intermediárias forem lineares?
  • 86. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 86 Redes Recorrentes  O terceiro principal tipo de arquitetura de RNAs engloba as chamadas redes recorrentes, pois elas possuem, pelo menos, um laço realimentando a saída de neurônios para outros neurônios da rede. Z1 Z1 Z1 Figura 11: Rede neural recorrente de Hopfield.
  • 87. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 87  É claro que existem outras arquiteturas de redes neurais, como exemplo a rede abaixo. Figura 12: Rede neural arbitrária.
  • 88. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 88 7.3. Paradigmas de Aprendizagem  A capacidade de aprender associada a uma rede neural é uma das mais importantes qualidades destas estruturas.  Trata-se da habilidade de adaptar-se, de acordo com regras pré-existentes, ao seu ambiente, alterando seu desempenho ao longo do tempo.  Sendo assim, considera-se aprendizado o processo que adapta o comportamento e conduz a uma melhoria de desempenho.  No contexto de redes neurais artificiais, aprendizagem ou treinamento corresponde ao processo de ajuste dos parâmetros livres da rede através de um mecanismo de apresentação de estímulos ambientais, conhecidos como padrões (ou dados) de entrada ou de treinamento: estímulo  adaptação  novo comportamento da rede
  • 89. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 89  Nas RNAs mais simples e tradicionais, os parâmetros livres da rede correspondem apenas aos pesos sinápticos. Toda a estrutura da rede, incluindo os tipos de neurônios e suas funções de ativação, é pré-definida.  O objetivo do aprendizado em redes neurais é a obtenção de um modelo implícito do sistema em estudo, por ajuste dos parâmetros da rede.  Dada uma rede neural artificial, seja w(t) um peso sináptico de um dado neurônio, no instante de tempo t. O ajuste w(t) é aplicado ao peso sináptico w(t) no instante t, gerando o valor corrigido w(t+1), na forma: w(t+1) = w(t) + w(t)  A obtenção de w(t) pode ser feita de diversas formas. O tipo de aprendizado é determinado pela técnica empregada no processo de ajuste dos pesos sinápticos (parâmetros da rede neural).
  • 90. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 90  Um conjunto bem definido de regras para obtê-los é denominado um algoritmo de aprendizagem ou treinamento. Exemplos de alguns algoritmos: regra de Hebb, algoritmo de backpropagation, estratégias de competição, máquina de Boltzmann.  A maneira pela qual o ambiente influencia a rede em seu aprendizado define o paradigma de aprendizagem. Exemplos de paradigmas: aprendizado supervisionado, aprendizado por reforço e aprendizado não-supervisionado (ou auto-organizado).  Seja qual for o algoritmo ou o paradigma utilizado, ao alcançarmos o objetivo obtemos uma representação de conhecimento que obedece a uma ou mais das quatro regras de bom senso descritas abaixo: R1 entradas similares provenientes de classes similares de fenômenos ou eventos tendem a produzir representações similares dentro da rede, o que pode levar a classificá-las como pertencentes à mesma categoria.
  • 91. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 91 R2 itens que devem ser classificados ou processados distintamente devem provocar, de alguma forma, representações distintas dentro da rede. R3 se uma característica é importante, então devem ser alocados recursos da rede neural (por exemplo, neurônios e conexões) para representá-la devidamente. Quanto mais complexa a representação, mais recursos devem ser alocados. R4 a etapa de aprendizado pode ser simplificada caso as informações conhecidas a priori e invariâncias sejam embutidas diretamente no projeto da rede neural.  As duas primeiras regras utilizam os conceitos de similaridade e/ou de distância. Estes conceitos podem ser expressos matematicamente a partir da definição formal de um critério de medida. Em particular, a Teoria de Medidas é uma das áreas mais bem formalizadas da Matemática, juntamente com a Teoria de Conjuntos, constituindo a base de todos os métodos matemáticos.  Existem basicamente três paradigmas de aprendizado:
  • 92. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 92  Aprendizado supervisionado: é baseado em um conjunto de exemplos de estímulo- resposta (ou entrada-saída), ou em algum outro tipo de informação que represente o comportamento que deve ser apresentado pela rede neural;  Aprendizado por reforço: o comportamento da rede é avaliado apenas com base em algum critério numérico, fornecido em instantes espaçados de tempo;  Aprendizado não-supervisionado: é baseado apenas nos estímulos recebidos pela rede neural. Basicamente, a rede deve aprender a “categorizar” os estímulos. Aprendizagem Supervisionada  Este curso vai se ocupar com o desenvolvimento de técnicas para aprendizado supervisionado e não-supervisionado em redes neurais artificiais.  Pelo fato de serem mais intuitivas, técnicas de aprendizado supervisionado serão abordadas primeiro.  Ideia intuitiva: controle de processos (ex. pouso e decolagem de aviões)
  • 93. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 93  Exemplos de problemas de engenharia que podem ser apresentados na forma de um problema de aprendizado supervisionado:  classificação e reconhecimento de padrões  predição de séries temporais  identificação de sistemas  controle de processos  projeto de filtros em processamento de sinais Formalização do processo de aprendizado supervisionado  Seja dj(t) a resposta desejada para o neurônio j no instante t e yj(t) a resposta observada do neurônio j no instante t, obtida através de um estímulo x(t) presente na entrada da rede neural.  x(t) e dj(t) constituem um EXEMPLO de par estímulo-resposta apresentado ao neurônio no instante t, possivelmente extraídos de um ambiente ruidoso cujas distribuições de probabilidade são desconhecidas.
  • 94. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 94  ej(t) = dj(t)  yj(t) é o sinal de erro observado na saída do neurônio j no instante t. Observe que, em ambiente ruidoso, ej(t) é uma variável aleatória.  O processo de aprendizado supervisionado tem por objetivo corrigir este erro observado (em todos os neurônios) e, para tanto, busca minimizar um critério (função objetivo) baseado em ej(t), j=1,2,…,o, onde o é o número de neurônios da rede neural, de maneira que, para t suficientemente alto, yj(t), j=1,2,…,o, estejam próximos de dj(t), j=1,2,…,o, no sentido estatístico.  Um critério muito utilizado é o de erro quadrático médio:         o j j te o EJ 1 2 )( 1 .  Um conceito que está implícito em toda esta análise é a hipótese de estacionariedade dos processos aleatórios presentes.  Além disso, para minimizar J é necessário conhecer as características estatísticas do sistema.
  • 95. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 95 ej(t)  One or more layers of hidden neurons Output neuron j dj(t)yj(t)  + x(t) Multi-layer Feedforward Network Figura 13: Aprendizagem supervisionada.  Uma aproximação para o critério é utilizar o valor instantâneo do erro quadrático médio:   o j j ke o kJJ 1 2 )( 1 )( .  Nesta fase do curso, vamos considerar que a minimização de J(t) é realizada apenas em relação aos pesos sinápticos da rede neural.
  • 96. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 96 Aprendizagem Não Supervisionada  No paradigma não supervisionado ou auto-organizado não existe um supervisor para avaliar o desempenho da rede em relação aos dados de entrada.  Nenhuma medida de erro é utilizada para realimentar a rede.  Os dados são ditos não rotulados, no sentido de que as classes às quais eles pertencem ou as saídas desejadas da rede são desconhecidas.  A rede se adapta a regularidades estatísticas nos dados de entrada, desenvolvendo uma capacidade de criar representações internas que codificam as características dos dados de entrada, tornando-se, portanto, capaz de identificar a quais classes novos padrões pertencem.  Geralmente as redes auto-organizadas empregam um algoritmo competitivo de aprendizagem.  Na aprendizagem competitiva, os neurônios de saída da rede competem entre si para se tornarem ativos, com um único neurônio sendo o vencedor da competição.
  • 97. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 97 Input patterns Environment Neural Network Figura 14: Aprendizagem não supervisionada.  Esta propriedade é que faz com que o algoritmo seja capaz de descobrir regularidades estatísticas no conjunto de dados.  Neurônios individuais aprendem a se especializar a conjuntos (grupos ou clusters) de padrões similares. Eles se tornam detectores ou extratores de características para diferentes classes dos dados de entrada.  Ideia intuitiva: agrupamento de dados (p. ex. balões coloridos)
  • 98. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 98 Formalização do processo de aprendizado competitivo  Para que um neurônio i seja o vencedor a distância entre o vetor de pesos wi deste neurônio e um determinado padrão de entrada x deve ser a menor dentre todos os outros neurônios da rede, dada uma métrica de distância |||| (geralmente utiliza-se a distância Euclidiana).  A ideia é encontrar o neurônio cujo vetor de pesos seja o mais parecido ao padrão de entrada, ou seja: i = arg mini ||x  wi||, i.  Se um neurônio não responde a um padrão de entrada, ou seja, não é o vencedor, então nenhuma adaptação é sofrida por este neurônio.  Entretanto, o neurônio i que ganhou a competição sofre um ajuste wi no seu vetor de pesos na direção do vetor de entrada:
  • 99. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 99      competiçãoaperdese0 competiçãoaganhase)α( i ii i wx w onde  indica o tamanho do passo a ser dado na direção de x. O parâmetro  é conhecido como taxa de aprendizagem. Aprendizagem Por Reforço  A aprendizagem por reforço é distinta das outras abordagens, pois neste caso não existe uma interação direta com um supervisor ou modelo explícito do ambiente.  Geralmente, a única informação disponível é um valor escalar que indica a qualidade do desempenho da RNA.  Na aprendizagem por reforço existe um objetivo a ser alcançado. Durante o processo de aprendizagem, a rede “tenta” algumas ações (saídas) e recebe um sinal de reforço (estímulo) do ambiente que permite avaliar a qualidade de sua ação.  O sistema em aprendizagem seletivamente retém as ações que levam a uma maximização dos sinais de reforço.
  • 100. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 100  Ideia intuitiva: ex. ensinar animais circenses.  A cada iteração t o sistema em aprendizagem recebe uma entrada x(t) (representando o estado do ambiente), fornece uma saída y(t) e, no próximo passo, recebe um escalar de reforço r(t+1) e um novo estado do ambiente x(t+1).  Portanto, os dois conceitos básicos por trás da aprendizagem por reforço são: busca por tentativa e erro e reforço retardado. Estado do ambiente (dado de entrada) Sinal de reforço Saída da rede Ambiente Rede Neural Figura 15: Aprendizagem por reforço.
  • 101. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 101 8. A Regra de Hebb  Após a publicação do trabalho de McCulloch & Pitts em 1943, Norbert Wiener publicou um livro famoso, em 1948, denominado Cybernetics, seguido pela publicação do livro The Organization of Behavior por Hebb.  No livro de Hebb, foi proposta pela primeira vez uma regra de aprendizagem através da modulação (ou modificação) de pesos sinápticos.  Basicamente, Hebb propôs que a efetividade de uma sinapse aumenta devido à ativação repetida de um neurônio (por outro neurônio). Com suas próprias palavras:  “Quando o axônio de uma célula A está próximo o suficiente de excitar uma célula B ou persistentemente contribui para sua ativação, algum processo de crescimento ou variação metabólica ocorre em uma ou ambas as células, tal que a efetividade da célula A em ativar a célula B é aumentada.”
  • 102. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 102  Este postulado requer uma mudança no peso sináptico entre células quando as células pré- e pós-sinápticas estão ativas simultaneamente.  Hebb sugeriu que esta mudança era a base para a aprendizagem associativa, resultando em uma modificação duradoura no padrão de atividade de uma rede neural.  Esta regra é generalizada dentro da literatura de RNAs, resultando na denominada regra de Hebb generalizada. Esta regra propõe que mudanças nos pesos das conexões são dadas pelo produto da atividade pré-sináptica e pós-sináptica: wij(t) =  yi(t) xj(t), onde wij(t) é a mudança a ser aplicada no neurônio i,  é um fator multiplicativo denominado de taxa de aprendizagem, yi é a saída do neurônio i, xj é a entrada do neurônio j, e t é o índice de tempo.  Note que esta equação deixa clara a natureza correlacional ou associativa da regra de atualização de Hebb.
  • 103. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 103 o Sabe-se que boa parte da memória humana é associativa. Neste tipo de memória, um evento está ligado a outro evento, de forma que a ocorrência do primeiro evento resulta na ocorrência do evento ligado. o Em sua versão mais simples, um estímulo está ligado a uma resposta.  A diferença principal entre a proposta original e a regra generalizada é o fato de que no caso generalizado tanto os estímulos excitatórios quanto os inibitórios influenciam na atividade do neurônio.  A equação acima pode ser expressa de forma genérica como sendo: wij(t) = g(yi(t), xj(t)), onde g(,) é uma função de ambos os sinais, pré- e pós-sináptico.  Portanto, o peso de um neurônio i é atualizado de acordo com a seguinte regra: wij(t+1) = wij(t) + wij(t).
  • 104. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 104 9. O Perceptron Simples  Rosenblatt introduziu o perceptron como a arquitetura mais simples de rede neural capaz de classificar padrões linearmente separáveis.  O algoritmo de treinamento do perceptron foi o primeiro modelo de treinamento supervisionado, embora alguns perceptrons fossem auto-organizados.  Basicamente, o perceptron consiste em uma única camada de neurônios com pesos sinápticos e bias ajustáveis.  Se os padrões de entrada forem linearmente separáveis, o algoritmo de treinamento do perceptron possui convergência garantida, ou seja, é capaz de encontrar um conjunto de pesos que classifica corretamente os dados.  Os pesos dos neurônios que compõem o perceptron serão tais que as superfícies de decisão produzidas pela rede neural estarão apropriadamente posicionadas no espaço.
  • 105. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 105  Os neurônios do perceptron são similares ao neurônio de McCulloch & Pitts (função de ativação tipo degrau), mas possuem pesos associados, incluindo o bias. 9.1. Perceptron Simples para Classificação de Padrões  O algoritmo do perceptron funciona como a seguir. o Para cada padrão de treinamento (dado de entrada) xi, a saída da rede yi é calculada. o Em seguida, é determinado o erro ei entre a saída desejada para este padrão di e a saída da rede yi, ei = di  yi. o O vetor de pesos conectando as entradas (neurônios pré-sinápticos) a cada saída (neurônios pós-sinápticos) e o bias do neurônio são atualizados de acordo com as seguintes regras: wi(t+1) = wi(t) +  ei xi T , b(t+1) = b(t) +  ei, onde w  1m , x  m1 , e b  11 .
  • 106. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 106  Considere agora o caso mais simples do perceptron com um único neurônio. u y  x1 x2 xm f(u) Junção somadora Função de ativação Saída … w1 w2 wm +1 w0 = b Entradas  O objetivo desta rede, mais especificamente deste neurônio, é classificar alguns padrões de entrada como pertencentes ou não pertencentes a uma dada classe.  Considere o conjunto de dados de entrada como sendo formado por N amostras (x1,d1), (x2,d2), …, (xN,dN), onde xj é o vetor j de entradas, e dj sua saída desejada (classe) correspondente.
  • 107. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 107  Seja X  mN , a matriz de dados de entradas com N padrões de dimensão m cada (colunas de X), e d  1N o vetor de saídas desejadas. O algoritmo abaixo pode ser utilizado para treinar o perceptron de um único neurônio: procedure [w] = perceptron(max_it,E,,X,d) initialize w //por simplicidade, inicialize com 0 initialize b //por simplicidade, inicialize com 0 t  1 while t < max_it & E > 0 do, E  0 for i from 1 to N do, //para cada padrão de entrada yi  f(wxi + b) //determine a saída para xi ei  di  yi //determine o erro para xi w  w +  ei xi T //atualize o vetor de pesos b  b +  ei //atualize o bias E  E + ei 2 end for t  t + 1 end while end procedure Algoritmo 1: Algoritmo de treinamento para o perceptron simples.
  • 108. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 108 9.2. Exemplo de Aplicação e Motivação Geométrica  Considere o problema de utilizar o perceptron com um único neurônio para representar a função lógica AND. (0,1) (1,1) (0,0) (1,0) Entradas Saídas x1 x2 x1 AND x2 0 0 0 0 1 0 1 0 0 1 1 1  1000 1010 1100        dX  A saída yi do neurônio para o vetor de dados xi pode ser representada na forma: yi = f(wxi + b)  Para quaisquer valores de w e b, a função f(u) separa o espaço de entradas em duas regiões, sendo que a curva de separação (superfície de decisão) é uma linha reta.
  • 109. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 109  A equação desta reta é dada por: w1 x1 + w2 x2 + b = 0  Se a função de ativação do tipo sinal (degrau) possui  = 0, então w1 x1 + w2 x2 + b  0 resultará em uma saída positiva da rede.  Inicializando todos os pesos e o limiar em zero w = [0 0] e b = 0, e definindo  = 1, o algoritmo de treinamento do perceptron fornece o seguinte: w1 = 2; w2 = 1; b =  3, portanto 2x1 + 1x2  3 = 0.  Obs.: note que os pesos do perceptron também poderiam ter sido inicializados com valores aleatórios pequenos. o Neste caso, a superfície de decisão obtida seria diferente. o Considere para efeitos ilustrativos: w1 = 0.015; w2 = 0.768; b = 0.971. o A figura a seguir mostra as duas superfícies de decisão e os pesos e bias determinados pelo algoritmo de treinamento do perceptron.
  • 110. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 110 (0,1) (1,1) (0,0) (1,0) w1 = 2; w2 = 1; b = 3 w1 = 2.015; w2 = 0.768; b = 2.029 9.3. Perceptron com Múltiplos Neurônios  Note que a regra de aprendizagem do perceptron é do tipo supervisionada, empregando a aprendizagem por correção de erro.  Esta regra pode ser facilmente estendida para atualizar os pesos de uma rede de neurônios em uma única camada.
  • 111. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 111  Neste caso, para cada vetor de entrada xi haverá um vetor de saídas da rede: yi = f(Wxi + b); W  om , xi  m1 , i = 1,…,N, yi  o1 , e b  o1 , D  oN .  Existe agora um vetor de erros para cada padrão de entrada: ei = di  yi. procedure [W] = perceptron(max_it,,X,D) initialize W //for simplicity set it to zero initialize b //for simplicity set it to zero t  1 while t < max_it do, E  0 for i from 1 to N do, //para cada padrão de entrada yi  f(Wxi + b) //determine a saída da rede para xi ei  di  yi //determine o vetor de erros para xi W  W +  ei xi T //atualize a matriz de pesos b  b +  ei //atualize o vetor de bias E  E + sum(eij 2 ) //j = 1,...,o end for t  t + 1 end while end procedure Algoritmo 2: Algoritmo de treinamento para o perceptron com múltiplas saídas.
  • 112. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 112 9.4. Exemplo de Aplicação: Reconhecimento de Caracteres  Considere o problema de aplicar o perceptron com múltiplas saídas ao problema de classificação (reconhecimento) dos seguintes caracteres binários:  Cada um destes oito padrões de entrada possui uma resolução de 1210 pixels e as classes a que eles pertencem (0,1,2,3,4,6,,9) estão pré-definidas.  Vamos projetar um perceptron com oito neurônios de saída, onde cada neurônio irá corresponder a uma classe. Temos então X  1208 e D  88 (matriz diagonal).  O algoritmo de treinamento do perceptron será responsável então por definir uma hipersuperfície de decisão em um espaço de dimensão 120 capaz de classificar os dados corretamente.
  • 113. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 113 9.5. Aspectos Práticos do Treinamento do Perceptron  Condição inicial: verificou-se que diferentes conjuntos iniciais de pesos para o perceptron podem levar a diferentes superfícies de decisão. o Na verdade, o problema de ajuste supervisionado de pesos pode ser visto como um processo de busca por um conjunto de pesos que otimizam uma determinada superfície de erro. o Sendo assim, uma escolha inadequada da condição inicial da rede pode levar o algoritmo a uma convergência para ótimos locais desta superfície de erro.  Critério de convergência: no caso do perceptron, é possível garantir que, dado um conjunto de padrões linearmente separáveis, o algoritmo é capaz de encontrar uma superfície de decisão capaz de classificar corretamente os dados. o Sendo assim, é possível utilizar como critério de convergência para o perceptron simples (classificação binária) a determinação de erro igual a zero para todos os padrões de entrada.
  • 114. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 114 o Outro critério que pode ser utilizado é a adaptação por uma quantidade finita de iterações, denominadas de épocas de treinamento.  Parâmetros de treinamento: o algoritmo de treinamento do perceptron possui basicamente o parâmetro de treinamento  que deve ser definido pelo usuário.  Treinamento versus aplicação da rede: é importante diferenciar entre o processo de treinamento e aplicação da rede. o O treinamento da rede corresponde ao processo de ajuste de pesos. o Após treinada a rede poderá ser aplicada ao mesmo problema, de forma a verificar a qualidade do aprendizado, ou a outro problema, de forma a verificar sua capacidade de generalização. procedure [y] = perceptron(W,b,Z) for i from 1 to N do, //para cada padrão de entrada xi yi  f(Wxi + b) //determine as saídas da rede end for end procedure Algoritmo 3: Algoritmo usado para executar um perceptron treinado.
  • 115. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 115 10. Adaline  Praticamente ao mesmo tempo em que Rosenblatt propôs o perceptron, Widrow & Hoff desenvolveram o algoritmo dos quadrados mínimos (least square) ou regra delta.  Eles introduziram a rede Adaline (Adaptive Linear Element), muito similar ao perceptron, porém com função de ativação linear ao invés de função sinal.  O objetivo do algoritmo de treinamento é minimizar o erro quadrático médio (MSE ou EQM) entre a saída da rede e a saída desejada. 10.1. A Regra Delta  Seja (x1,d1),(x2,d2),…,(xN,dN), um conjunto de pares de entrada-saída, onde xj é o vetor de entradas j e dj seu correspondente vetor de saídas (desejadas).  A regra delta ajusta os pesos e o limiar da rede neural de forma a minimizar o erro (diferença) entre a saída da rede e a saída desejada para todos os padrões de treinamento.
  • 116. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 116  A soma dos erros quadráticos (SEQ) para um determinado padrão é dada por:    o i ii o i i yde 1 2 1 2 )(  O gradiente de , também denominado de índice de desempenho ou função custo, é o vetor que consiste das derivadas parciais de  em relação a cada um dos pesos.  Este vetor fornece a direção de crescimento mais rápido do erro (). o Portanto, a direção oposta ao gradiente de  é a direção de maior decrescimento da função custo.  Sendo assim, o erro pode ser reduzido ajustando-se os pesos da rede da seguinte forma: IJ IJIJ w ww    α onde wIJ é um peso arbitrário conectando o neurônio pré-sináptico J ao neurônio pós-sináptico I e  é a taxa de aprendizagem.
  • 117. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 117  Torna-se necessário, portanto, determinar de forma explícita o gradiente do erro em relação ao peso arbitrário.  Como o peso wIJ influencia apenas a unidade I, o gradiente do erro é dado por: 2 1 2 )()( II IJ o i ii IJIJ yd w yd ww           Mas, yI = f(wI.x) = f(j wIj.xj) = j wIj.xj (ativação linear) JII IJ I II IJ xyd w y yd w )(2)(2        Portanto, a regra delta para atualizar o peso do neurônio wIJ é dada por: wIJ = wIJ +  (dI  yI) xJ. bI = bI +  (dI  yI). (Note que o parâmetro  incorpora a constante 2 do gradiente.)  Em notação matricial tem-se: W = W +  ei xi T
  • 118. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 118 b = b +  ei onde W  om , xi  m1 , i = 1,…,N, ei  o1 , e b  o1 .  A beleza deste algoritmo é que, a cada iteração, ele calcula uma aproximação do vetor gradiente do erro multiplicando o erro pelo vetor de entradas e esta aproximação pode ser utilizada em um algoritmo do tipo gradiente descendente com taxa de aprendizagem fixa. 10.2. Superfícies de Erro  Seja uma rede neural com n pesos a serem ajustados. Este conjunto de pesos pode ser visto como um ponto em um espaço n-dimensional, denominado de espaço de pesos (weight space).  Se a rede neural é utilizada para classificar um conjunto de padrões, para cada um destes padrões a rede irá gerar um determinado sinal de erro.
  • 119. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 119  Isso significa que cada conjunto de pesos e bias possui um valor associado de erro. Os valores de erro para todos os conjuntos possíveis de pesos e bias definem uma superfície no espaço de pesos denominada de superfície de erro.  A questão que resulta então é qual o papel do algoritmo de treinamento. A forma que boa parte dos algoritmos supervisionados opera é através da minimização de uma função de custo baseada no erro entre as saídas da rede e as saídas desejadas.  Três conclusões importantes devem ser salientadas: o A visualização do treinamento de RNAs via minimização do erro permite a interpretação do problema como um problema de otimização, que é geralmente não linear e irrestrito. Isso permite a aplicação de diversas técnicas de otimização não linear irrestrita para o treinamento de RNAs feedforward. o A superfície de erro possui, potencialmente, uma grande quantidade de mínimos locais, sugerindo que os algoritmos de treinamento estão sujeitos a ficarem presos em mínimos locais da superfície de erro.
  • 120. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 120 o Outros métodos de busca como algoritmos evolutivos também podem ser empregados no treinamento de RNAs. Global minimum Local minimum
  • 121. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 121 11. Redes Neurais Competitivas: Introdução  A auto-organização é um fenômeno predominante no cérebro humano. É sabido que as propriedades estruturais e fisiológicas das sinapses no córtex cerebral são influenciadas pelos padrões de atividade que ocorrem nos neurônios sensoriais.  Mesmo sem conhecer a priori os rótulos (ou classes) de um conjunto de objetos, naturalmente nós os agrupamos em diferentes classes baseado em critérios de similaridade ou dissimilaridade. Ex.: organização de roupas em uma gaveta.  As redes neurais competitivas, que fazem parte do paradigma de aprendizagem auto-organizada (não supervisionada), são geralmente empregadas para explorar dados não-rotulados, ou seja, dados de entrada cujas classes não são conhecidas.  Sendo assim, a implementação de modelos computacionais para ajuste de pesos sinápticos de RNAs via treinamento não supervisionado deve recorrer apenas aos dados de entrada, tomados como amostras independentes de uma distribuição de probabilidade desconhecida.
  • 122. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 122  Duas abordagens têm sido propostas para aprendizado não supervisionado: 1. Técnicas para estimação de densidades de probabilidade, que produzem modelos estatísticos explícitos para descrever os fenômenos responsáveis pela produção dos dados de entrada. Ex: redes Bayesianas. 2. Técnicas de extração de regularidades (ou irregularidades) estatísticas diretamente dos dados de entrada. Ex: redes competitivas.  Uma rede neural competitiva deve então se adaptar a regularidades estatísticas nos dados de entrada, desenvolvendo uma capacidade de criar representações internas que codificam as características dos dados de entrada, tornando-se, portanto, capaz de identificar a quais classes novos padrões pertencem.  Essa característica torna as redes competitivas quantizadores vetoriais (Ahalt et al., 1990), ou seja, estruturas capazes de representar um conjunto de dados através de um conjunto de protótipos (quantizadores vetoriais), permitindo, dentre outras coisas, uma compressão dos dados.
  • 123. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 123 11.1. Quantização Vetorial  A quantização vetorial é um processo que se beneficia da estrutura (regularidade estatística) dos dados sendo quantizados (Gray, 1984).  O espaço dos vetores a serem quantizados é dividido em um número de regiões (grupos ou clusters) e um vetor protótipo é calculado para cada região.  Dado qualquer vetor de entrada a ser quantizado, a região à qual ele pertence é determinada e o vetor é representado pelo protótipo daquela classe.  Ao invés de armazenar ou transmitir um dado vetor, um símbolo que indica o protótipo apropriado é usado, podendo resultar em economias consideráveis de memória ou largura de banda.  Por outro lado, o processo de quantização pode distorcer a informação.  Formalmente, a quantização vetorial mapeia vetores arbitrários em um espaço m- dimensional em um conjunto de símbolos I. Associado a cada símbolo i  I, há um protótipo wi.
  • 124. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 124  À coleção de todos os protótipos possíveis denominamos de conjunto de protótipos ou codebook.  O processo de quantização vetorial envolve a determinação de um conjunto de protótipos que seja ótimo em relação a algum critério, por exemplo, um critério de distorção em relação aos dados de entrada.  Entretanto, a avaliação deste critério requer o conhecimento a priori da distribuição de probabilidade dos dados.  Como esta distribuição normalmente não é conhecida, a determinação dos protótipos é feita através de um processo de treinamento, ou aprendizagem, dando origem à chamada quantização vetorial adaptativa (learning vector quantization).  Durante o processo de treinamento, uma medida de distorção d(x,wi) é usada para determinar a distorção do protótipo wi em relação ao padrão de entrada x.  Esta medida pode ser vista como o custo de se representar x por wi.
  • 125. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 125  A determinação de quais dados de entrada pertencem a cada região permite o agrupamento dos dados em diferentes regiões (clusters).  É importante notar que neste processo a medida de distorção exerce um papel fundamental e deve ser levada em consideração durante o projeto do quantizador vetorial.  O algoritmo adaptativo usado para determinar os protótipos pode ser descrito como a seguir: 1. Cada vetor de entrada é comparado com os protótipos existentes e a correspondente distorção é calculada. 2. Aquele protótipo mais similar ao vetor de entrada, ou seja, que apresenta menor distorção, é selecionado e é modificado de forma a refletir a inclusão deste novo vetor de dados na sua região (partição ou cluster). 12. Rede Neural Competitiva: Algoritmo Básico  Uma rede competitiva simples é do tipo feedforward com uma única camada.
  • 126. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 126  Todos os neurônios de saída são lineares e idênticos, com exceção de seus respectivos vetores de pesos associados.  Para cada padrão de entrada apresentado os neurônios de saída irão competir entre si para determinar qual neurônio é mais estimulado pelo padrão de entrada, com um único neurônio sendo ativado para cada padrão.  Esta característica é denominada de winner-takes-all.  O neurônio vencedor da competição será movido na direção do padrão de entrada, como ilustra a figura abaixo. x(t) wi(t) (x(t)wi(t)) wi(t+1)
  • 127. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 127  Dessa forma, os neurônios da rede aprendem a se especializar em grupos (clusters) de padrões similares, tornando-se detectores ou extratores de características (quantizadores vetoriais) para diferentes grupos de padrões de entrada.  Para que um neurônio i seja o vencedor, a distância entre o vetor de pesos wi deste neurônio e um determinado padrão de entrada x deve ser a menor dentre todos os outros neurônios da rede, dada uma métrica de distorção ou de distância |||| (geralmente utiliza-se a distância Euclidiana).  A ideia é encontrar o neurônio cujo vetor de pesos seja o mais parecido ao padrão de entrada, ou seja: i = arg mini ||x  wi||, i.  Se um neurônio não responde a um padrão de entrada, ou seja, não é o vencedor, então nenhuma adaptação é sofrida por este neurônio.
  • 128. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 128  Entretanto, o neurônio i que ganhou a competição sofre um ajuste wi no seu vetor de pesos na direção do vetor de entrada:      competiçãoaperdese0 competiçãoaganhase)α( i ii i wx w onde  indica o tamanho do passo a ser dado na direção de x. O parâmetro  é conhecido como taxa de aprendizagem.  Normalmente a taxa de aprendizagem é reduzida monotonicamente a zero ao longo do processo adaptativo, o que garante uma estabilização do processo auto- organizado com o passar do tempo.  O procedimento de aprendizagem de uma rede competitiva está resumido no Algoritmo 1.
  • 129. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 129 procedure [W] = compet(max_it,0,X) initialize W //normalmente uma distribuição aleatória t  1 while t < max_it do, vet_permut  randperm(N) //permutações de N for j from 1 to N do, //para cada padrão de entrada //selecione o padrão i a ser apresentado i  vet_permut(j) //apresentação aleatória i(x)  arg minj ||xi  wj(t)||, j = 1,…,o //competição wi(t+1) = wi(t) + (t) [x(t)  wi(t)] //cooperação e adaptação end for   reduce() //até um valor mínimo t  t + 1 end while end procedure Algoritmo 1: Algoritmo de aprendizagem competitiva.  Dentre as aplicações de redes competitivas encontram-se: otimização combinatória, análise de dados, agrupamento (clusterização), classificação, robótica, processamento de imagem, reconhecimento de padrões, reconhecimento de voz, bioinformática e análise de dados econômicos.
  • 130. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 130 13. Mapas Auto-Organizáveis de Kohonen  Nota: Material preparado a partir da tese de doutorado de Lalinka C. T. Gomes, FEEC/Unicamp, 2006.  Os mapas auto-organizáveis (SOM – do inglês self-organizing maps) constituem uma importante classe de redes neurais artificiais e um dos principais representantes do paradigma de aprendizado não supervisionado. 13.1. Fundamentos  O córtex cerebral pode ser dividido em diversas regiões, nas quais diferentes informações sensoriais são representadas por mapas topologicamente ordenados e regiões distintas respondem a diferentes estímulos (BOHEME et al., 1994).  Dessa forma, há fortes indícios de que existe uma região específica do córtex cerebral dedicada a estímulos auditivos, outra a estímulos visuais, por exemplo.  Visando uma maior rapidez na resposta a um estímulo, neurônios que participam de uma mesma função situam-se topologicamente próximos.
  • 131. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 131  Portanto, estímulos similares tendem a produzir padrões de atividade semelhantes e em regiões vizinhas junto ao mapa neural.
  • 132. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 132  Os mapas auto-organizáveis (KOHONEN, 1982a; KOHONEN, 1997; KOHONEN et. al., 2001) são modelos matemáticos na forma de redes neurais artificiais que procuram reproduzir computacionalmente de forma simplificada este mecanismo biológico.  Padrões de entrada similares, de acordo com algum critério, são mapeados em um mesmo neurônio ou em neurônios vizinhos no mapa auto-organizável, como ilustra a figura abaixo.  O processo de aprendizado baseia-se em um conjunto de padrões de entrada, que correspondem aos estímulos do ambiente.  Uma ordem global é alcançada através de interações locais, que ocorrem em dois níveis (HAYKIN, 1999): i) a partir da interação direta com o ambiente; e ii) via relações de vizinhança entre neurônios situados topologicamente próximos.
  • 133. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 133 R n Mapa auto-organizável Espaço de entrada
  • 134. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 134  Em um mapa auto-organizável, cada neurônio i possui um vetor de pesos sinápticos wi = [wi1, wi2,...,wim]T , onde m representa a dimensão do espaço de entrada.  Os neurônios encontram-se distribuídos em um arranjo, geralmente de dimensão entre 1 e 3, e competem entre si para serem ativados na presença de um padrão de entrada.  Ao final do processo competitivo, que se dá após a apresentação de um dos padrões de entrada, haverá somente um neurônio vencedor.  O aprendizado não supervisionado conduz a rede neural a uma representação interna dos padrões de entrada, geralmente com redução dimensional, de modo a produzir um mapa neural com maior poder de interpretação dos dados originais e que ainda seja capaz de refletir as características estatísticas mais relevantes do conjunto de padrões de entrada.
  • 135. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 135  Como os neurônios que compõem um mapa auto-organizável são estimulados pelos dados de entrada, os vetores de pesos sinápticos dos neurônios apresentam a mesma dimensão do espaço de entrada.  A projeção dos dados de entrada de um espaço de dimensão m em um mapa de dimensão normalmente entre 1 e 3 deve permitir a preservação de certas propriedades estatísticas dos dados através de uma minimização da violação topológica, a qual pode ser estimada pela diferença entre a posição relativa dos dados e a posição relativa das excitações promovidas pelos dados junto ao mapa neural. 13.2. Projeto de Mapas Auto-Organizáveis Modelo de neurônio  Como o processo de treinamento é baseado em competição entre os neurônios, o modelo de neurônio empregado nos mapas auto-organizáveis é do tipo linear.
  • 136. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 136  Isso é consequência do fato de que o aspecto de interesse no processo competitivo é verificar qual neurônio é mais estimulado por cada padrão de entrada. Arquitetura da rede  A arquitetura de um SOM normalmente é do tipo feedforward com uma única camada, tendo os m neurônios de entrada totalmente conectados aos neurônios de saída.  Assim, os pesos sinápticos dos neurônios são arranjados na forma de vetores m- dimensionais, onde m é o número de atributos dos padrões de entrada.  Uma característica distinta deste tipo de rede, entretanto, é o fato de que os neurônios de saída da rede são normalmente arranjados seguindo um padrão bem definido. Por exemplo, formando uma grade (grid) uni- ou bi-dimensional de saída, como ilustrado na figura a seguir.
  • 137. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 137 Unidades de entrada Unidades de saída Conexões sinápticas Grid uni-dimensional. Conexões sinápticas Unidades de saída Unidades de entrada Grid bi-dimensional.
  • 138. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 138  Exemplo: mapeamento rede neural  espaço cartesiano 1 0.1 0.28 0.35 0.47 0.18 0.27 0.32 0.5 (0.1,0.27) (0.28,0.18) (0.35,0.5) (0.47,0.32) 1 2 2 3 3 4 4 0.1 0.27 0.28 0.18 0.47 0.32 0.35 0.5 w2 w1 Algoritmo de treinamento  A cada época os padrões de entrada são reordenados e apresentados ao SOM com o objetivo de desvincular o processo de auto-organização do mapa da sequência de apresentação dos padrões.
  • 139. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 139  Existem duas principais formas de treinamento: i) sequencial ou local; e ii) em lote ou batelada.  Sequencial: os pesos sinápticos dos neurônios são atualizados a cada apresentação de um padrão de entrada.  Lote: os pesos sinápticos são atualizados somente após um ciclo completo de apresentação de padrões. Isso é feito tomando-se a resultante das contribuições de todos os padrões para cada neurônio.  O algoritmo de treinamento do SOM possui três etapas fundamentais: 1. Competição: o neurônio vencedor que apresentar maior nível de ativação para o padrão de entrada apresentado à rede neural será selecionado. 2. Cooperação: é definida uma vizinhança topológica de neurônios associada ao vencedor, sendo que os vetores de pesos de todos os neurônios desta vizinhança sofrerão uma adaptação de mesma polarização.
  • 140. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 140 3. Adaptação: os pesos sinápticos do neurônio vencedor e de sua vizinhança são modificados.  O treinamento é finalizado quando o mapa atinge um estado de estabilidade, em que não ocorrem variações significativas nos pesos sinápticos após a apresentação de todos os padrões de treinamento.  A figura abaixo resume o algoritmo de treinamento do SOM. Inicialização Sináptica Processo Competitivo Processo Cooperativo Processo Adaptativo Satisfaz Critério de Parada? Fim Início Sim Não
  • 141. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 141 13.3. Fase Competitiva  Os padrões de entrada são sucessivamente apresentados a todos os neurônios de saída do SOM que vão competir entre si para serem ativados, sendo que apenas um neurônio será o vencedor para cada padrão apresentado.  Como no caso das redes competitivas básicas, essa regra de competição é denominada “o vencedor leva tudo” (do inglês winner-takes-all).  No processo competitivo há três conceitos fundamentais: 1. Um conjunto de neurônios idênticos, com exceção de seus respectivos vetores de pesos, cuja função é fornecer a posição do neurônio no espaço m (espaço dos dados originais). 2. Um critério de similaridade adotado para comparar os padrões de entrada com os vetores de pesos dos neurônios. 3. Um mecanismo de competição que permita determinar o neurônio vencedor para os padrões de entrada.
  • 142. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 142  O nível de ativação de cada neurônio pode ser determinado de duas formas: i) por um critério de similaridade entre o vetor correspondente ao padrão de entrada e o vetor de pesos de cada neurônio; ou ii) determinando-se a entrada líquida de cada neurônio.  No primeiro caso, que é o mais usual, quanto maior for o grau de similaridade entre um neurônio e um determinado padrão de entrada, maior será o nível de ativação do neurônio. De forma recíproca, quanto menor a distância entre o padrão de entrada e o vetor de pesos de um neurônio, maior é a ativação.  Assim, o objetivo do processo competitivo é identificar o neurônio vencedor, o que pode ser feito pela seguinte equação: i(x) = arg minj ||x  wj||, j = 1, … , o, onde x é o padrão de entrada e wj é o vetor de pesos associados ao neurônio j.  A figura abaixo ilustra o processo competitivo.
  • 143. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 143 1 2 3 4 5 67 8 9 Padrão de entrada Neurônio vencedor x d d d d d d d d d x1 x2 x3 x4 x5 x6 x7 x8 x9
  • 144. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 144 13.4. Fase Cooperativa  O processo cooperativo é inspirado em um mecanismo neurobiológico, no qual um neurônio que se encontra no estado “ativo” tende a influenciar o estado dos neurônios vizinhos, de modo que vizinhos situados topologicamente mais próximos sofrem maior influência.  Para os casos dos grids de saída uni- e bi-dimensional, as figuras abaixo ilustram diferentes graus de vizinhança. Vizinho de grau 0 (neurônio vencedor) Vizinho de grau 1 Vizinho de grau 2 Vizinho de grau 3
  • 145. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 145 Vizinho de grau 0 (neurônio vencedor) Vizinho de grau 1 Vizinho de grau 2 Vizinho de grau 3  Comumente, a analogia biológica de vizinhança é representada por uma função Gaussiana dada por:
  • 146. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 146           2 2 )(, )(, 2 exp x x ij ij D h onde i(x) denota o neurônio vencedor para o vetor de entradas x; Dj,i(x) é a distância no mapa entre o neurônio vencedor i e cada neurônio j de sua vizinhança, ou seja, o grau de vizinhança; e  é o desvio padrão, empregado no controle da amplitude da vizinhança.  O desvio padrão é controlado de modo que a amplitude da vizinhança seja reduzida com o tempo, de acordo com a seguinte equação: (t) = 0 exp(t/2), onde 2 é uma constante de tempo e t é a época. O valor 0 é definido pelo usuário e é dependente da abrangência da vizinhança requerida para a aplicação.  Um valor comumente utilizado para 2 é dado pela fórmula (HAYKIN, 1999): 0 2 log 1000 τ   .
  • 147. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 147  A figura abaixo mostra a função Gaussiana utilizada na representação da vizinhança e a influência do neurônio vencedor em relação a cada vizinho. 2 01 23 12 3 1.0 hji dji 01 23 12 3 hji dji Winner
  • 148. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 148 13.5. Fase Adaptativa  Durante o processo adaptativo, os vetores de pesos sinápticos do neurônio vencedor e de sua vizinhança são atualizados de forma a se aproximarem do padrão de entrada apresentado, respeitando a relação de vizinhança definida durante o processo cooperativo.  A atualização do vetor de pesos sinápticos wi é dada por: wi(t+1) = wi(t) + (t) hji(x)(t) [x(t)  wi(t)], onde hj,i(x) é a função de ativação de vizinhança definida anteriormente; x é o vetor associado ao padrão de entrada e (t) é a taxa de aprendizagem na época t.  A atualização da taxa de aprendizagem é dada pela seguinte equação: (t) = 0 exp(t/1), onde 0  0.1, 1  1,000, 0 = raio do grid (todos os neurônios são considerados vizinhos do vencedor no início do treinamento).
  • 149. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 149  As figuras abaixo ilustram o processo de adaptação para uma rede com grid uni- e bi-dimensional de saída. vencedor Padrão de entrada Padrão de entrada  O algoritmo abaixo resume o procedimento para treinamento de um SOM (de Castro, 2006).
  • 150. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 150 procedure [W] = som(max_it,0,0,1,2,X) initialize W //normalmente uma distribuição uniforme t  1 while t < max_it do, vet_permut  randperm(N) //permutações de N for j from 1 to N do, //para cada padrão de entrada //selecione o padrão i a ser apresentado i  vet_permut(j) //apresentação aleatória i(x)  arg minj ||xi  wj(t)||, j = 1,…,o //competição hji(x) = exp(||rj  ri(x)||2 /22 ) //vizinhança wi(t+1) = wi(t) + (t) hji(x)(t) [x(t)  wi(t)] //cooperação e adaptação end for   reduce() //até um valor mínimo   reduce() t  t + 1 end while end procedure Algoritmo 1: Algoritmo de aprendizagem para um mapa auto-organizável de Kohonen (SOM).
  • 151. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 151 14. Exemplos de Aplicação  Como discutido anteriormente, a aplicação das redes competitivas pode ocorrer em diversos cenários. Esta seção ilustra algumas delas. 14.1. Agrupamento de dados (Clusterização) Caso 1: Ausência de agrupamentos 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
  • 152. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 152 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 910 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 3435 36 3738 39 40 41 424344 45 46 47 48 49 50
  • 153. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 153 Caso 2: Presença de agrupamentos bem distintos (I) (II) (III) (IV)
  • 154. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 154 14.2. O Problema da Identificação dos grupos  A figura a seguir exibe um gráfico de barras (vetor-U) indicando as distâncias entre neurônios vizinhos, permitido a visualização dos grupos (clusters) formados pelo conjunto de padrões (Ultch, 1993). (I) (II) (III) (IV) (I)
  • 155. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 155  Nesse caso, como a vizinhança é circular, podemos observar claramente a existência de quatro clusters.  Note que a distância entre neurônios vizinhos representantes de um mesmo cluster é relativamente pequena quando comparada à distância entre neurônios vizinhos representantes de clusters distintos.  Dessa forma, a separação dos clusters através do gráfico de barras é efetuada estabelecendo-se um limiar de distância entre neurônios vizinhos, de modo que uma distância acima do limiar indique um novo cluster.  Vale observar que podem existir neurônios que não se encontram associados a um padrão específico, apresentando uma distância relativamente grande entre os clusters formados.  Neste caso, os neurônios que não se encontram associados a clusters específicos podem ser eliminados através do uso de um limiar de distância, em que neurônios apresentando distância maior que este limiar para todos os clusters são eliminados.
  • 156. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 156  Um outro método seria o uso de um mapa construtivo, em que neurônios que não vencem o processo competitivo são eliminados do mapa durante o treinamento. 14.3. Ordenamento de pontos em espaços multidimensionais a) b) 1 1 102 102 b) (GOMES et al., 2002)
  • 157. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 157  a extensão para pontos em espaços de maior dimensão é imediata (generalização do problema do caixeiro viajante) 14.4. Problemas Combinatoriais (Caixeiro Viajante)
  • 158. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 158 14.5. Questões a serem investigadas  Sintonia de parâmetros  Neurônios que não vencem nunca (devem ser podados para aumentar eficiência)  Neurônios que vencem sempre  Dimensão do arranjo para uma dada aplicação  Número de neurônios, uma vez definido o arranjo  Inicialização dos pesos  Apresentação dos dados à rede (padrão-a-padrão ou em lote?)  Interpretação do mapa resultante (análise discriminante)  Métodos construtivos e de poda  Outras aplicações e múltiplos mapeamentos simultâneos  Comparações com ferramentas similares
  • 159. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 159 15. Quantização Vetorial Supervisionada  Na discussão sobre redes competitivas apresentada aqui verificamos que sua operação é equivalente aos processos de quantização vetorial adaptativa (learning vector quantization - LVQ).  Os métodos conhecidos como LVQ também podem ser empregados de forma supervisionada (Kohonen, 1990) e, portanto, empregados na resolução de problemas de classificação.  O processo de atualização dos vetores de pesos da rede deve ser tal que minimize o erro de classificação.  Para isso, o processo de ajuste dos pesos deve levar em consideração a classificação feita por cada protótipo.  Caso a classificação do protótipo seja correta, este será movido na direção do padrão de entrada; caso contrário, o protótipo deverá ser movido na direção oposta:
  • 160. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 160        incorretaforclassease)(α corretaforclassease)(α ji ji j wx wx w 16. Referências sobre Redes Auto-Organizadas AHAL, S. C., KRISHNAMURTHY, A. K., CHEN, P. AND MELTON, D. E., (1990), “Competitive Learning Algorithms for Vector Quantization”, Neural Networks, 3(3), pp. 277-290. BARLOW, H. B. “Unsupervised learning”, Neural Computation, 1: 295-311, 1989. BECKER, S. & PLUMBLEY, M. “Unsupervised neural network learning procedures for feature extraction and classification”, International Journal of Applied Intelligence, 6: 185-203, 1996. DE CASTRO, L.N. & VON ZUBEN, F.J. An Improving Pruning Technique with Restart for the Kohonen Self-Organizing Feature Map. Proceedings of the IEEE International Joint Conference on Neural Networks (IJCNN’99), vol. 3, pp. 1916-1919, July 1999. GOMES, L.C.T., VON ZUBEN, F.J. & MOSCATO, P.A. Ordering Microarray Gene Expression Data Using a Self-Organising Neural Network. Proceedings of the 4th International Conference on Recent Advances in Soft Computing (RASC2002), Nottingham, United Kingdom, pp. 307-312, December 2002. GRAY, R. M. (1984), “Vector Quantization”, IEEE ASSP Magazine, 1(2), pp. 4-29. KOHONEN, T. (1990), “Improved Versions of Learning Vector Quantization”, Int. Joint Conf. on Neural Networks, 1, pp. 545-550. KOHONEN, T. “Self-Organization and Associative Memory”, 3rd. edition, Springer, 1989 (1st. edition, 1984). KOHONEN, T. “Self-organized formation of topologically correct feature maps”, Biological Cybernetics, 43:59-69, 1982. KOHONEN, T. “Self-Organizing Maps”, 2nd. edition, Springer, 1997. TOOLBOX: http://www.cis.hut.fi/projects/somtoolbox/ ULTSCH, A. “Knowledge Extraction from Self-Organizing Neural Networks”, in O. Opitz et al. (eds.) Information and Classification, Springer, pp. 301-306, 1993.
  • 161. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 161
  • 162. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 162 17. Introdução às Redes de Hopfield  Neste tópico vamos estudar redes neurais recorrentes, em particular a rede de Hopfield discreta.  As redes neurais recorrentes são mais poderosas que as redes do tipo feedforward, pois são capazes de reconhecer e recuperar padrões espaciais e temporais.  Por outro lado, o comportamento destas redes recorrentes pode se tornar muito mais complexo do que o das redes feedforward.  Para as redes feedforward, a saída é constante (para uma dada entrada) e é função apenas da entrada da rede.  No caso das redes recorrentes, entretanto, a saída da rede é função do tempo.  Para uma dada entrada e uma dada saída inicial da rede, a resposta deve convergir para uma saída estável.
  • 163. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 163  Entretanto, ela também pode oscilar, explodir (para o infinito), ou seguir um comportamento caótico.  Portanto, o principal objetivo deste tópico é investigar a estabilidade de redes recorrentes.  Quando estamos falando de estabilidade em um contexto de sistemas dinâmicos não lineares, queremos dizer estabilidade no sentido de Lyapunov.  Este nome se deve ao matemático e engenheiro russo chamado Lyapunov, que propôs os fundamentos da teoria da estabilidade em 1892.  Neste tópico vamos inicialmente revisar conceitos sobre sistemas dinâmicos não lineares e em seguida apresentar redes recorrentes como sistemas dinâmicos não lineares. O tópico é concluído com a descrição da rede de Hopfield discreta.
  • 164. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 164 18. Fundamentos de Sistemas Dinâmicos Não Lineares 18.1. Noções Elementares sobre Estabilidade  Vamos começar introduzindo alguns conceitos sobre estabilidade empregando um exemplo intuitivo (Hagan et al., 1998).  Considere uma bola em movimento sobre diferentes superfícies, com fricção dissipativa e sujeita a um campo gravitacional, como ilustrado na figura abaixo. (a) (b) (c)
  • 165. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 165  No caso (a), se a superfície for movida ou se uma força for aplicada à bola, então, após um período de oscilação a bola retornará ao ponto de mínimo da superfície. Este ponto é denominado de ponto assintoticamente estável, pois qualquer perturbação levará o sistema de volta ao ponto de equilíbrio.  No caso (b), se a superfície for movida ou se uma força for aplicada à bola, então, após um período de tempo a bola irá parar, mas não necessariamente na mesma posição em que ela estava. O ponto onde a bola irá parar é denominado de estável no sentido de Lyapunov*, mas não assintoticamente estável, pois a bola não retorna à posição anterior.  No caso (c), se a superfície for movida ou se uma força for aplicada à bola, então a bola vai escorrer da superfície. Este ponto é denominado de ponto de equilíbrio instável.  Um atrator é a região do espaço (de estados) para a qual as trajetórias vão convergir, dada uma condição inicial.
  • 166. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 166  À região do espaço de estados para a qual o sistema caminha para um atrator é denominada de bacia (ou base) de atração. Bacia de atração 18.2. Sistemas Dinâmicos  A teoria de sistemas dinâmicos se ocupa em descrever matematicamente sistemas em movimento, permitindo classificar e predizer seu comportamento no tempo.  O comportamento temporal de sistemas dinâmicos pode depender tanto de variáveis observáveis como de variáveis não-observáveis.  Um sistema dinâmico consiste de duas partes: um estado e uma dinâmica.
  • 167. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 167  O estado descreve a condição atual do sistema na forma de um vetor de variáveis parametrizadas em relação ao tempo, sendo que o conjunto de estados possíveis é denominado espaço de estados do sistema.  A dinâmica descreve como o estado do sistema evolui no tempo, sendo que a sequência de estados exibida por um sistema dinâmico durante sua evolução no tempo é denominada trajetória no espaço de estados.  Hipótese: a dinâmica é determinística (em oposição à estocástica), ou seja, para cada estado do sistema, a dinâmica especifica unicamente o próximo estado (dinâmica discreta) ou então a direção de variação do estado (dinâmica contínua).  Neste caso, um sistema dinâmico é uma prescrição matemática determinística para a evolução de um estado no tempo.  Entradas externas podem influir na determinação do próximo estado.
  • 168. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 168 Tabela 1 - Taxionomia dos sistemas dinâmicos (KOLEN, 1994) ESPAÇO DE ESTADOS contínuo discreto DINÂMICA contínua sistema de equações diferenciais vidros de spin discreta sistema de equações a diferenças autômato  Quando um sistema dinâmico não apresenta a propriedade de linearidade (princípio da superposição de efeitos) ele é denominado sistema dinâmico não linear. Os sistemas físicos são inerentemente não lineares.  No entanto, quando a faixa de operação do sistema é pequena e as não linearidades são suaves, um sistema dinâmico não linear pode ser representado aproximadamente por seu correspondente sistema linearizado, cuja dinâmica é descrita por um conjunto de equações diferenciais ou a diferenças lineares.
  • 169. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 169 18.3. Sistemas Não lineares Multidimensionais  Sejam fi, gi (i=1, …, n) funções não lineares e n finito (uma série de restrições devem ser impostas a estas funções, a fim de permitir o tratamento dos sistemas resultantes com base no conhecimento e nas ferramentas disponíveis)  x1, …, xn: variáveis de estado (memória que o sistema tem do seu passado)  u1, …, up: entradas do sistema (externas e/ou por realimentação)  Número finito de equações dinâmicas acopladas (tempo contínuo e discreto)            pnnn pn uuxxtfx uuxxtfx ,...,,,...,, ,...,,,...,, 11 1111              )(),...,(),(),...,(,)1( )(),...,(),(),...,(,)1( 11 1111 kukukxkxkgkx kukukxkxkgkx pnnn pn   Representar estas equações em forma mais compacta: notação vetorial            nx x  1 x            pu u  1 u            ),,( ),,( ),,( 1 ux ux uxf tf tf t n             ),,( ),,( ),,( 1 ux ux uxg kg kg k n 
  • 170. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 170  Equações de estado: ),,( uxfx t ),,()1( uxgx kk   Equação de saída: y = h(t,x,u) y = h(k,x,u)  y  p é denominado vetor de saída e geralmente contém variáveis de interesse particular na análise de um sistema dinâmico, como variáveis que podem ser fisicamente medidas ou variáveis cujo comportamento deve ser monitorado ou controlado.  Modelo de espaço de estados (ou modelo de estados) de um sistema não linear:         )(),(,)( )(),(,)( tttt tttt uxhy uxfx f u(t) s 1 hx(t)x(t) . y(t)
  • 171. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 171      ))(),(,()( ))(),(,()1( kkkk kkkk uxhy uxgx g u(k) hx(k)x(k+1) y(k) z-1  O modelo de espaço de estados é a forma mais geral que um sistema não linear pode assumir em uma representação matemática.  Muito da eficiência da teoria de controle moderno (casos linear e não linear) pode ser atribuída à generalidade e versatilidade dos modelos de espaço de estados. Mas nem todos os sistemas físicos de dimensão finita podem ser representados nesta forma.  Efeito do uso de um modelo de estado para um sistema não linear: força a análise do sistema sob o ponto de vista da interação entrada/estado e estado/saída (a entrada geralmente não vai atuar diretamente sobre a saída).
  • 172. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 172  f, g e h, também denominadas campos vetoriais, são geralmente supostas serem funções suaves em seus argumentos, com derivadas parciais, de qualquer ordem, contínuas (objetivo: garantir a existência e unicidade de solução). Uma restrição mais forte seria supor que as funções são analíticas em seu domínio de definição.  Uma função é analítica quando ela é diferenciável em um ponto z0 de seu domínio e em uma vizinhança de z0, de modo que ela pode ser representada por uma série de potência baseada em potências de (z  z0). 18.4. Análise de Sistemas Não lineares  Envolve conceitos matemáticos mais avançados (análise funcional, geometria diferencial) que o caso linear (álgebra matricial) e o número de abordagens é muito maior que no caso linear, já que as ferramentas são predominantemente específicas ou não-universais.  O estudo do modelo de estados pode ser conduzido a partir de duas frentes:
  • 173. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 173 1. Análise: dada a descrição da dinâmica do sistema, supõe-se que a função de entrada é especificada (fixa) e estuda-se o comportamento da função x(); 2. Síntese: dada a descrição da dinâmica do sistema, bem como o comportamento desejado da função x(), o problema é encontrar uma função de entrada (função de controle) u() adequada, que vai levar x() a se comportar de um modo desejado. Ou, de uma forma mais genérica, dado apenas o comportamento desejado da função x(), o problema é encontrar a dinâmica do sistema (campo vetorial f ou g), podendo ou não haver alguma função de entrada (função de controle) associada.  Neste tópico do curso nos restringiremos à análise e síntese de equações de estado não-forçadas e invariantes no tempo (sistema autônomo):  )()( tt xfx  x(k + 1) = g(x(t)) (1)  É informativo visualizar a equação de espaço de estados apresentada acima como descrevendo o movimento de um ponto em um espaço de estados n-dimensional.
  • 174. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 174  O espaço de estados é importante, pois constitui uma ferramenta visual e conceitual para a análise da dinâmica do sistema não linear da Eq. (1), permitindo observar as características globais do movimento. t0 t1 t2 t3 Retrato de estados Trajetória 18.5. Exemplos de Comportamentos Dinâmicos Não lineares  A dinâmica de um sistema não linear é muito mais rica que a de um sistema linear, ou seja, há fenômenos dinâmicos significativos que só ocorrem na presença de não linearidades, não podendo ser descritos ou preditos por modelos lineares.
  • 175. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 175 Exemplos de fenômenos essencialmente não lineares:  Múltiplos pontos de equilíbrio isolados: um sistema linear pode apresentar apenas um ponto de equilíbrio isolado, indicando a existência de apenas um ponto de operação em estado estacionário, o qual atrai o estado do sistema, independente da condição inicial. Já no caso não linear, podem existir múltiplos pontos de equilíbrio isolados, e assim o ponto de operação em estado estacionário vai depender da condição inicial.  Ciclos limites: para um sistema linear invariante no tempo apresentar oscilação permanente, ele deve apresentar um par de autovalores no eixo imaginário. Esta condição é uma impossibilidade prática na presença de perturbações. Mesmo considerando apenas a possibilidade teórica, a amplitude da oscilação vai depender da condição inicial. Na prática, oscilações estáveis devem ser produzidas por sistemas não lineares. Há sistemas não lineares que atingem
  • 176. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 176 oscilações de amplitude e frequência fixas, independente da condição inicial. Este tipo de oscilação é denominada ciclo limite.  Oscilações sub-harmônicas, harmônicas e quase periódicas: um sistema linear estável, sujeito a uma entrada periódica, produz uma saída de mesma frequência. Um sistema não linear, sujeito a uma excitação periódica pode oscilar com frequências que são sub-múltiplos ou múltiplos da frequência de excitação. Pode ser gerada inclusive uma quase-oscilação, formada pela soma de oscilações periódicas cujas frequências não são múltiplos entre si.  Caos: um sistema não linear pode apresentar um comportamento de estado estacionário que não é equilíbrio, nem oscilação periódica, nem oscilação quase periódica, sendo denominado caos.  Múltiplos modos de comportamento: é comum que múltiplos modos de comportamento dinâmico, dentre os descritos acima, possam ser exibidos por um mesmo sistema dinâmico não linear, mesmo sem a presença de excitação. Com
  • 177. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 177 excitação, as mudanças de modo de comportamento podem ser descontínuas em relação a mudanças suaves na amplitude e frequência da excitação. 18.6. Estado Estacionário em Sistemas Não lineares  Nesta seção os sistemas dinâmicos autônomos são classificados em termos de seu comportamento de estado estacionário (ou de regime), um conceito definido para t  .  Embora haja uma diferença qualitativa marcante entre sistemas dinâmicos de tempo discreto e contínuo, ambos exibem os mesmos tipos de comportamento dinâmico em estado estacionário. Com isso, todos os resultados desta seção são válidos tanto para tempo contínuo como para tempo discreto. 18.6.1. Definição de Trajetória Definição 1: A sequência de estados exibida por um sistema dinâmico durante sua evolução no tempo é denominada trajetória.
  • 178. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 178  Embora um mesmo sistema dinâmico possa experimentar trajetórias iniciais completamente diferentes, estas trajetórias geralmente convergem para um comportamento característico quando t  , conhecido como comportamento de estado estacionário (ou de regime).  O estado estacionário corresponde ao comportamento assintótico de um sistema quando t  , tendo sentido apenas estados estacionários finitos. Definição 2: Para um dado sistema dinâmico, a diferença entre sua trajetória de estado e seu comportamento de estado estacionário é denominada transiente.  Os conceitos de estado estacionário e transiente são muito utilizados em teoria de sistemas lineares. Já no caso de sistemas não lineares, em que o princípio da superposição não mais se aplica e soluções em forma fechada são difíceis de obter, o conceito de transiente perde algumas de suas serventias (é uma noção de
  • 179. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 179 base temporal), mas o conceito de estado estacionário continua a representar uma etapa fundamental no processo de análise de sistemas dinâmicos não lineares.  Como os resultados a seguir são válidos tanto para dinâmica discreta como para dinâmica contínua, vamos definir aqui uma notação de trajetória que seja comum para os dois casos (uma formalidade necessária para os estudos que serão considerados na sequência). Definição 3: Seja para o sistema de tempo contínuo   00 )(,)( xtxtxfx  , ou então para o sistema de tempo discreto   0)0(,)()1( xxkxgkx  , a solução vai depender explicitamente da condição inicial, sendo denominada fluxo e denotada por )( 0xt . Embora, para o caso discreto, a notação mais adequada fosse )( 0xk , vamos utilizar t em lugar de k, deste ponto em diante, seja para tempo contínuo ou discreto. Definição 4: O conjunto de pontos   txt :)( 0 é denominado trajetória através de x0.
  • 180. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 180 Definição 5: Um atrator é uma região do espaço de estados para onde as trajetórias convergem a partir de uma região maior do espaço de estados. A região do espaço de estados a partir da qual o sistema evolui para o atrator é denominada base de atração. Ciclo limite Atrator pontual Atratores e bases de atração.  No caso de sistemas lineares assintoticamente estáveis, existe um único conjunto limite e a base de atração do conjunto limite é todo o espaço de estados, ou seja, o estado estacionário é independente da condição inicial do sistema. Por outro lado,
  • 181. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 181 sistemas não lineares típicos podem apresentar vários conjuntos limites, inclusive com a propriedade de serem conjuntos limites atratores com bases de atração distintas. Neste caso, a condição inicial vai determinar qual dos conjuntos limites será alcançado pelo estado estacionário.  A seguir, são apresentados quatro tipos distintos de atratores, em ordem crescente de complexidade: ponto fixo, soluções periódicas, soluções quase periódicas e caos. 18.6.2. Pontos Fixos (ou Pontos de Equilíbrio) Definição 6: Um ponto fixo (ou ponto de equilíbrio) x de um sistema autônomo, dado pela equação   00)(,)( xxxfx  tt ou   0)0(,)()1( xxxgx  kk é uma solução constante x = t(x ), para todo t.  Assim, diz-se que x é um ponto de equilíbrio de um sistema dinâmico se, uma vez que o estado do sistema atinge x , o estado permanece em x indefinidamente.
  • 182. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 182  Para sistemas invariantes no tempo, pontos de equilíbrio são caracterizados pela solução de equações algébricas:   )()( xf0xfx  t   )()()1( xgxxgx  kk  Um ponto de equilíbrio pode então ser visto como um ponto no espaço de estados que é invariante sob a dinâmica associada ao sistema.  Existem três variedades de pontos fixos, pontos estáveis, pontos instáveis e pontos de sela, definidas como segue: Ponto fixo estável ou atrator: dado um ponto fixo representando o estado atual de um sistema dinâmico, então pequenas perturbações impostas ao estado do sistema resultam em uma trajetória que retorna ao ponto fixo após um transiente inicial. Ou seja, a distância entre o estado do sistema (em uma vizinhança do ponto fixo) no instante t e o ponto fixo estável vai se tornando arbitrariamente pequena para t suficientemente elevado.
  • 183. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 183 Ponto fixo instável ou repulsor: nem todos os pontos fixos atraem seus estados vizinhos. Os pontos fixos instáveis repelem os estados vizinhos. Se o estado de um sistema no instante t1 coincide com um ponto fixo instável, o sistema vai permanecer neste estado para todo t > t1. No entanto, qualquer perturbação junto a este estado de equilíbrio instável faz com que a dinâmica associada ao sistema mova seu estado no sentido de afastá-lo do ponto fixo instável; Ponto de sela: entre os pontos fixos estáveis e instáveis existem os pontos de sela. Estes pontos do espaço de estados exibem propriedades de atração e repulsão, dependendo da direção de aproximação dos estados vizinhos. Portanto, pontos de sela só podem ocorrer em sistemas dinâmicos cujo espaço de estados apresenta mais de uma dimensão.
  • 184. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 184 Exemplos de pontos de sela: (a) f(x) = x3 . (b) Interseção de duas montanhas. (c) f(x,y) = x2  y2 . 18.6.3. Soluções Periódicas Definição 7: t(x* ) é uma solução periódica de um sistema autônomo se, para todo t, t(x* ) = t+T(x* ) para algum período mínimo T > 0. Este resultado é válido para qualquer estado x* pertencente à solução periódica, sendo que a escolha de um estado x* específico implica apenas na fixação da origem do tempo.
  • 185. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 185  A restrição T > 0 é necessária para prevenir a classificação de um ponto fixo como solução periódica. Enquanto os pontos fixos estão associados à ausência de movimento, as soluções periódicas correspondem a um sistema em movimento constante e uniforme, que visita periodicamente um conjunto de estados. Definição 8: Uma solução periódica é dita ser isolada se ela possui uma vizinhança que não contém nenhuma outra solução periódica. Uma solução periódica isolada é comumente denominada ciclo limite.  Oscilações sustentadas também podem ocorrer em sistemas lineares, mas estas não correspondem a ciclos limites pois as oscilações em sistemas lineares dependem da condição inicial, não são isoladas e são muito sensíveis a qualquer tipo de mudança nos parâmetros do sistema correspondente.  Os ciclos limites, da mesma forma que os pontos fixos, podem atrair estados vizinhos, repeli-los, ou apresentar uma combinação destas duas condições. Ciclos limites atratores produzem oscilações que são estáveis em relação a pequenas
  • 186. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 186 perturbações. Perturbações junto a ciclos limites repulsores acabam movendo o sistema em direção a outros atratores. 18.6.4. Soluções Quase periódicas Definição 9: Uma função quase periódica é tal que pode ser expressa por uma soma de p funções periódicas na forma:    p i i thtx 1 )()( , onde hi (i=1,...,p) tem período mínimo Ti e frequência ii Tf 1 . Além disso, deve existir um conjunto finito de frequências básicas  pff ˆ,...,ˆ1 com as seguintes propriedades:  Independência linear: não existe um conjunto não-nulo de inteiros  pkk ,...,1 tal que 0ˆ...ˆ11  pp fkfk ;
  • 187. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 187  Base para toda fi: sempre existe um conjunto de inteiros  i p i kk ,...,1 tal que, para i = 1,...,p, p i p i i fkfkf ˆ...ˆ11  .  Dada esta definição, é possível afirmar que uma forma de onda quase periódica é a soma de formas de onda periódicas cujas frequências correspondem a uma combinação linear de um conjunto finito de frequências básicas. Como, por exemplo,  21 ˆ,ˆ ff gera o mesmo conjunto de frequências que  211 ˆˆ,ˆ fff  , conclui- se que o conjunto de frequências básicas não é único para um mesmo p (neste exemplo utilizou-se p = 2).  Uma forma de onda periódica é uma forma de onda quase periódica com p = 1. Para p = 2, considere a seguinte função no tempo: )()()( 21 ththtx  , onde h1 e h2 são funções periódicas arbitrárias com períodos T1 e T2, respectivamente. A função x(t) é quase periódica se T1 e T2 forem tais que 21 TT é
  • 188. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 188 um número irracional. Caso contrário, existiriam dois inteiros q e r tais que qT1 = rT2, fazendo com que x(t) fosse periódica, com período T = qT1.  Soluções quase periódicas também podem representar regimes atratores, repulsores, ou uma combinação destes. 18.6.5. Caos  Não há uma definição geral para caos que seja aceita em toda sua extensão nas mais diversas áreas envolvidas no estudo deste fenômeno não linear. Em termos práticos, como a trajetória de um sistema dinâmico caótico é aperiódica, pode-se atribuir comportamento caótico a todo comportamento estacionário que não possa ser inserido em nenhum dos três casos anteriores: pontos fixos, soluções periódicas ou soluções quase periódicas.  É certo que sistemas dinâmicos lineares não podem exibir comportamento caótico, ou seja, atratores ou repulsores caóticos só ocorrem no caso de sistemas dinâmicos não lineares. Também é sabido que caos não ocorre caso a ordem do sistema
  • 189. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 189 dinâmico seja inferior a 3, no caso de dinâmica contínua, ou 2, no caso de dinâmica discreta (se o mapeamento for não inversível, então ordem 1 basta).  Um sistema dinâmico caótico apresenta um estado estacionário finito, mas que não gera uma trajetória periódica nem quase periódica. À primeira vista, a dinâmica caótica se assemelha a muitos processos aleatórios, não seguindo nenhum tipo de padrão. No entanto, sistemas caóticos são descritos por equações determinísticas, enquanto que um processo verdadeiramente aleatório pode ser caracterizado apenas em termos de propriedades estatísticas.  A questão é que não é possível realizar previsões de longo prazo para uma trajetória caótica, ou seja, o horizonte de previsibilidade cresce apenas com o logaritmo da precisão de medida realizada junto à condição inicial: sensibilidade à condição inicial (ou a uma pequena perturbação que ocorra a qualquer instante de tempo).
  • 190. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 190  Pelo exposto acima, fica evidente que caos não tem a ver com desordem (ao menos em dinâmica não linear). Trata-se de um comportamento dinâmico não linear, determinístico, mas imprevisível a longo prazo.  Estes aspectos gerais associados ao comportamento caótico conduzem aos três requisitos matemáticos utilizados para demonstrar que um sistema dinâmico apresenta comportamento caótico:  Sensibilidade em relação à condição inicial;  Ergodicidade;  Presença de um conjunto denso de pontos pertencentes a soluções periódicas instáveis.  O objeto geométrico no espaço de estados para o qual uma trajetória caótica é atraída é denominado atrator estranho, sempre que sua dimensão for fracionária (geometria fractal). É possível obter atratores caóticos que não são estranhos.  Da mesma forma que atratores periódicos podem ser diferenciados por seus períodos, atratores estranhos podem ser diferenciados por sua dimensão. Pontos
  • 191. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 191 fixos e ciclos limites de tempo discreto são atratores de dimensão zero, pois são constituídos apenas por um número finito de pontos. Ciclos limites de tempo contínuo são atratores de dimensão inteira. Por exemplo, quando o ciclo limite é uma curva que se liga em suas extremidades, sua dimensão é um. Já atratores caóticos podem apresentar dimensão fracionária.  Observação: existem métodos para cálculo da dimensão de um atrator estranho e também há atratores estranhos que não são produzidos por dinâmicas caóticas. 18.6.6. Definições de Estabilidade Definição 10: O estado de equilíbrio x é dito uniformemente estável se ||x(0)  x || <   ||x(t)  x || < , , > 0. Definição 11: O estado de equilíbrio x é dito convergente se ||x(0)  x || <   x(t)  x quando t ,  > 0. Definição 12: O estado de equilíbrio x é dito assintoticamente estável se for estável e convergente.
  • 192. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 192 Definição 13: O estado de equilíbrio x é dito assintoticamente estável ou globalmente assintoticamente estável se for estável e todas as trajetórias convergirem para x quando t  . 18.6.7. Teoremas de Lyapunov  Encontrar todas as soluções possíveis da equação de espaços de estado é uma tarefa difícil, senão impossível.  Uma forma elegante de avaliar a estabilidade de um sistema é usando a teoria moderna da estabilidade, fundada por Lyapunov.  Especificamente, esta teoria investiga o problema da estabilidade aplicando o método direto de Lyapunov, que faz uso de uma função escalar contínua do vetor de estados, chamada de função de Lyapunov.  Os teoremas sobre a estabilidade e estabilidade assintótica da equação de espaço de estados que descreve um sistema dinâmico autônomo não linear com vetor de estados x(t) e estado de equilíbrio x , Eq. (1), podem ser descritos como:
  • 193. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 193 Teorema 1: O estado de equilíbrio x é estável se em uma pequena vizinhançca de x existe uma função positiva definida V(x) tal que sua derivada em relação ao tempo seja negativa semidefinida naquela região. Teorema 2: O estado de equilíbrio x é assintoticamente estável se em uma pequena vizinhançca de x existe uma função positiva definida V(x) tal que sua derivada em relação ao tempo seja negativa definida naquela região.  Uma função escalar V(x) que satisfaz estes requisitos é chamada de função de Lyapunov para o estado de equilíbrio x .  Uma função V(x) é positiva definida no espaço  se, x  , ela satisfaz os seguintes requisitos: 1. V(x) possui derivadas parciais em relação aos elementos do vetor de estados x. 2. V(x ) = 0. 3. V(x) > 0 se x  x .  Principal dificuldade prática: encontrar uma função de Lyapunov.
  • 194. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 194 19. Redes Neurais Recorrentes como Sistemas Dinâmicos Não lineares  São inspiradas em conceitos de física estatística e dinâmica não linear;  Principais características: 1. Unidades computacionais não lineares. 2. Simetria nas conexões sinápticas. 3. Totalmente realimentada (exceto autorrealimentação).
  • 195. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 195 Rede Neural de Hopfield: ênfase nas conexões.
  • 196. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 196 Z1 Z1 Z1 y1 y2 yo . . . . . . Rede Neural de Hopfield: ênfase no processamento dinâmico (caso discreto) 19.1. Modelos Derivados da Física Estatística  Incorporação de um princípio físico fundamental: armazenagem de informação em uma configuração dinamicamente estável (requer um tempo para se acomodar em uma condição de equilíbrio  dinâmica de relaxação  comportamento de estado estacionário).
  • 197. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 197  Cada padrão a ser armazenado fica localizado em um vale da superfície de energia. Como a dinâmica não linear da rede é estabelecida de modo a minimizar a energia, os vales representam pontos de equilíbrio estável (cada qual com a sua base de atração).  Memória  ponto de equilíbrio estável: embora outros pesquisadores já viessem buscando a implementação de tal conceito, HOPFIELD (1982) foi o primeiro a formulá-lo em termos precisos. . . . . Superfície de energia: pontos de equilíbrio e bases de atração
  • 198. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 198  Este tipo de sistema dinâmico pode operar como: 1) Memória associativa (endereçável por conteúdo); 2) Dispositivo computacional para resolver problemas de otimização de natureza combinatória.  Problema de otimização de natureza combinatória: é um sistema discreto com um grande número, embora finito, de estados possíveis (soluções candidatas). O objetivo é encontrar o estado que minimiza uma função-custo, a qual fornece uma medida de desempenho para o sistema. 19.2. Modelo Aditivo de Neurônio  Para estudar a dinâmica de uma rede de Hopfield, vamos empregar um modelo de neurônio conhecido por modelo aditivo.  Este modelo pode ser visto como uma aproximação do modelo de linha de transmissão distribuída de um neurônio dendrítico biológico (Rall, 1989).
  • 199. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 199 i wjixi(t) uj(t) xj(t)  x1(t) x2(t) xN(t) () Junção somadora Cj Rj … wj1 wj2 wjN Ij Entradas  Aplicando-se a lei das correntes de Kirchoff, a corrente total chegando em um nó é igual a corrente total saindo do nó: j N i iji j jj j Itxw R tu dt tdu C  1 )( )()( , j = 1,…,N. (2)
  • 200. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 200  Isolando o primeiro termo do lado esquerdo da equação, obtemos um sistema de equações diferenciais acopladas de primeira ordem com a mesma forma matemática da Eq. (1). 19.3. Adaptação para a Rede de Hopfield  Premissa: espaço de estados contínuo e dinâmica contínua.  Considere uma rede neural composta de N neurônios com acoplamento simétrico descrito por wji = wij (i,j = 1,…,N), onde wji é o peso sináptico que conecta a saída do neurônio i à entrada do neurônio j, e também com ausência de autorrealimentação, ou seja, wjj = 0 (j = 1,…,N).  Uma generalização, com wji  wij e/ou wjj  0 (i,j = 1,…,N), pode resultar em um sistema dinâmico com outros comportamentos de estado estacionário, além dos pontos fixos (pontos de equilíbrio). Por exemplo: ciclos limites, quase periodicidade e caos.
  • 201. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 201  Sejam uj(t) o sinal de ativação interna do neurônio j e yj(t) o correspondente sinal de saída, então tem-se que:  )()( tuty jjj  onde j() é a não linearidade sigmoidal do neurônio j. Neste desenvolvimento, estamos considerando uj e yj como variáveis de tempo contínuo.  Considerando que o estado da rede xi(t) = i(ui(t)), a Eq. (2) que representa a dinâmica do modelo aditivo de neurônio pode ser modificada de forma a representar a dinâmica de uma rede neural de Hopfield: j j j N ji i iiji j j b R u uw dt du C    1 )( , j = 1,…,N. (3) onde bj é um limiar aplicado ao neurônio j por uma fonte externa. O efeito capacitivo associado ao neurônio j, dado por Cj, determina a taxa finita de variação do sinal de ativação interna uj(t) em relação ao tempo t, que é uma
  • 202. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 202 propriedade intrínseca dos neurônios biológicos e também da implementação física dos neurônios artificiais.  Assim, a dinâmica desta rede é descrita por um conjunto de equações diferenciais não lineares acopladas de primeira ordem (HOPFIELD, 1984; COHEN & GROSSBERG, 1983), Eq. (3).  Para esta dinâmica é possível definir uma função de energia, ou função de Lyapunov (HOPFIELD, 1984):          N j N j jj y j j N i N ij j jiji xbdzz R xxwE j 1 1 0 1 1 1 )( 1 2 1  (4)  Esta função de energia representa um caso particular de um teorema devido a COHEN & GORSSBERG (1983) e descreve totalmente a rede neural, ao considerar todos os pesos sinápticos e todas as variáveis de estado da rede.  Além disso, supondo que bj varia lentamente com o tempo de computação, é possível definir o seguinte teorema:
  • 203. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 203 Teorema 3: A função de energia E é uma função monotonicamente decrescente do estado da rede u(t). (É estável de acordo com o Teorema 1 de Lyapunov) Prova: Veja HOPFIELD (1984) e COHEN & GROSSBERG (1983). Diferenciando a Eq. (4) em relação ao tempo obtemos, dt dx I R v xw dt dE j N j N i j j j iji            1 12 1 (5) Mas a quantidade entre parênteses na Eq. (5) corresponde a Cj dvj/dt, dt dx dt dv C dt dE j N j j j  12 1 (6) Sabendo que a inversa da não linearidade existe e é igual à vj = j 1 (x), obtém-se: dt dx x dt d C dt dE j N j jjj   1 1 )( 2 1  (7) A inversa da função de ativação não linear j 1 (x) é uma função monotonicamente crescente, portanto:
  • 204. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 204 0)(1  jj j x dx d  , xj Da Eq. (7) notamos que dE/dt vai a zero apenas se 0)( tx dt d j . Portanto, dE/dt < 0 exceto em um ponto fixo. C.Q.D.  Isto implica que, dado um estado inicial u0(t), a evolução do estado u(t) com o tempo vai seguir uma trajetória decrescente através da superfície de energia, até atingir um mínimo local. A partir deste ponto, o estado da rede fica constante.  Este é um resultado fundamental, pois garante que, mesmo com abundância de realimentações, os estados estacionários da rede neural recorrente descrita acima (um caso particular de sistema dinâmico não linear) correspondem sempre a pontos de equilíbrio, não podendo assim apresentar oscilações permanentes do tipo ciclo limite, por exemplo, ou outros comportamentos estacionários mais complexos (quase periodicidade e caos).
  • 205. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 205  Os pontos de equilíbrio são denominados atratores, no sentido de que existe uma vizinhança (base de atração) sobre a qual estes pontos exercem uma influência dominante.  Embora seja possível produzir redes recorrentes generalizadas, com wji  wij e/ou wjj  0 (i,j = 1,…,N), que apresentam uma dinâmica composta apenas por pontos de equilíbrio (CARPENTER et al., 1987), geralmente se obtém regimes estacionários caracterizados por comportamentos dinâmicos mais complexos (HOPFIELD & TANK, 1986), não desejados nesta aplicação específica.
  • 206. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 206 . . Dinâmica de uma rede recorrente generalizada: presença de ciclos limites. 20. Rede de Hopfield Discreta  A rede de Hopfield é um caso particular de rede recorrente em que o espaço de estados é discreto.
  • 207. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 207  Como veremos a seguir, ela pode ser vista como uma memória associativa não linear, ou uma memória endereçável por conteúdo, cuja principal função é restaurar um padrão binário armazenado (item de memória), em resposta à apresentação de uma versão incompleta (papel restaurador) ou ruidosa (papel de corretor de erro) deste padrão. memórias entradas padrões restaurados  como memorizar?  como restaurar?
  • 208. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 208  Portanto, a recuperação do padrão armazenado na memória se dá a partir de um subconjunto das informações contidas no padrão.  A essência da memória endereçável por conteúdo é mapear uma memória fundamental  em um ponto fixo estável y do sistema dinâmico representado pela rede recorrente. espaço de memórias fundamentais espaço de vetores de estados    codificação decodificação y
  • 209. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 209  Logo, a rede neural de Hopfield é um sistema dinâmico não linear cujo espaço de estados contém um conjunto de pontos fixos estáveis que representam as memórias fundamentais do sistema. 20.1. Características Operacionais da Rede de Hopfield  O modelo de rede neural de Hopfield utiliza como unidade de processamento básica o neurônio de MCCULLOCH & PITTS (1943)  estado discreto;  A ativação interna de cada neurônio j (j = 1,…,N) é dada por j N ji i ijij bywu    1 , onde j é um limiar fixo aplicado externamente ao neurônio j. Tomando, agora, yj como o estado do neurônio j (j = 1,…,N), este será modificado de acordo com a função de ativação dada pela função sinal:
  • 210. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 210       0se1 0se1 )sgn( j j jj u u uy  Por convenção, se uj = 0, o estado yj do neurônio permanece em seu valor anterior, seja ele 1 ou +1.  Assim, um ponto fixo estável y da rede de Hopfield é um estado de convergência a partir de uma condição inicial que pertence à sua base de atração.  Portanto, estamos considerando o caso t   e estamos fazendo a inclinação da função sigmoidal j() tender a infinito, para reproduzir a função sinal.  A partir deste ponto, vamos apresentar as duas fases de implementação da rede de Hopfield como memória associativa (endereçável por conteúdo). A primeira fase corresponde à síntese da dinâmica não linear com base na definição dos pesos da rede de Hopfield (memorização). A segunda fase corresponde à restauração de uma dentre as memórias armazenadas (estados de equilíbrio), a partir de um padrão de entrada (estado inicial).
  • 211. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 211 20.2. Fase 1: Armazenagem de Padrões (memórias fundamentais)  Suponha que se queira armazenar um conjunto de p padrões dados por vetores N- dimensionais (palavras bipolares), denotados por { | =1,…,p}.  Para tanto, basta definir os pesos pela aplicação da regra de Hebb generalizada, ou regra do produto externo. Seja i o i-ésimo elemento do vetor , então o peso sináptico conectando o neurônio i ao neurônio j é definido por    p ijji N w 1 1    , sendo que novamente toma-se wjj = 0 (j = 1,…,N).  Seja W a matriz N  N de pesos sinápticos, onde wji é o elemento da j-ésima linha e i-ésima coluna. Então, é possível expressar a regra do produto externo na forma: IW N p N p T   1 1   .  Observe que W = WT , ou seja, wji = wij (i,j = 1,…,N).
  • 212. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 212 20.3. Fase 2: Recuperação dos Padrões (estados de equilíbrio estáveis)  Durante a fase de recuperação dos padrões armazenados (memórias), um vetor N- dimensional y é tomado como o estado inicial (condição inicial) da rede de Hopfield. Obviamente, os elementos de y assumem valores –1 ou +1.  Geralmente, este vetor y vai representar uma versão incompleta ou ruidosa da memória fundamental que foi armazenada na rede.  O processo de recuperação da memória armazenada obedece a uma regra dinâmica denominada ajuste assíncrono. Um único neurônio j da rede é escolhido aleatoriamente para ter sua saída yj (que agora está associada ao estado da rede) recalculada em função do valor de uj.  Assim, o ajuste do estado da rede, de uma iteração para outra, é determinístico, mas a escolha do neurônio cujo estado será atualizado é aleatória.  Este ajuste assíncrono prossegue até que não haja mais mudanças de estado a processar, ou seja, até que a rede atinja um ponto de equilíbrio caracterizado por:
  • 213. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 213         j N i ijij bywy 1 sgn , j = 1,…,N, ou em notação matricial:  b yWy sgn .  A rede de Hopfield sempre vai convergir para um ponto de equilíbrio se o ajuste for assíncrono.  Se o ajuste fosse síncrono, ou seja, todos os neurônios tendo seus estados recalculados em paralelo, ciclos limites de até 2 pontos poderiam ser produzidos (BRUCK, 1990). 20.4. Resumo  Não linearidade é condição necessária para produzir múltiplos atratores no espaço de estados de sistemas dinâmicos.  Hopfield resolveu parcialmente o seguinte problema: dado um conjunto de estados específicos que devem estar associados a memórias fundamentais, como gerar um
  • 214. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 214 sistema dinâmico não linear que apresente pontos de equilíbrio estável justamente nestes estados específicos?  Se este sistema dinâmico não linear puder ser sintetizado, então vai existir uma superfície de energia com mínimos locais nos referidos estados específicos, sendo que a dinâmica do sistema vai atuar no sentido de conduzir o estado inicial do sistema a um dos mínimos locais da superfície de energia (particularmente àquele em cuja base de atração se encontra a condição inicial). 20.5. A Emergência de Memória Associativa  Para a rede neural de Hopfield considerada, com wji = wij, wjj = 0 ( jR ) e j = 0 (i,j = 1,…,N), a função de energia pode ser definida na forma: WyyT N i N ij j jiji yywE 2 1 2 1 1 1     
  • 215. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 215 onde               N ji i ijijj ywuy 1 sgn)sgn( (j=1,…,N).  A mudança na função de energia E, devido a uma mudança yj no estado do neurônio j, é dada por: jj N ji i ijij uyywyE    1 garantindo que a dinâmica da rede vai promover o decrescimento monotônico da função de energia no tempo. Exemplo para N = 3:       3 1 3 12 1 i ij j jiji yywE   232313133232121231312121 2 1 yywyywyywyywyywyywE 
  • 216. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 216  Supondo que 02 y :  2323323212122121 2 1 yywyywyywyywE   Que produz:         3 2 1 2323121223232121 i i iji ywyEywywyyywyywE  Quando um estado de equilíbrio estável (ponto de mínimo local da função de energia) é atingido, não há como reduzir ainda mais a energia, fazendo com que o estado da rede fique invariante frente à dinâmica.  Assim, para garantir a emergência de memória associativa, duas condições devem ser satisfeitas: 1. As memórias fundamentais devem ser armazenadas como estados estáveis da rede;
  • 217. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 217 2. Estes estados estáveis correspondentes às memórias fundamentais devem ter uma base de atração de dimensão não nula. 20.6. Atratores Espúrios  Quando a rede neural de Hopfield armazena K memórias fundamentais através do ajuste de seus pesos pela regra de Hebb generalizada, os estados estáveis presentes na superfície de energia não vão se restringir aos estados associados às memórias fundamentais armazenadas. Todos os estados estáveis não associados às memórias fundamentais armazenadas são denominados atratores espúrios.  Os atratores espúrios existem em virtude dos seguintes fatores: 1. A função de energia E é simétrica, no sentido de que os estados correspondentes ao reverso das memórias fundamentais armazenadas também são estados estáveis; 2. Toda combinação linear de um número ímpar de estados estáveis também vai ser um estado estável (AMIT, 1989).
  • 218. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 218 3. Para um grande número K de memórias fundamentais, a função de energia vai produzir pontos de equilíbrio que não estão correlacionados com nenhuma das memórias fundamentais armazenadas na rede (inflexibilidade da superfície de energia). 20.7. Capacidade de Memória da Rede de Hopfield  Infelizmente, as memórias fundamentais utilizadas para gerar os pesos da rede de Hopfield, de acordo com a seguinte equação:    p ijji N w 1 1    , nem sempre conduzem a estados estáveis.  Desse modo, a possível existência de estados espúrios, aliada à possibilidade de instabilidade das memórias fundamentais, tendem a reduzir a eficiência da rede de Hopfield como uma memória endereçável por conteúdo.  Considere a ativação interna do neurônio j, dada na forma:
  • 219. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 219    N i ijij ywu 1 , onde, para efeito de generalidade, estamos supondo agora que wjj  0.  Denominando x um estado genérico da rede, temos que:        p N i iij N i p iijj x N x N u 1 11 1 11       Considere agora o caso especial em que o estado genérico x é tomado como uma das memórias fundamentais armazenadas na rede, por exemplo, :            p N i iijjj p N i iijj N u N u 1 11 1 11  A parcela mais à esquerda, j, é simplesmente o j-ésimo elemento da memória fundamental , constituindo o valor desejado (sinal) para uj, já que a memória fundamental deve ser um estado estável. Este resultado justifica a necessidade da divisão por N na geração dos pesos.
  • 220. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 220  A parcela mais à direita,        p N i iij N 1 1 1 , é o ruído existente quando os padrões não são ortogonais, ou seja, quando 01    N i ii .  Através de um estudo estatístico, supondo, dentre outros aspectos, que as memórias fundamentais são formadas por padrões gerados aleatoriamente, é possível mostrar que a relação sinal-ruído é dada aproximadamente por K K N deelevadosespara valor, .  Com isso, o componente de memória fundamental  será estável (em sentido probabilístico) se, e somente se, a relação sinal-ruído for suficientemente alta.  Valores sugeridos na literatura para : 1.  = 7.25, ou 138,0 1   (K = 138 quando N = 1000);
  • 221. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 221 2. N N KN ln2 ln2  (K  72 quando N = 1000) 20.8. Regra da Projeção  Uma regra mais eficiente para definição dos pesos da rede de Hopfield convencional, em substituição à regra de Hebb generalizada, é a regra de projeção.  Ela tem a desvantagem de não apresentar uma motivação biológica, mas a vantagem de explorar as propriedades algébricas dos pontos de equilíbrio.   será um ponto de equilíbrio se W = , =1,…,K.  Seja  K 1P , então temos que WP = P.  Uma solução para W é dada na forma:   TT PPPPW 1  .  Para que exista   1 PPT , basta que os vetores , =1,…,K, sejam linearmente independentes, pois esta condição garante que a matriz P tem posto completo.  A matriz   TT PPPP 1  é denominada pseudoinversa de P (Moore-Penrose).
  • 222. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 222    PPW é a matriz de projeção ortogonal de vetores do N para o subespaço cuja base é o conjunto de vetores , =1,…,K. 21. Referências sobre Redes de Hopfield AMIT, D.J. Modeling Brain Function: The World of Attractor Neural Networks. Cambridge University Press, 1989. BINDER, P.M. & JENSEN, R.V. Simulating Chaotic Behavior with Finite State Machines. Physical Review A, vol. 34, pp. 4460-4463, 1986. BRUCK, J. On the convergence properties of the Hopfield model. Proceedings of the IEEE, vol. 78, pp. 1579-1585, 1990. CARPENTER, G.A., COHEN, M.A. & GROSSBERG, A. Technical comments on “Computing with neural networks.” Science, vol. 235, pp. 1226-1227, 1987. COHEN, M.A. & GROSSBERG, S. Absolute stability of global pattern formation and parallel memory storage by competitive neural networks. IEEE Transactions on Systems, Man, and Cybernetics, vol. 13, pp. 815-826, 1983. ECKMANN, J.-P., KAMPHORST, S.O., RUELLE, D. & CILIBERTO, S. Liapunov Exponents From Time Series. Physical Review A, vol. 34, pp. 4971-4979, 1986. HAYKIN, S. Neural Networks – A Comprehensive Foundation. Maxwell Macmillan International, 1994. HOPFIELD, J.J. Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences of the U.S.A., vol. 79, pp. 2554-2558, 1982.
  • 223. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 223 HOPFIELD, J.J. Neurons with graded response have collective computational properties like those of two-state neurons. Proceedings of the National Academy of Sciences of the U.S.A., vol. 81, pp. 3088-3092, 1984. HOPFIELD, J.J. & TANK, D.W. ‘Neural’ computation of decisions in optimization problems. Biological Cybernetics, vol. 52, pp. 141-152, 1985. HOPFIELD, J.J. & TANK, D.W. Computing with neural circuits: A model. Science, vol. 233, pp. 625-633, 1986. KHALIL, H.K. Nonlinear Systems. 2nd. edition, Prentice Hall, 1996. KOLEN, J.F. Exploring the Computational Capabilities of Recurrent Neural Networks. Ph.D. Thesis, The Ohio State University, 1994. MCCAFFREY, D.F., ELLNER, S., GALLANT, A.R. & NYCHKA, D.W. Estimating the Lyapunov Exponent of a Chaotic System With Nonparametric Regression. Journal of the American Statistical Association, vol. 87, no. 419, pp. 682-695, 1992. MCCULLOCH, W.S. & PITTS, W. A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics, vol. 5, pp. 115-133, 1943. MEISS, J.D. Frequently Asked Questions about Nonlinear Science. Department of Applied Mathematics, University of Colorado at Boulder, http://amath.colorado.edu/faculty/jdm/faq-Contents.html. MORITA, M. Associative memory with nonmonotonic dynamics. Neural Networks, vol. 6, pp. 115-126, 1993. OTT, E. Chaos in Dynamical Systems. Cambridge University Press, 1993. PERETTO, P. An Introduction to the Modeling of Neural Networks. Cambridge University Press, 1992. RALL, W., “Cable Theory for Dendritic Neurons”, In Methods in Neuronal Modelling, C. Koch and I. Segev, eds., pp. 9-62, MIT Press.
  • 224. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 224 SLOTINE, J.-J. & LI, W. Applied Nonlinear Control. Prentice Hall, 1991. VIDYASAGAR, M. Nonlinear Systems Analysis. 2nd. edition, Prentice Hall, 1993. WOLF, A., SWIFT, J.B., SWINNEY, H.L. & VASTANO, J.A. Determining Lyapunov Exponents From a Time Series. Physica D, vol. 16, pp. 285-315, 1985.
  • 225. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 225 22. Introdução às Redes RBF  Neste tópico o projeto de redes neurais artificiais do tipo feedforward com múltiplas camadas será visto como um problema de aproximação de função em um espaço multidimensional.  A camada de entrada será responsável por conectar a rede a seu ambiente, a camada intermediária aplicará uma transformação não linear do espaço de entrada para o espaço intermediário, e a camada de saída é linear.  De acordo com esta perspectiva, a aprendizagem é equivalente a encontrar uma hipersuperfície em um espaço multidimensional que fornece a melhor aproximação para os dados de treinamento, com o critério de melhor aproximação avaliado segundo alguma medida estatística.  Assim, a generalização da rede irá corresponder ao uso desta hipersuperfície para interpolar os dados de teste.
  • 226. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 226  Esta perspectiva é a motivação por trás do método das funções de base-radial, que é fundamentado nos trabalhos sobre interpolação em espaços multidimensionais.  No contexto de uma rede neural, as unidades intermediárias fornecerão um conjunto de funções que compõem uma base arbitrária para os padrões de treinamento quando eles são expandidos no espaço intermediário; estas funções são denominadas de funções de base-radial.  A existência de uma camada não linear (intermediária) na rede seguida por uma camada linear (saída) deve-se a um resultado em classificação de padrões que propõe que um conjunto de dados analisado em um espaço de alta dimensão tem maiores chances de ser linearmente separável do que em um espaço de baixa dimensão (Cover, 1965).  Esta é uma das razões pelas quais o número de neurônios da camada intermediária de uma rede neural RBF é geralmente alto. Além disso, a dimensão do espaço intermediário está diretamente relacionada à capacidade de aproximação da rede.
  • 227. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 227 23. Regressão  Nomenclaturas sinônimas: 1. Regressão (paramétrica/não-paramétrica) 2. Aproximação de funções 3. Identificação de sistemas 4. Aprendizado supervisionado  A regressão modela a relação entre uma ou mais variáveis de resposta (também chamadas de variáveis de saída, dependentes, preditas ou explicadas) e os preditores (também chamados de variáveis de controle, dependentes, explanatórias, ou regressores).  Em linhas gerais regressão corresponde ao problema de estimar uma função a partir de exemplos de estímulo-resposta (entrada-saída).  Se há mais de uma variável de resposta, a regressão é chamada de multivariada.  Regressão paramétrica: a forma do relacionamento funcional entre as variáveis dependentes e independentes é conhecida, mas podem existir parâmetros cujos
  • 228. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 228 valores são desconhecidos, embora passíveis de serem estimados a partir do conjunto de treinamento.  Em problemas paramétricos, os parâmetros livres, bem como as variáveis dependentes e independentes, geralmente têm uma interpretação física.  Exemplo: ajuste de uma reta a uma distribuição de pontos baxyxf )( a, b: desconhecidos y: sujeito a ruído     (x1,y1) (x4,y4) (x3,y3) (x2,y2) x y  Regressão não-paramétrica: sua característica distintiva é a ausência (completa ou quase completa) de conhecimento a priori a respeito da forma da função que está sendo estimada. Sendo assim, mesmo que a função continue a ser estimada a partir
  • 229. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 229 do ajuste de parâmetros livres, o conjunto de “formas” que a função pode assumir (classe de funções que o modelo do estimador pode prever) é muito amplo.  Como consequência, vai existir um número elevado de parâmetros (por exemplo, quando comparado ao número de dados de entrada-saída para treinamento), os quais não mais admitem uma interpretação física isolada.   modelos puramente não-paramétricos (requerem um conjunto infinito de dados do problema)   modelos puramente paramétricos (requerem um conjunto finito de dados do problema) Redes RBF com centros e dispersões fixasperceptron modelos baseados em aprendizado construtivo  Todos os modelos de regressão que não são puramente paramétricos são denominados não paramétricos ou semiparamétricos. Esta denominação não deve causar confusão, principalmente levando-se em conta que modelos de regressão puramente não paramétricos são intratáveis.
  • 230. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 230  Com base no exposto acima, fica evidente que redes neurais artificiais para treinamento supervisionado pertencem à classe de modelos de regressão não paramétricos. Sendo assim, os pesos não apresentam um significado físico particular em relação ao problema de aplicação, mas certamente existem modelos de redes neurais “mais não paramétricos” que outros.  Além disso, estimar os parâmetros de um modelo não paramétrico (por exemplo, pesos de uma rede neural artificial) não é o objetivo primário do aprendizado supervisionado. O objetivo primário é estimar a “forma” da função em uma região compacta do espaço de aproximação (ou ao menos a saída para certos valores desejados de entrada).  Por outro lado, em regressão paramétrica, o objetivo primário é estimar o valor dos parâmetros, por dois motivos: 1. A “forma” da função já é conhecida; 2. Os parâmetros admitem uma interpretação física.
  • 231. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 231 23.1. Modelos Lineares de Regressão  Um modelo f(x) para uma função y(x) assume a forma:   n j jjwf 1 )()( xx  , representando uma combinação linear de um conjunto de n funções fixas, geralmente denominadas funções-base, por analogia com o conceito de vetor gerado a partir de uma combinação linear de vetores-base.  As funções-base e quaisquer parâmetros que elas possam conter são assumidos fixos. Neste caso, se as funções-base j(), j = 1,...,n, forem não lineares, o modelo será não linear, mas linear nos parâmetros, porque a flexibilidade de f(), ou seja, sua habilidade de assumir “formas” diferentes, deriva apenas da liberdade de escolher diferentes valores para os coeficientes da combinação linear, wj (j = 1,...,n).
  • 232. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 232  Caso os parâmetros destas funções-base sejam ajustáveis e sendo funções não lineares, o modelo será não linear e também não linear nos parâmetros.  Em princípio, “qualquer” conjunto de funções pode ser escolhido para formar a “base” {j(), j=1,...,n}, embora existam (o que não implica que possam ser facilmente obtidos) conjuntos mais adequados para cada problema e também conjuntos suficientemente flexíveis para apresentarem desempenho adequado frente a uma ampla classe de funções y().  Como um caso particular e de grande interesse prático (em virtude da maior facilidade de manipulação matemática e maior simplicidade na dedução de propriedades básicas), existem os modelos lineares nos parâmetros, cujas funções- base são compostas por elementos de uma única classe de funções.  Exemplos de classes de funções-base: 1. Funções-base polinomiais: 1 )(   j j xx
  • 233. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 233 2. Funções-base senoidais (série de Fourier):           n xj x j j   2 sin)( 3. Funções-base logísticas (perceptron):  j T j j b0exp1 1 )(   xb x  Nota 1: no exemplo de regressão paramétrica apresentado no início deste tópico, foi utilizada a função baxxf )( , que representa um modelo com funções-base polinomiais 1(x) = 1 e 2(x) = x, e coeficientes w1 = b e w2 = a.  Nota 2: o grande atrativo apresentado pelos modelos lineares nos parâmetros está na possibilidade de obter o conjunto de coeficientes da combinação linear de forma fechada, através da aplicação de técnicas de solução baseadas em quadrados mínimos. O mesmo não se aplica (na maioria absoluta dos casos) a modelos não lineares, os quais requerem processos numéricos iterativos (técnicas de otimização não linear) para se obter a solução.
  • 234. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 234 23.2. Interpolação  Em análise numérica, interpolação é um método de construção de novos pontos de dados a partir de um conjunto discreto de pontos conhecidos.  Trata-se de um caso específico de aproximação de funções (regressão), onde a função deve passar exatamente pelos pontos a serem aproximados (interpolados).  Dada uma sequência de N pontos distintos xi e para cada xi o correspondente valor associado di, a interpolação busca uma função f() tal que: f(xi) = di, i = 1, ..., N.  O conjunto de pontos {(xi,di)}i=1,...,N é conhecido como par entrada-saída e a função f() é o interpolante.  Em geral o interpolante é desconhecido, mas uma função pré-definida é usada, como nos casos de regressão discutidos anteriormente.
  • 235. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 235 o Por exemplo, um conjunto de pontos pode ser interpolado por uma ou mais retas, polinômios, splines (função especial definida por polinômios em partes), funções trigonométricas e outros. (a) (b) (c) Figura 16: Exemplos de interpolação. (a) Pontos a serem interpolados. (b) Interpolação linear por partes. (c) Interpolação polinomial: f(x) = − 0.0001521x6 − 0.003130x5 + 0.07321x4 − 0.3577x3 + 0.2255x2 + 0.9038x. (Fonte: wikipedia.org)
  • 236. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 236  Note que os exemplos da Figura 16 correspondem a modelos de regressão paramétrica. No caso particular da Figura 16(c) o modelo de regressão é composto por funções-base polinomiais e os coeficientes wj, j = 1, ..., 6, foram obtidos de forma a interpolar os pares {(xi,di)}i=1,...,7. 23.3. Redes Neurais para Interpolação  Sem perda de generalidade, considere agora uma rede neural feedforward com uma camada intermediária e um único neurônio de saída. o Obs.: escolheu-se apenas um neurônio de saída para facilitar a exposição.  Esta rede é projetada para fazer um mapeamento não linear do espaço de entrada para o espaço intermediário seguido de um mapeamento linear do espaço intermediário para a saída.  Seja m a dimensão do espaço de entrada. Assim, esta rede faz um mapeamento s: m  .
  • 237. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 237  Este mapeamento pode ser visto como uma hipersuperfície f  m+1 , que corresponde a um gráfico multidimensional da saída como função da entrada.  Na prática, a hiper superfície f é desconhecida e um conjunto de dados é usado para definir f, ou seja, para treinar a rede de maneira que ela encontre a hipersuperfície f.  O processo de aprendizagem será então composto por duas fases: 1. Treinamento: otimização de um procedimento de aproximação para a superfície f baseada em dados de treinamento rotulados (pares entrada-saída) conhecidos. 2. Generalização: fase correspondente à interpolação, ou seja, utilização do mapeamento gerado (hipersuperfície f) para estimar a saída correspondente a novos pontos não usados no processo de treinamento.  Assim, somos levados à teoria de interpolação multivariada em espaços multidimensionais.
  • 238. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 238  De maneira estrita podemos descrever o problema de interpolação da seguinte forma: Dado um conjunto de N pontos distintos {xi  m | i = 1, 2, ..., N} e um conjunto correspondente {di   | i = 1, 2, ..., N}, encontre uma função F: N m   que satisfaz a condição de interpolação: F(xi) = di, i = 1, ..., N. (1)  A função de interpolação (interpolante) deve passar por todos os pontos do conjunto de treinamento.  A técnica baseada em funções de base-radial (RBF – radial-basis functions) consiste em escolher uma função F da seguinte forma F(x) = i wi (||x  xi||), (2) onde {(||x  xi||) | i = 1, ..., N} é um conjunto de N funções arbitrárias geralmente não lineares, conhecidas como funções de base radial, e ||  || representa uma norma (usualmente a Euclidiana).
  • 239. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 239 Os pontos de treinamento conhecidos, xi  m , i = 1, ..., N, são tomados como os centros das funções de base radial.  Inserindo as condições de interpolação da Eq. (1) na Eq. (2) obtém-se o seguinte sistema de equações lineares, onde os elementos desconhecidos são os coeficientes da expansão {wi}:                                      NNNNNN N N d d d w w w      2 1 2 1 21 22221 11211    , (3) onde ji = (||xj  xi||), i, j = 1, ..., N. (4)  Sejam d = [d1, ..., dN]T w = [w1, ..., wN]T  Os vetores d e w representam o vetor de saídas desejadas e o vetor de pesos, respectivamente, onde N é o número de padrões de treinamento.
  • 240. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 240  Seja  a matriz de interpolação cujos elementos são os ji dados pela Eq. (4).  Podemos assim reescrever a Eq. (3) em forma matricial: w = d.  Assumindo que a matriz  é não-singular, podemos resolver para o vetor de pesos: w = 1 d.  MICCHELLI (1986) provou que: Teorema 1: Seja {xi  m | i = 1, 2, ..., N} um conjunto de pontos distintos. A matriz quadrada de interpolação , cujo ji-ésimo elemento é dado por ji = (||xj  xi||) é não-singular.  Há uma grande variedade de funções de base radial cobertas pelo Teorema 1 (Teorema de Micchelli), por exemplo (Figura 17): 1. Função multiquádrica: (r) = (r2 + c2 )1/2 , c > 0, e r  . (5) 2. Função multiquádrica inversa: (r) = (r2 + c2 )1/2 , c > 0, e r  . (6) 3. Função gaussiana: (r) = exp(r2 /2c2 ), c > 0, e r  . (7)
  • 241. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 241 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 0.5 1 1.5 2 2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 1 2 3 4 5 6 7 8 9 10 (a) (b)
  • 242. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 242 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 (c) Figura 17: Funções de base radial. Preto: c = 0.1. Azul: c = 1. (a) Multiquádrica. (b) Inversa multiquádrica. (c) Gaussiana.
  • 243. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 243  Para que a matriz de interpolação gerada pelas funções de base-radial apresentadas nas Eqs. (5) a (7) seja não-singular, basta que os padrões de entrada sejam todos diferentes.  Uma propriedade importante da função multiquádrica inversa e da função de base- radial é que ambas são funções locais, ou seja, (r)  0 para r  . o Em ambos os casos a matriz de interpolação é definida positiva. 23.4. A Função de Base Radial  Uma função de ativação de base radial é caracterizada por apresentar uma resposta que decresce (ou cresce) monotonicamente com a distância a um ponto central.  O centro e a taxa de decrescimento (ou crescimento) em cada direção são alguns dos parâmetros a serem definidos. Estes parâmetros devem ser constantes caso o modelo de regressão seja tomado como linear nos parâmetros ajustáveis.  Uma função de base radial monotonicamente decrescente típica é a função gaussiana, dada na forma:
  • 244. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 244              2 2 σ exp)( j j j cx x , para o caso escalar (veja Figura 18(a));  Uma função de base radial monotonicamente crescente típica é a função multiquádrica dada na forma:    j jj j cx x σ σ )( 22   , para o caso escalar (veja Figura 18(b)); -2 -1 0 1 2 0 0.2 0.4 0.6 0.8 1 x j(x) -2 -1 0 1 2 0 0.5 1 1.5 2 2.5 3 x j(x) (a) (b) Figura 18: Exemplos de funções de base radial monovariáveis, com cj = 0 e j = 1
  • 245. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 245  No caso multidimensional e tomando a função gaussiana, j(x) assume a forma:     jj T jj cxcxx  1 exp)( onde  T nxxx 21x é o vetor de entradas,  T jnjjj ccc 21c é o vetor que define o centro da função de base radial e a matriz j é definida positiva e diagonal, dada por:                jn j j j    00 0 0 00 2 1     Σ , de modo que j(x) pode ser expandida na forma:                     jn jn j j j j j cxcxcx   2 1 2 2 21 1 2 11 ...exp)(x .
  • 246. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 246  Neste caso, os elementos do vetor  T jnjjj  21 são responsáveis pela taxa de decrescimento da gaussiana junto a cada coordenada do espaço de entrada e o argumento da função exponencial é uma norma ponderada da diferença entre o vetor de entrada e o centro da função de base radial. 24. Teoria de Regularização 24.1. Aprendizagem Supervisionada como Problema Mal-Comportado  Quando o número de dados de treinamento é muito maior que o número de graus de liberdade do processo físico que eles representam e estamos restritos a ter o mesmo número de funções de base-radial que o número de amostras de treinamento, então o problema é sobre-determinado.  Consequentemente, a rede pode acabar interpolando variações devido a idiossincrasias ou ruído nos dados de treinamento, degradando seu desempenho de generalização.
  • 247. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 247  Consideremos o problema de aprendizagem como um problema de reconstruir uma hipersuperfície, ou um mapeamento f, dado um conjunto de pares entrada-saída.  Este problema será bem comportado (well-posed) se as seguintes condições forem satisfeitas: 1. Existência: Para cada vetor de entrada x  m existe uma saída y = f(x), onde y  . 2. Unicidade: Para qualquer par de vetores de entrada x, t  m tem-se f(x) = f(t) se e somente se x = t. 3. Continuidade: o mapeamento é contínuo, ou seja, para qualquer  > 0   = () tal que dx(x,t) <  implica que dy(f(x),f(t)) < , onde d(,) é um operador de distância.  O problema de reconstrução da hipersuperfície por aprendizagem é mal- comportado (ill-posed), pois: 1. O critério da existência pode ser violado.
  • 248. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 248 2. A informação contida nos dados de treinamento pode não ser suficiente para a construção do mapeamento unicamente. 3. A presença de ruído ou imprecisão nos dados adiciona incerteza ao mapeamento construído.  Assim, é preciso transformar um problema mal-comportado em um problema bem- comportado, e isso pode ser feito via regularização.
  • 249. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 249 Figura 19: Exemplo de problema mal-comportado: amostras ruidosas. 24.2. Regularização  Técnicas que exploram restrições de suavidade em problemas de aproximação com base em dados de entrada-saída são conhecidas como regularização, tendo sido
  • 250. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 250 introduzidas por TIKHONOV (1963) para o tratamento de problemas de reconstrução de superfícies (VON ZUBEN, 1996).  Regularização é o procedimento de obtenção de um problema de aproximação bem-comportado a partir de um problema de aproximação mal-comportado pela imposição de restrições de suavidade ao modelo de aproximação.  A regularização conduz a problemas de aproximação bem-comportados por permitir a definição de um processo contínuo, mas não necessariamente único, que produza a melhor aproximação com base nos dados de entrada-saída (VON ZUBEN, 1996).  Este processo converge para um problema de otimização que deve minimizar uma função objetivo apresentando dois termos básicos: 1. Um expressando o erro de aproximação; e 2. Outro expressando o nível de distanciamento da condição de suavidade.
  • 251. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 251  Como já apresentado, o problema geral de aproximação corresponde à definição de um modelo de aproximação ĝ(,): XP  r para uma função g(): X  m  r a partir de um conjunto de dados {(xi,di)}i = 1,...,N, amostrados na presença de ruído com base no mapeamento definido pela função em uma região compacta do espaço de aproximação.  Como este problema é mal-condicionado a escolha de uma solução particular, dentre as infinitas soluções possíveis, está vinculada à atribuição de um grau apropriado de suavidade à função g().  O problema geral de aproximação passa então a ser um problema de aproximação regularizado, que deve encontrar uma solução utilizando técnicas variacionais definidas com base no conjunto de dados e no tipo de suavidade imposta.  O grau de suavidade pode ser definido por um funcional (ĝ) que assume valores tanto menores quanto mais suave for a função ĝ.
  • 252. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 252  Um procedimento comumente utilizado é medir o grau de suavidade com base no comportamento oscilatório da função ĝ (GIROSI ET AL., 1995). Deste modo, uma análise da função no domínio da frequência permite afirmar que uma função é mais suave que outras quando apresenta menor quantidade de energia em altas frequências. O conteúdo de alta frequência de uma função pode ser medido adotando-se dois procedimentos básicos em sequência: 1. Realizar uma filtragem da função por meio de um filtro passa-alta. 2. Medir a quantidade de energia ainda presente na função filtrada.  Para N finito, o problema de aproximação regularizado é encontrar o modelo de aproximação ĝ que minimize o seguinte funcional:    N l gggJ 1 2 )ˆ( 2 1 )θ,(ˆ)( 2 1 )θ( xx , (8) onde  é um número positivo denominado parâmetro de regularização.
  • 253. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 253  O primeiro termo, como discutido anteriormente, representa uma medida de distância entre g e ĝ. Este termo corresponde à soma dos erros quadráticos entre as saídas desejadas e o modelo de aproximação.  O segundo termo representa o grau de suavidade da função ĝ.  Note que ambos os termos foram multiplicados por ½ para facilitar algumas derivações que serão feitas posteriormente.  O compromisso entre suavidade do processo de aproximação e fidelidade aos dados pertencentes ao conjunto de aproximação é, portanto, controlado pelo parâmetro de regularização .  Certamente vai existir um valor ótimo * para o parâmetro de regularização que conduza a um melhor desempenho em termos de generalização.  Nota: a regularização pode ser vista como uma solução prática para o dilema bias- variância, discutido anteriormente.
  • 254. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 254  Um minimizador para o funcional apresentado na Eq. (8), conhecido como funcional de Tikhonov J(), será denominado pela expansão F(x): F(x) = i wi G(x, xi), i = 1, ..., N (9) onde G(x, xi) é uma função centrada em xi, e wi é o i-ésimo elemento do vetor de pesos w. 24.3. Redes Regularizadoras  A expansão da função regularizada de aproximação F(x) dada pela Eq. (9) como dependente de uma função G(x, xi) centrada em xi sugere a arquitetura de rede apresentada na Figura 20.
  • 255. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 255 F(x) w1 wj wN G G G x1 xi xm ... ... ... ...  Figura 20: Rede regularizadora.  A arquitetura desta rede é: 1. Camada de entrada formada por unidades sensoriais (m entradas); 2. Camada intermediária com uma unidade não linear para cada padrão de entrada xi, i = 1, ..., N;
  • 256. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 256 3. Saída linear com entrada fornecida pela saída G(x, xi) da camada intermediária.  Os pesos da camada de saída são os coeficientes desconhecidos da expansão dada pela Eq. (9).  Sejam wi = 1/[di  F(x)], i = 1, ..., N, em notação matricial: w = 1/(d  F) (10)  Considerando a Eq. (9) em notação matricial, F = Gw, temos: (G + I)w = d  w = (G + I)1 d, onde G é uma matriz simétrica e definida positiva para algumas classes de funções, como as funções de base-radial.  A solução produzida por esta rede corresponde ao interpolante ótimo no sentido de que ele minimiza o funcional de Thikonov J().
  • 257. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 257  Sob o ponto de vista de teoria de aproximação, esta rede regularizadora possui três características desejáveis: 1. Ela corresponde a um aproximador universal, no sentido de que ela pode aproximar arbitrariamente bem qualquer função multi-variada contínua em um subespaço compacto de m , dado um número suficiente de unidades intermediárias. 2. Como o esquema de aproximação derivado da teoria de regularização é linear em relação aos coeficientes (parâmetros) desconhecidos, a rede regularizadora apresenta a melhor aproximação. 3. A solução determinada pela rede regularizadora é ótima. 25. Redes RBF Generalizadas  A correspondência unívoca entre os dados de treinamento xi e a função G(x, xi), i = 1, ..., N, produz uma rede regularizadora que é, em muitos casos, proibitiva computacionalmente.
  • 258. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 258  Mais especificamente, o cálculo dos pesos lineares na saída requer a inversão de uma matriz quadrada em N, processo que cresce polinomialmente em N e que pode estar sujeito a mal-condicionamento numérico.  Para superar esta dificuldade, a complexidade da rede precisa ser reduzida, o que requer uma aproximação, F*(x), da solução regularizada através da busca por uma solução sub-ótima em um espaço de menor dimensão: F*(x) = i wi i(x), i = 1, ..., n, (11) onde n < N, e {i(x) | i = 1, ..., n} é um novo conjunto de funções-base linearmente independentes.  Para o caso de funções de base-radial: i(x) = G(||x  ci||), i = 1, ..., n, (12) onde os centros ci devem ser determinados.  Esta escolha de função de ativação é a única que garante a solução correta da Eq. (9) para G(x, xi) = G(||x  xi||), quando ci = xi, i = 1, ..., n, e n = N.
  • 259. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 259  A minimização em relação aos pesos do funcional de Thikonov para a aproximação regularizada F*(x) será dada por (ver Haykin, 1999): (GT G + G0)w = GT d.  Quando o parâmetro de regularização  se aproxima de zero, o vetor de pesos w converge para a pseudoinversa (solução de norma mínima) do problema de interpolação dos dados de treinamento para n < N: w = G+ d,  = 0, (13) onde G+ = (GT G)1 GT .  Em termos estruturais a rede generalizada, ilustrada na Figura 21, é similar a rede regularizadora, ilustrada na Figura 20. Entretanto, elas diferem em dois pontos distintos: 1. O número de nós intermediários na rede generalizada é geralmente menor que o número de amostras de treinamento: n < N.
  • 260. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 260 2. Na rede generalizada há os seguintes parâmetros a serem ajustados: i) os pesos lineares da camada de saída; e ii) as posições dos centros e as dispersões das funções de base radial. y=f(x) w1 wj wn 1(x) j(x) n(x) x1 xi xm ... ... ... ... + c11 cj1 cn1 c1i cji cni c1m cjm cnm Figura 21: Rede regularizadora generalizada.
  • 261. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 261 25.1. Aproximação Universal das Redes RBF  Dado um número suficiente de neurônios com função de base radial, qualquer função contínua definida numa região compacta pode ser devidamente aproximada usando uma rede RBF (PARK & SANDBERG, 1991).  As redes RBF são redes de aprendizado local, de modo que é possível chegar a uma boa aproximação desde que um número suficiente de dados para treinamento seja fornecido na região de interesse.  Redes neurais com capacidade de aproximação local são muito eficientes quando a dimensão do vetor de entradas é pequena. Entretanto, quando o número de entradas não é pequeno, as redes do tipo perceptron de múltiplas camadas (MLP) apresentam uma maior capacidade de generalização (HAYKIN, 1999).  Isto ocorre porque o número de funções de base radial deve aumentar exponencialmente com o aumento da dimensão da entrada.
  • 262. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 262  O teorema da aproximação universal das redes RBF pode ser descrito como a seguir (PARK & SANDBERG, 1991): Teorema 2: Para qualquer mapeamento entrada-saída f(x) existe uma rede RBF com um conjunto de centros {ci}i = 1, ..., n e uma dispersão comum  > 0 tal que o mapeamento entrada-saída F(x) feito pela rede RBF está próximo de f(x) dada uma norma p, p  [1, ]. 25.2. Maldição da Dimensionalidade  A complexidade intrínseca de uma classe de funções de aproximação cresce exponencialmente com a razão m/s, onde m é a dimensão do espaço de entrada e s é um índice de suavização que mede o número de restrições impostas a uma função de aproximação da classe dada.  A maldição da dimensionalidade de Bellman propõe que, independentemente da técnica de aproximação empregada, se o índice de suavidade é mantido constante, então o número de parâmetros necessários para a função de aproximação atingir
  • 263. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 263 uma determinada acurácia desejada cresce exponencialmente com a dimensão da entrada m. 25.3. Propriedades das Redes RBF  Algumas principais propriedades das redes RBF: 1. Localidade das RBFs. 2. Comportamento de interpolação pouco suave para dispersões pequenas. 3. Comportamento de extrapolação limitado devido à localidade das RBFs. 4. Suavidade dependente dos parâmetros das RBFs. 5. Baixa sensibilidade a ruído quando as RBFs são colocadas em regiões “mais densas” do espaço de entradas. 6. Permite o uso de algoritmos supervisionados e não-supervisionados para determinação dos centros.
  • 264. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 264 26. Treinamento de Redes RBF Generalizadas  Como pôde ser observado na Figura 21, há dois conjuntos de parâmetros a serem ajustados em uma rede neural do tipo RBF. 1. Os pesos da primeira camada, que correspondem às coordenadas dos centros das funções de base radial. Também deve determinar as dispersões das RBFs. 2. Os pesos da camada de saída linear, que serão determinados pelo método exato descrito na Eq. (13), depois que os parâmetros das funções de base-radial (posição e dispersão dos centros) estiverem sido determinados.  Nota-se que o papel exercido por cada camada da rede é diferente e, portanto, é razoável separar o processo de determinação dos parâmetros de cada camada em etapas distintas.  No caso de algoritmos que se ocupam apenas com o ajuste dos pesos da camada de saída de uma rede RBF (modelos lineares nos parâmetros), é necessário estabelecer algum critério para fixação dos centros.
  • 265. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 265  Existem critérios para o caso de número variável de centros (redes construtivas, por exemplo), mas serão mencionados aqui apenas aqueles geralmente empregados para o caso de um número fixo e previamente especificado de centros.  Existem basicamente três alternativas: 1. Espalhar os centros uniformemente ao longo da região em que se encontram os dados; 2. Escolher aleatoriamente, ou segundo algum critério específico, um subconjunto de padrões de entrada como centros; 3. Auto-organizar os centros, de acordo com a distribuição dos dados de entrada.  Quanto às dispersões das funções de base radial, embora elas possam ser distintas (e até ajustáveis) para cada centro, usualmente se adota uma única dispersão para todos os centros, na forma (HAYKIN, 1999):
  • 266. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 266 n d 2 max  (14) onde n é o número de centros, e dmax é a distância máxima entre os centros.  Com este critério de dispersão evita-se que as funções de base radial sejam excessivamente pontiagudas, ou então com uma base demasiadamente extensa. 26.1. Seleção de Centros por Auto-Organização  Para auto-organizar os centros, é suficiente aplicar algum algoritmo capaz de refletir a distribuição dos dados de entrada.  O algoritmo a ser apresentado a seguir, é um algoritmo de clusterização denominado k-means (COVER & HART, 1967; MACQUEEN, 1967). Este algoritmo se assemelha ao adotado para as redes de Kohonen, mas não leva em conta noções de vizinhança entre os centros.  Nota: o algoritmo k-means é equivalente a uma rede neural competitiva simples.
  • 267. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 267  Sejam {cj}j, j = 1, ..., n os centros das funções de base radial na iteração t. O algoritmo k-means pode ser descrito da seguinte forma: 1. Inicialização: Escolha valores aleatórios distintos para os centros cj(t). 2. Amostragem: Tome aleatoriamente um vetor xi do conjunto de padrões de entrada; 3. Matching: Determine o índice k do centro que mais se aproxima deste padrão, na forma: k(xi) = arg minj ||xi(t)  cj(t)||, j = 1,...,n, 4. Ajuste: Ajuste os centros usando a seguinte regra:      alhures),( )()],()([)( )1( t kkttt t j ijij j c xcxc c  onde   (0,1) é a taxa de ajuste. 5. Ciclo: Repita os Passos 2 a 5 para todos os N padrões de entrada e até que os centros não apresentem deslocamento significativo após cada apresentação completa dos N padrões.
  • 268. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 268  Uma das limitações do k-means é que ele só pode atingir uma solução ótima local que depende da inicialização dos protótipos (centros). 26.2. Treinamento Supervisionado da Rede RBF  Neste caso, vamos assumir que todos os parâmetros livres da rede (posição e dispersão dos centros, e pesos da camada de saída) serão obtidos por processos de aprendizagem supervisionada.  Um candidato natural para isso é o uso da aprendizagem baseada em correção do erro, que pode ser convenientemente implementado usando um procedimento de gradiente.  Assim, o valor instantâneo da função custo é:   N j jeJ 1 2 2 1 , onde ej = dj  F*(xj)
  • 269. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 269 = ||)(|| 1 jj n i ij Gwd cx   (15)  O objetivo é encontrar os parâmetros livres w, c, e i 1 de forma a minimizar a Eq. (15), onde i é a matriz definida positiva cuja diagonal principal é composta pelas dispersões das RBFs.  As fórmulas de adaptação são: 1. Pesos da camada de saída: i ii w J ww    1α , onde     N j ijj i Ge w J 1 ||)(|| cx 2. Posições dos centros: i ii J c cc    2α , onde      N j ijiijji i Gew J 1 1 ][||)(||'2 cxcx c , i = 1, ..., n 3. Dispersão dos centros:
  • 270. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 270 13 11 α      i ii J , onde      N j T ijijijji i Gew J 1 1 ]][||)[(||' cxcxcx 26.3. Um Exemplo de Aproximação Usando Redes RBF 0 2 4 6 8 10 0 0.2 0.4 0.6 0.8 1 Caso 1: n = N Pontos amostrados: (1,2); (3,7); (5,6)            5 3 1 c ;            3 1 2 σ ;            930.5 850.2 945.0 w
  • 271. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 271 0 2 4 6 8 10 0 1 2 3 4 5 6 0 2 4 6 8 10 0 1 2 3 4 5 6 7 8 0 2 4 6 8 10 0 0.2 0.4 0.6 0.8 1 Caso 2: n < N Pontos amostrados: (1,2); (3,7); (5,6); (8,1)            5 3 1 c ;            3 1 2 σ ;            538.5 084.3 012.1 w
  • 272. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 272 0 2 4 6 8 10 0 1 2 3 4 5 6 0 2 4 6 8 10 0 1 2 3 4 5 6 7 8 27. Referências sobre Redes RBF BROOMHEAD, D.S. & LOWE, D. “Multivariate functional interpolation and adaptive networks”, Complex Systems, 2: 321-355, 1988. COVER, T.M. & HART, P.E. “Nearest neighbor pattern classification”, IEEE Transactions on Information Theory, 13:21-27, 1967. HAYKIN, S. “Neural Networks: A Comprehensive Foundation”, 2nd edition, Prentice-Hall, 1999. MUSAVI, M.T., AHMED, W., CHAN, K.H., FARIS, K.B. & HUMMELS, D.M. “On the training of radial basis function classifiers”, Neural Networks, vol. 5, pp. 595-603, 1992. ORR, M.J.L. “Introduction to Radial Basis Function Networks”, Technical Report, Centre for Cognitive Science, University of Edinburgh, Scotland, 1996. (http://www.anc.ed.ac.uk/~mjo/papers/intro.ps)
  • 273. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 273 PARK, J. & SANDBERG, I.W. “Universal approximation using radial-basis-function networks. Neural Computation, 3(2): 246-257, 1991. BISHOP, C.M. “Neural Networks for Pattern Recognition”, Clarendon Press, 1995. CHEN, C.-L., CHEN, W.-C. & CHANG, F.-Y. “Hybrid learning algorithm for Gaussian potential function networks”, IEE Proceedings D, 140(6): 442-448, 1993. CHEN, S., CHNG, E.S. & ALKADHIMI, K. “Regularized Orthogonal Least Squares Algorithm for Constructing Radial Basis Function Networks”, International Journal of Control, 64(5): 829-837, 1996. COVER, T. M., “Geometrical and statistical properties of systems of linear inequalities with applications in pattern recognition”, IEEE Trans. on Electronic Computers, vol. EC-14, pp. 326-334. DE CASTRO, L.N. & VON ZUBEN, F.J. A Pruning Self-Organizing Algorithm to Select Centers of Radial Basis Function Neural Networks. in Kurková, V., Steele, N.C., Neruda, R., Kárný, M. (eds.) Proceedings of the International Conference of Artificial Neural Networks and Genetic Algorithms (ICANNGA'01), pp. 114-117, Prague, Czech Republic, April 22-25, 2001. DE CASTRO, L.N. & VON ZUBEN, F.J. Automatic Determination of Radial Basis Functions: An Immunity-Based Approach. International Journal of Neural Systems, 2001. (to appear) FREEMAN, J.A.S. & SAAD, D. “Learning and Generalization in Radial Basis Function Networks”, Neural Computation, 7: 1000- 1020, 1995. FRITZKE, B. “Fast learning with incremental RBF Networks”, Neural Processing Letters, 1(1): 2-5, 1994. FRITZKE, B. “Supervised Learning with Growing Cell Structures”, in J. Cowan, G. Tesauro & J. Alspector (eds.) Advances in Neural Information Processing Systems, Morgan Kaufmann Publishers, 6: 255-262, 1994. GIROSI, F., JONES, M., POGGIO, T., “Regularization theory and neural networks architectures”, Neural Computation, vol. 7, pp. 219-269. HWANG, Y.-S. & BANG, S.-Y. “An Efficient Method to Construct a Radial Basis Function Neural Network Classifier”, Neural Networks, 10(8): 1495-1503, 1997. KARAYIANNIS, N.B. “Gradient Descent Learning of Radial Basis Neural Networks”, Proceedings of the IEEE International Conference on Neural Networks, pp. 1815-1820, 1997. KARAYIANNIS, N.B. & MI, G.W. “Growing Radial Basis Neural Networks: Merging Supervised and Unsupervised Learning with Network Growth Techniques”, IEEE Transactions on Neural Networks, 8(6): 1492-1506, 1997.
  • 274. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 274 MICCHELLI, C.A. “Interpolation of Scattered Data: Distance Matrices and Conditionally Positive Definite Functions”, Constructive Approximation, 2: 11-22, 1986. MOODY, J. & DARKEN, C. “Fast Learning in Networks of Locally-Tuned Processing Units”, Neural Computation, 1: 281-294, 1989. MULGREW, B. “Applying Radial Basis Functions”, IEEE Signal Processing Magazine, pp. 50-66, March 1996. ORR, M.J.L. “Regularisation in the Selection of Radial Basis Function Centres”, Neural Computation, 7(3): 606-623, 1995. ORR, M.J.L. “Optimising the widths of radial basis functions”, Proceedings of the Fifth Brazilian Symposium on Neural Networks, Belo Horizonte, Brazil, 1998. ORR, M.J.L. “Recent Advances in Radial Basis Function Networks”, Technical Report, Institute for Adaptive and Neural Computation, University of Edinburgh, Scotland, 1999. (http://www.anc.ed.ac.uk/~mjo/papers/recad.ps) POGGIO, T. & GIROSI, F. “Networks for Approximation and Learning”, Proceedings of the IEEE, 78(9): 1481-1497, 1990. VON ZUBEN, F. J., “Modelos Paramétricos e Não paramétricos de Redes Neurais Artificiais e Aplicações”, Tese de Doutorado, DCA/FEEC/Unicamp, Fev. 1996. WANG, Z. & ZHU, T. “An Efficient Learning Algorithm for Improving Generalization Performance of Radial Basis Function Neural Networks”, Neural Networks, 13(4-5): 545-553, 2000. WETTSCHERECK, D. & DIETTERICH, T. “Improving the Performance of Radial Basis Function Networks by Learning Center Locations”, Advances in Neural Information Processing Systems, 4:1133-1140, 1992. YINGWEI, L., SUNDARARAJAN, N. & SARATCHANDRAN, P. “A Sequential Learning Scheme for Function Approximation Using Minimal Radial Basis Function Neural Networks”, Neural Computation, pp. 461-478, 1996.
  • 275. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 275 28. Introdução às Redes MLP  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 estudado no Tópico 5.  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.
  • 276. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 276  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 baseados no erro.  O sinal de erro é propagado em sentido oposto ao de propagação do sinal funcional, por isso o nome de retropropagação do erro.  Uma rede MLP típica possui três características principais: o Os neurônios das camadas intermediárias (e de saída) possuem uma função de ativação não linear do tipo sigmoidal (p. ex. função logística ou tangente hiperbólica). o A rede possui uma ou mais camadas intermediárias.
  • 277. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 277 o A rede possui altos graus de conectividade. Input layer First hidden layer Output layerSecond hidden layer … … … y1 y2 yo +1 x1 x2 x3 xm +1 +1 … … Functional signal propagation Error backpropagation Figura 1: Rede neural de múltiplas camadas, sentido de propagação do sinal de entrada e retropropagação do erro.
  • 278. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 278  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.  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 ao vetor gradiente em relação aos pesos 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:
  • 279. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 279 f 1 W 1 b 1  u1 x 1 Primeira camada y1 = f1 (W1 x + b1 ) f 2 W 2 b 2  u2 y 1 1 Segunda camada y2 = f2 (W2 y1 + b2 ) f 3 W 3 b 3  u3 y 2 1 Terceira camada y3 = f3 (W3 y2 + b3 ) y 3 Figura 2: Representação matricial da rede de múltiplas camadas.  A saída de cada camada da rede torna-se a entrada para a camada seguinte: ym + 1 = fm + 1 (Wm + 1 ym + 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 rede é a saída da última camada.  Para a rede apresentada na figura acima tem-se: y3 = f3 (W3 f2 (W2 f1 (W1 x + b1 )+b2 )+b3 ).
  • 280. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 280 29. 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 ,     m S j m i m j m ji m i bywu .1,1 ,        m i m im jm ji m i b u y w u
  • 281. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 281  Definindo agora a sensibilidade de  a mudanças na entrada líquida do i-ésimo neurônio da camada m como sendo: ,δ m i m i u   então: ,δ 1 ,     m j m im ji y w .δm im ib     As equações para atualizaçãos de pesos em qualquer camada podem então ser expressas da seguinte forma: ,αδ)()1( 1 ,,   m j m i m ji m ji ytwtw .αδ)()1( m i m i m i tbtb   Em notação matricial temos: ,)(α)()1( 1 Tmmmm tt   yδWW ,α)()1( mmm tt δbb 
  • 282. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 282 onde . 21 T m S mmm m muuu                    u δ  Ainda é necessário calcular as sensibilidades m , que requer outra aplicação da regra da cadeia. É este processo que dá origem ao termo retropropagaçã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     u u
  • 283. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 283  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      uF  Agora podemos escrever a relação de recorrência para a sensibilidade utilizando a regra da cadeia em forma matricial:
  • 284. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 284 .))(())(( 11 1 1 1 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 retropropagaçã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 y ys u ys uu J M             ysys  Como: ),( )( M j M M i M j M M i M i M i i uf u uf u y u y          então ).()(2δ M j M ii M i ufys 
  • 285. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 285  Em notação matricial: ).)((2 ysuFδ  MMM  f 1 W 1 b 1  u1 x 1 f 2 W 2 b 2  u2 y 1 1 f 3 W 3 b 3  u3 y 2 1 y 3 F 1 . F 2 . F 3 . Propagação dos sinais   2 (y – s) 3 2 1 Retro-propagação das sensibilidades   (W 2 ) T (W 3 ) T 2 3
  • 286. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 286 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 yi m + 1  fm + 1 (Wm + 1 yi m + bm + 1 ), m = 0, 1, …, M – 1, //backpropagation of sensitivities ))((2 ii M i MM i yduFδ   11 ))((   m i Tmm i mm i δ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  ei T ei = (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
  • 287. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 287 29.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:
  • 288. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 288  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 tangente hiperbólica, utilizada como a não linearidade de um neurônio é contínua, não constante, limitada, e monotonicamente crescente; satisfazendo as condições impostas à função f(.).
  • 289. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 289 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 é ótimo no sentido de tempo de processamento, facilidade de implementação e eficiência na representação.
  • 290. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 290 1 xl1 xlm + f w2m w21 w02 + f wMm wM1 w0 M + f w1m w11 w01 + M 2 1 Fl 1 1 0 1 Figura 3: Rede equivalente ao mapeamento de aproximação unviersal.
  • 291. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 291 29.2. Exemplo de Aproximação Universal  Para ilustrar a capacidade de aproximação universal das redes MLP, considere aproximar um período da função sen(x)cos(2x) utilizando uma composição aditiva de funções básicas (f será tomado como a tangente hiperbólica). 0 5 10 15 20 25 30 35 40 45 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 0 20 40 60 80 100 120 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 Figura 4: Aproximação universal. (a) Função a ser aproximada (informação disponível: 42 amostras do valor da função em pontos igualmente espaçados do domínio da função). (b) Função básica utilizada na aproximação. Tangentes hiperbólicas, satisfazendo as condições estabelecidas pelo teorema.
  • 292. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 292  A rede utilizada para aproximar esta função é uma rede do tipo MLP com uma entrada, cinco unidades intermediárias e uma saída, descrita na Figura 2.16. O algoritmo de treinamento é o de retropropagação, apresentado anteriormente. Analisando esta figura, e considerando que a rede apresentada possui saída linear, verificamos que y (saída da rede após a apresentação de cada amostra de treinamento) será dada por: y = w0,1 + w1,1 z1 + w2,1 z2 + w3,1 z3 + w4,1 z4 + w5,1 z5, ,5,...,1para,0 1             lwxwfz l k j jjll
  • 293. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 293 Figura 5: Rede MLP com treinamento via retropropagação utilizada para aproximar a função sen(x)cos(2x). Funções de ativação do tipo tangente hiperbólica.
  • 294. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 294 0 5 10 15 20 25 30 35 40 45 -3 -2 -1 0 1 2 3 z1*w11 0 5 10 15 20 25 30 35 40 45 -4 -3 -2 -1 0 1 2 3 4 5 6 z2*w21 0 5 10 15 20 25 30 35 40 45 -4 -3 -2 -1 0 1 2 3 z3*w31 0 5 10 15 20 25 30 35 40 45 -3 -2 -1 0 1 2 3 z4*w41
  • 295. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 295 0 5 10 15 20 25 30 35 40 45 -4 -3 -2 -1 0 1 2 3 4 z5*w51 Figura 6: Funções de ativação dos neurônios intermediários após o treinamento da rede multiplicadas pelos pesos correspondentes da camada de saída. É perceptível que todas as funções apresentadas são tangentes hiperbólicas (funções básicas), mas estão deslocadas em relação à abscissa.
  • 296. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 296 0 5 10 15 20 25 30 35 40 45 -4 -3 -2 -1 0 1 2 3 T - w01 - w11*z1 0 5 10 15 20 25 30 35 40 45 -7 -6 -5 -4 -3 -2 -1 0 1 2 T - w01 - w11*z1 - w21*z2 0 5 10 15 20 25 30 35 40 45 -6 -4 -2 0 2 4 6 T - w01 - w11*z1 - w21*z2 - w31*z3 0 5 10 15 20 25 30 35 40 45 -4 -3 -2 -1 0 1 2 3 4 T - w01 - w11*z1 - w21*z2 - w31*z3 - w41*z4
  • 297. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 297 0 5 10 15 20 25 30 35 40 45 -4 -3 -2 -1 0 1 2 3 4 T - w01 - w11*z1 - w21*z2 - w31*z3 - w41*z4 - w51*z5 Figura 7: Saída desejada menos a soma da contribuição de cada neurônio da camada intermediária. O resultado final (última curva) é a diferença entre a saída desejada e a saída da rede, ou seja, a combinação linear das saídas das unidades intermediárias. Como era de se esperar, ao final do treinamento, a diferença entre a saída fornecida pela rede e a saída desejada (função a ser aproximada) é aproximadamente zero.
  • 298. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 298 0 5 10 15 20 25 30 35 40 45 -8 -6 -4 -2 0 2 4 6 8 10 12 w01 + w11*z1 0 5 10 15 20 25 30 35 40 45 -15 -10 -5 0 5 10 15 w01 + w11*z1 + w21*z2 0 5 10 15 20 25 30 35 40 45 -5 0 5 10 w01 + w11*z1 + w21*z2 + w31*z3 0 5 10 15 20 25 30 35 40 45 1.5 2 2.5 3 3.5 4 4.5 w01 + w11*z1 + w21*z2 + w31*z3 + w41*z4
  • 299. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 299 0 5 10 15 20 25 30 35 40 45 -1.5 -1 -0.5 0 0.5 1 1.5 w01 + w11*z1 + w21*z2 + w31*z3 + w41*z4 + w51*z5 Figura 8: Combinação linear das saídas das unidades intermediárias. Os coeficientes da combinação são os pesos da segunda camada. Esta figura apresenta a soma das curvas que compõem a Figura 3, implicando na composição aditiva (combinação linear) das funções básicas dos neurônios da rede.
  • 300. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 300 0 5 10 15 20 25 30 35 40 45 -1.0 -0.5 0.0 0.5 1.0 Figura 9: Aproximação obtida pela rede MLP para a função sen(x)cos(2x). Os *’s são as amostras de treinamento, e o traço contínuo () a aproximação da rede.
  • 301. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 301 29.3. Virtudes e Limitações das Redes MLP  O algoritmo de retropropagação tornou-se o algoritmo mais popular para o treinamento supervisionado do perceptron de múltiplas camadas. Basicamente, é uma composição de um método de obtenção do vetor gradiente e de uma técnica de otimização (steepest descent). O algoritmo de retropropagação possui duas propriedades distintas: 1. É simples de calcular localmente e 2. Realiza um gradiente descendente no espaço de conexões (pesos).  Estas duas propriedades do método de retropropagação são responsáveis pelas suas vantagens e desvantagens descritas a seguir. 29.3.1. Conexionismo  O algoritmo de retropropagação é um exemplo de paradigma conexionista que utiliza cálculos locais para determinar a capacidade de processamento de
  • 302. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 302 informações das redes neurais artificiais. A utilização de cálculos locais no projeto de arquiteturas neurais artificiais, é geralmente desejada por duas razões: 1. As redes neurais artificiais são vistas como metáforas para as redes biológicas; 2. Os cálculos locais favorecem a utilização de arquiteturas paralelas como um método eficiente para a implementação das RNA's. 29.3.2. Unidades Intermediárias  As unidades intermediárias exercem um papel crítico na operação das redes MLP pois funcionam como detetores de características (HAYKIN, 1999). Uma nova forma de exploração deste importante atributo é no reconhecimento de características significativas que identificam os padrões de entrada de interesse.  Uma rede MLP pode operar de forma auto-organizada, e quando isso ocorre é denominado de sistema autocodificador. Basicamente, essa estrutura faz uma análise de componentes principais dos dados de entrada, fornecendo uma
  • 303. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 303 ferramenta ótima para a redução da dimensionalidade (compressão dos dados) do conjunto de entrada. 29.3.3. Superfícies de Erro e Mínimos Locais  Para o desenvolvimento de algoritmos de treinamento eficientes, é essencial a compreensão das características principais dos aspectos envolvidos no treinamento das redes MLP e suas implicações.  Uma maneira extremamente útil de descrever um problema de treinamento é sob a forma de aproximação de funções, ou otimização de funções – que implica na minimização do funcional de erro J.  Sob este ponto de vista, o treinamento de redes MLP é um exemplo de procedimento de minimização do erro ou otimização, e cada problema de treinamento define uma superfície de erro (ou de energia) multi dimensional não negativa, que é formada plotando-se o valor do erro J para todos os parâmetros do vetor de pesos () da rede.
  • 304. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 304  Esta abordagem para o treinamento de redes MLP traz vários benefícios importantes: 1. Muitas estratégias eficientes de otimização de funções têm sido desenvolvidas fora da área de redes neurais artificiais. Como veremos no próximo capítulo, muitas dessas estratégias são diretamente aplicáveis ao treinamento de redes MLP; 2. O conceito de superfície de erro da rede MLP permite uma visualização do processo de treinamento, pelo menos quando o número de parâmetros é reduzido.  Para cada combinação possível de arquitetura MLP, problema de aplicação e função de erro, existe uma superfície de erro correspondente de dimensão P + 1, para um MLP com P pesos (SHEPHERD, 1997), sendo impraticável produzir um mapeamento de superfície de erro que seja detalhado e abrangente (mesmo para pequenos problemas e redes de dimensão reduzidas). Não é surpresa, portanto, que
  • 305. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 305 as propriedades das superfícies de erro das redes MLP sejam assunto de grandes debates.  É importante mencionar que a prática comum de inferência de características presentes na superfície de erro é bastante questionável. Por exemplo, há uma tendência de afirmar que uma rede MLP está presa em um mínimo local sempre que a curva de decaimento do erro (gerada plotando-se o valor do erro ao longo de várias épocas de treinamento) possui um grande platô em um valor de erro elevado.  Na verdade, existem várias causas igualmente plausíveis para este comportamento que não são relacionadas com a presença de mínimos locais; por exemplo, a rede está convergindo para um ponto de sela; o problema possui um erro final elevado na solução e a rede está convergindo para o mínimo global; a rede está atravessando um platô lentamente; o algoritmo está fazendo um zig-zag no fundo
  • 306. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 306 de um vale; um ou mais neurônios da rede estão saturados ou a rede está tomando passos muito pequenos a cada iteração.  Algumas evidências (como gráficos de contorno de pequenas regiões de superfícies de erro) sugerem que a maior parte das superfícies de erro das redes MLP compartilham várias características (HAGAN et al., 1997): 1. Alto grau de suavidade; 2. Grandes platôs; 3. Pequenos vales; 4. Vários mínimos locais e 5. Um certo grau de simetria em relação a origem do sistema de coordenadas utilizado para plotar a superfície de erro.  Estas características das superfícies de erro fornecem boas indicações de quais estratégias devem ser adotadas no desenvolvimento de métodos práticos e eficientes de treinamento:
  • 307. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 307 1. A suavidade das superfícies de erro sugerem que métodos de otimização clássica que utilizam derivadas serão eficientes; 2. O efeito da precisão de ponto-flutuante torna-se um aspecto importante em regiões de platôs; e 3. Se existem mínimos locais, estratégias de busca do mínimo global, ou mínimo local satisfatório, devem ser empregados.  Para investigar o comportamento da superfície do erro quadrático médio para redes com múltiplas camadas adotaremos um exemplo simples de aproximação de funções. A rede utilizada neste problema será apresentada na Figura 7.  A Figura 8 apresenta o gráfico da função a ser aproximada (HAGAN et al., 1997). O objetivo é treinar a rede da Figura 7 para aproximar a função da Figura 8.
  • 308. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 308 Figura 10: Rede para aproximação de funções.
  • 309. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 309 0 5 10 15 20 25 30 35 40 45 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 Figura 11: Função a ser aproximada.
  • 310. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 310 -5 0 5 10 15 -5 0 5 10 15 v(1,1) w(1,1) -5 0 5 10 15 -5 0 5 10 15 0 2 4 6 8 10 v(1,1)w(1,1) -10 -5 0 5 10 15 20 25 30 -25 -20 -15 -10 -5 0 5 10 15 v(1,1) v(0,1) -10 0 10 20 30 -40 -20 0 20 0 0.5 1 1.5 2 v(1,1)v(0,1)
  • 311. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 311 -10 -8 -6 -4 -2 0 2 4 6 8 10 -10 -8 -6 -4 -2 0 2 4 6 8 10 v(0,1) w(0,1) -10 -5 0 5 10 -10 -5 0 5 10 0 0.5 1 1.5 v(0,1)w(0,1) Figura 12: Superfícies do erro e seus contornos em relação a alguns pesos da rede.  As partes mais escuras das superfícies representam vales, ou regiões de mínimos. As curvas apresentadas permitem verificar algumas características importantes das superfícies de erro, como: 1. Suavidade; 2. Existência de platôs e vales; e
  • 312. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 312 3. Presença de mínimos locais.  Fica claro nas figuras acima que a escolha inadequada de uma condição inicial para o algoritmo de treinamento pode fazer com que o algoritmo convirja para um ponto sub-ótimo. Como, geralmente, não conhecemos a superfície de erro, torna-se necessária a utilização de várias condições iniciais diferentes para aumentar as chances do algoritmo convergir para o mínimo global. 29.3.4. Escalonamento  Em princípio, redes neurais como as do tipo MLP treinadas com o algoritmo de retropropagação oferecem um grande potencial.  Entretanto, para que este potencial possa ser plenamente atingido, é preciso superar o problema de escalonamento, que refere-se à qualidade do comportamento da rede (como o tempo de processamento e capacidade de generalização) quando a tarefa a ser realizada aumenta em dimensão e complexidade.
  • 313. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 313  Existem várias formas possíveis de medir a dimensão e complexidade de um problema.  Uma forma de amenizar problemas de escalonamento é fazer com que a arquitetura da rede e as restrições impostas ao conjunto de pesos incorporem informações sobre o problema que deverá ser resolvido.  Outra forma de tratar o problema de escalonamento é reformular o processo de aprendizagem inserindo modularidade na arquitetura da rede.  Um sistema computacional é dito ser modular se a arquitetura puder ser separada em dois ou mais pedaços responsáveis por partes distintas e possivelmente mais simples do conjunto de entradas.
  • 314. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 314 30. Aspectos Práticos do Treinamento de Redes MLP 30.1. Treinamento Local ou em Lote  Em aplicações práticas do algoritmo de retropropagaçã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
  • 315. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 315 que a busca no espaço de pesos tenha um caráter estocástico ao longo dos ciclos de treinamento.  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 retropropagaçã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 retropropagaçã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 on-line ou padrão a padrão.
  • 316. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 316 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. O ajuste relativo a cada apresentação de um par de entrada é acumulado (somado). Este método também é conhecido como método de atualização off- line 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.  Como as amostras são apresentadas aleatoriamente, o uso da atualização padrão por padrão torna a busca no espaço de conexões estocástica por natureza, reduzindo a possibilidade do 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, 1999).
  • 317. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 317 30.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.  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.
  • 318. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 318  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 segue: o é considerado que o algoritmo de retropropagação convergiu quando a norma Euclideana 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 10 fará um estudo sobre técnicas de aceleração da convergência deste algoritmo.
  • 319. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 319 o é considerado que o algoritmo de retropropagaçã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  = *. o é considerado que o algoritmo de retropropagaçã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,
  • 320. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 320 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.  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
  • 321. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 321 rede após cada época de treinamento. O processo de treinamento é interrompido antes que a capacidade de generalização da rede seja deteriorada. 30.3. Arquitetura da Rede  A quantidade de neurônios na camada de entrada da rede é geralmente dada pelo problema ser abordado.  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 se houver ruído nas amostras de treinamento, então a rede estará sujeita ao sobre-treinamento (overfitting).  Uma rede com poucos neurônios na camada intermediária pode não ser capaz de aproximar o mapeamento desejado, causando um underfitting.
  • 322. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 322 -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
  • 323. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 323  O underfitting também pode ser causado caso o treinamento seja interrompido prematuramente. 30.4. Validação Cruzada  Um dos principais objetivos do treinamento de uma RNA, em particular do MLP, é um bom desempenho de generalização.  Entretanto, devido a imprecisões no processo de aquisição de dados (p. ex., erros nos sensores, leitura, digitação, etc.) e outros fatores externos, as amostras de treinamento podem levar a geração de um modelo de aproximação inadequado a aplicações práticas.  É importante salientar que, durante o treinamento, embora a rede possa aparentar estar desempenhando cada vez melhor (uma vez que o erro para os dados de treinamento deve estar decaindo constantemente), seu desempenho de generalização pode começar a piorar após um determinado número de épocas de treinamento.
  • 324. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 324  Isso é consequência da imprecisão dos dados de treinamento e de uma escolha inadequada para a arquitetura da rede.  No tópico sobre redes RBF estudamos a teoria de regularização como método para reduzir os efeitos da sobregeneralização.  Outra forma de evitar a sobregeneralização é empregando métodos conhecidos como validação-cruzada (Prechelt, 1998). Teste Treinamento Épocas Erro Figura 13: Curvas idealizadas de erro de treinamento e generalização.
  • 325. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 325  De forma mais genérica, os métodos de validação cruzada (VC) consistem em dividir o conjunto de dados em duas ou três partes, como a seguir: 1. Conjunto de treinamento: parte dos dados usada apenas para o treinamento da rede; 2. Conjunto de validação: parte dos dados usada para definir o ponto de interrupção do treinamento; 3. Conjunto de testes: parte dos dados usada para estimar o desempenho de generalização da rede.  O procedimento de VC é então empregado da seguinte forma: treina-se a rede com os dados de treinamento, avalia-se o desempenho da rede para o conjunto de validação a cada l épocas e, caso o erro de validação aumente por um número consecutivo de vezes o treinamento é interrompido e o conjunto de pesos que levou ao melhor desempenho de generalização é escolhidos como pesos da rede. O
  • 326. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 326 conjunto de teste é então usado para avaliar o desempenho de generalização da rede.  Em muitos casos a validação cruzada é implementada dividindo-se o conjunto de dados em apenas duas partes: treinamento e teste.  Se o conjunto de dados é suficientemente grande, então as partições em treinamento, teste e validação podem ser feitas considerando-se o mesmo número de amostras para cada etapa.  Entretanto, se a quantidade de dados é limitada, é preciso ser mais cauteloso no momento de particionar os dados.  Além disso, uma partição aleatória pode resultar em classes de dados sub- e/ou sobrerrepresentadas em cada uma das partições. o Uma forma de amenizar este problema em particular é usando amostras estratificadas, ou seja, garantir que todas as classes existentes na base de dados estejam apropriadamente representadas nas partições.
  • 327. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 327 o Também é preciso reduzir a influência da partição escolhida no desempenho final da rede e, para isso, o particionamento da base de dados pode ser feito diversas vezes e o desempenho de todos os particionamentos usados para estimar o desempenho médio do algoritmo.  Em estatística é comum usarmos a validação-cruzada em k-pastas (k-fold cross- validation), que consiste em dividir o conjunto de dados em k pastas (partições), treinar o algoritmo com k  1 pastas e usar a pasta remanescente para teste. Este processo é repetido k vezes até que todas as pastas tenham sido usadas para treinamento e teste (WITTEN & FRANK, 2005).  Para aumentar ainda mais a confiabilidade do erro estimado, o processo de validação cruzada em k-pastas normalmente é repetido um número de vezes, por exemplo, 10 vezes, e o desempenho médio é usado para estimar o erro de generalização da rede.
  • 328. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 328  Para k = 10 temos a validação conhecida como 10-fold cross-validation. Esta escolha de k é a mais usual na literatura. 30.5. Normalização dos Dados de Entrada  Uma das características importantes das funções sigmoidais é a presença de saturação, ou seja, para valores muito grandes de seu argumento elas estarão operando na região saturada da curva.  É importante, portanto, 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].  No Tópico 1 foram discutidos alguns métodos de normalização dos dados de entrada, como normalização linear e normalização de média zero.
  • 329. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 329 30.6. Inicialização dos Vetores de Pesos e Limiares (Bias)  A qualidade e eficiência do aprendizado supervisionado em redes multicamadas depende fortemente da especificação de arquitetura da rede, função de ativação dos neurônios, regra de aprendizagem e valores iniciais do vetor de parâmetros (pesos).  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á foram 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 boa definição do conjunto inicial de pesos, ou seja, um conjunto que guie o processo de treinamento para uma solução satisfatória, fora de mínimos locais pobres e problemas de instabilidade numérica.
  • 330. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 330  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 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 que empregam busca local.
  • 331. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 331  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, que atrairá a solução (HERTZ et al., 1991).  Consequentemente, apenas mínimos locais podem ser produzidos, na prática, como resultados de um processo de treinamento supervisionado bem-sucedido. Se 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 as amostras.  Considerando abordagens melhor elaboradas, existem basicamente dois paradigmas alternativos para busca do melhor conjunto inicial de pesos via treinamento supervisionado:
  • 332. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 332 1. Paradigma do caminho mais fácil: não é tão comum na literatura. A ideia 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 evoluir mais rapidamente, em média, e mais eficientemente, a partir da condição inicial. A estratégia mais simples é definir automaticamente um intervalo de inicialização para os pesos e utilizar uma distribuição uniforme neste intervalo. 2. Paradigma do caminho mais curto: é a abordagem geralmente empregada na literatura. A ideia básica é fornecer uma condição inicial o mais próxima possível da solução ótima, ainda desconhecida. A ideia intuitiva por trás desta abordagem é que quanto mais próxima da solução ótima estiver a condição inicial, menor 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
  • 333. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 333 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).  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 consequê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 consequências da combinação dados de entrada-saída + pesos no processamento de sinais da rede neural. Como consequê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:
  • 334. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 334 NGUYEN & WIDROW (1990), KIM & RA (1991), LEHTOKANGAS et al. (1995) e DE CASTRO, L.N. & VON ZUBEN (1998). 31. Referências sobre Redes MLP de Castro L.N., & Von Zuben F.J., “A Hybrid Paradigm for Weight Initialization in Supervised Feedforward Neural Network Learning”, Proc. of the ICS (Int. Computer Symposium), Workshop on Artificial Intelligence, Tainan/Taiwan/R.O.C., pp. 30-37. Cybenko G., “Approximation by Superpositions of a Sigmoidal Function”, Mathematics of Control Signals and Systems, vol. 2, pp. 303-314, 1989. Hagan M.T., Demuth H.B. & Beale M., “Neural Network Design”, PWS Publishing Company, 1995. Haykin S. “Neural Networks – A Comprehensive Foundation”, Macmillan College Publishing Inc., 1994. Hertz J., Krogh A. & Palmer R.G., Introduction to the Theory of Neural Computation. Addison-Wesley Publishing Company, 1991. Kim Y.K., & Ra J.B., “Weight Value Initialization for Improving Training Speed in the Backpropagation Network”, Proceedings of the IEEE International Joint Conference on Neural Networks, vol. 3, pp. 2396- 2401, 1991. Kolen J.F., & Pollack J.B., “Back Propagation is Sensitive to Initial Conditions”, Technical Report TR 90- JK-BPSIC, 1990, URL: ftp://ftp.cs.brandeis.edu/pub/faculty/ pollack/bpsic.tar.Z. Lehtokangas M., Saarinen J., Kaski K. & Huuhtanen P., “Initializing Weights of a Multilayer Perceptron by Using the Orthogonal Least Squares Algorithm”, Neural Computation, vol. 7, pp. 982-999, 1995. Minsky M.L. & Papert S.A., “Perceptrons: An Introduction to Computational Geometry”, M.I.T. Press, Cambridge, Massachusets, 1969. Nguyen D., & Widrow B., “Nguyen-Widrow Initialization”, Em FAUSETT, 1994, pp. 297, 1990.
  • 335. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 335 Prechelt, L., “Automatic Early Stopping Using Cross-Validation: Quantifying the Criteria”, Neural Networks, vol. 11, pp. 761-767. Thimm G., & Fiesler E., “High-Order and Multilayer Perceptron Initialization”, IEEE Trans. on Neural Networks, vol. 8, n° 2, 1997. Witten, I. H. & Frank, E., Data Mining: Practical Machine Learning Tools and Techniques, 2nd . Ed., Morgan Kauffman, 2005.
  • 336. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 336 32. Técnicas de Otimização Não Linear Irrestrita para o Treinamento de Redes MLP  O treinamento de redes neurais com várias camadas pode ser entendido como um caso especial de aproximação de funções, onde não é levado em consideração nenhum modelo explícito dos dados.  A retropropagação (backpropagation) do gradiente do erro provou sua utilidade no treinamento supervisionado de redes multicamadas para aplicação a muitos problemas de classificação e mapeamento estático de funções não lineares.  Há casos em que a velocidade de aprendizagem é um fator limitante para possibilitar a implementação prática deste tipo de ferramenta computacional no processo de solução de problemas que requerem otimalidade, robustez e rapidez na convergência do processo de ajuste de parâmetros.
  • 337. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 337  Mesmo em aplicações onde uma resposta em tempo real não é necessária, a complexidade temporal do algoritmo pode resultar na intratabilidade computacional do problema.  Como exemplo, o aumento da complexidade intrínseca dos problemas atuais da área de engenharia tem produzido uma explosão combinatória dos possíveis candidatos à solução, mesmo quando existem direcionamentos efetivos para a exploração do espaço de solução.  Além disso, dentre os métodos de busca no espaço de solução, é consenso a ideia de que não existe um método que seja o melhor para todos os casos (WOLPERT & MACREADY, 1997). Sendo assim, muitas soluções encontradas por métodos específicos podem não atender aos requisitos mínimos do problema.  Uma forma eficiente de lidar com esta situação é recorrer ao potencial de processamento computacional hoje disponível e passar a operar com métodos que
  • 338. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 338 forneçam simultaneamente múltiplos candidatos à solução, dentre os quais se possa escolher o melhor segundo algum critério pré-estabelecido.  No caso da solução ser produzida utilizando-se redes neurais artificiais, este procedimento é tão mais viável quanto maior for a velocidade de aprendizagem da rede neural.  Por exemplo, um aumento de dez vezes na velocidade de busca de uma solução permite que se encontre dez vezes mais candidatos à solução com o mesmo custo computacional.  Nesta classe encontram-se aplicações relacionadas com a modelagem e identificação de sistemas não lineares, previsão de séries temporais e controle de processos adaptativos (BATTITI, 1992).  O processo de treinamento supervisionado de redes neurais artificiais multicamadas é equivalente a um problema de otimização não linear irrestrito,
  • 339. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 339 onde uma função de erro global é minimizada a partir do ajuste de parâmetros da rede neural (pesos).  Esta perspectiva do processo de treinamento supervisionado permite desenvolver algoritmos de treinamento baseados em resultados bem fundamentados da teoria de análise numérica convencional.  Os principais procedimentos de análise numérica passíveis de implementação computacional empregam métodos que utilizam somente o gradiente local da função ou então métodos que utilizam também as derivadas de segunda ordem.  No primeiro caso, a função é aproximada pelo primeiro (constante) e segundo (linear) termos da expansão de Taylor; no segundo caso, o terceiro termo (quadrático) também é considerado. 32.1. Série de Taylor e Derivadas de Primeira e Segunda Ordem  ...*)()(*)( 2 1 *)()(*)()( * 2 *   xxxxxxxxxx xxxx TTT FFFF
  • 340. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 340  T n F x F x F x F              )()()()( 21 xxxx   T nnn n n F x F xx F xx F xx F x F xx F xx F xx F x F                                          )()()( )()()( )()()( )( 2 2 2 2 1 2 2 2 2 2 2 12 2 1 2 21 2 2 1 2 2 xxx xxx xxx x     32.2. Exemplo de aproximação (expansão) em série de Taylor:  F(x) = cos(x)  Expansão em Taylor para F(x) em torno do ponto x = 0.   42 24 1 2 1 1)( xxxF
  • 341. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 341 -6 -3 0 3 6 -2 -1 0 1 2 x cos(x) -6 -3 0 3 6 -2 -1 0 1 2 F0(x) F4(x) F2(x)
  • 342. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 342  Este tópico descreve alguns métodos que mostram acelerar a convergência média da fase de treinamento.  Alguns destes métodos, ao passo que requerem poucas modificações no algoritmo de retropropagação padrão, resultam em elevados graus de aceleração além de não mais requererem a escolha de parâmetros críticos da rede neural como a taxa de aprendizagem e o coeficiente de momento.  Como o treinamento de redes multicamadas pode sempre ser entendido como um problema geral de aproximação de funções, far-se-á uma breve introdução sobre a teoria de aproximação de funções e avaliação do nível de aproximação.  Em seguida serão apresentados métodos de otimização do processo de aproximação resultante.
  • 343. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 343 33. Aproximação de Funções  Considere o problema de aproximar uma função g(.): X  m  r por um modelo de aproximação representado pela função )θ(.,ˆg : X  P  r , onde   P (P finito) é um vetor de parâmetros.  O problema geral de aproximação pode ser formalmente apresentado como segue: o Considere a função g(.): X  m  r , que mapeia pontos de um subespaço compacto X  m em pontos de um subespaço compacto g[X]  r . o Com base nos pares de vetores de entrada saída   N lll 1, sx amostrados a partir do mapeamento determinístico definido pela função g na forma: lll g  )(xs , l = 1,…,N, e dado o modelo de aproximação rP Xg :)θ(.,ˆ , determine o vetor de parâmetros *  P tal que dist(g(.), *)θ(.,ˆg )  dist(g(.), )θ(.,ˆg ), para todo   P , onde o operador dist(.,.) mede a distância entre duas funções definidas no espaço X.
  • 344. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 344 o O vetor l expressa o erro no processo de amostragem, sendo assumido ser de média zero e variância fixa.  A solução deste problema, se existir, é denominada a melhor aproximação e depende diretamente da classe de funções a qual gˆ pertence. 33.1. Avaliação do Nível de Aproximação  Em problemas de aproximação utilizando um número finito de dados amostrados e definido um modelo de aproximação )θ(.,ˆg , a distância entre a função a ser aproximada e sua aproximação dist(g(.), )θ(.,ˆg ) é uma função apenas do vetor de parâmetros   P .  Tomando a norma euclidiana como a medida de distância, produz-se a seguinte expressão:     N l gg N J 1 2 )θ,(ˆ)( 1 )θ( xx (1)
  • 345. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 345  O funcional J: P   é denominado superfície de erro do problema de aproximação, pois pode ser interpretado como uma hipersuperfície localizada “acima” do espaço de parâmetros P , sendo que para cada ponto   P corresponde uma “altura” J().  O termo funcional corresponde a toda função f : X  n  , e por isso o problema de minimizar J() torna-se um problema de minimização funcional.  Dada a superfície de erro, o problema de aproximação passa a ser um problema de otimização cuja solução é o vetor *  P que minimiza J(), ou seja: )θ(minarg*θ θ J P   (2)  Durante o processo de aproximação da função g(.) pela função )θ(.,ˆg fornecida pela rede neural, devem ser considerados três tipos de erros (VAN DER SMAGT, 1994): o erro de representação, o erro de generalização e o erro de otimização.
  • 346. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 346  Erro de Representação: primeiro consideremos o caso em que todo o conjunto amostral está disponível    1, lll sx . Assuma, também, que dado    1, lll sx , é possível encontrar um conjunto de parâmetros ótimo *. Neste caso, o erro vai depender da adequação e do nível de flexibilidade do modelo de aproximação ).θ(.,ˆg Este erro é também conhecido como erro de aproximação, ou efeito bias.  Erro de Generalização: em aplicações de mundo real, somente um número finito de amostras está disponível ou pode ser usado simultaneamente. Além disso, os dados podem conter ruído. Os valores de g para os quais nenhuma amostra está disponível devem ser interpolados. Devido a estes fatores pode ocorrer um erro de generalização, também conhecido como erro de estimação, ou variância.  Erro de Otimização: como o conjunto de dados é limitado, o erro é avaliado somente nos pontos que pertencem ao conjunto amostral.
  • 347. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 347  Dado o conjunto amostral   N lll 1, sx , o vetor de parâmetros  = * deve fornecer a melhor função de aproximação possível com base na representação paramétrica )θ(.,ˆg e na medida de distância dada pelo funcional de erro.  Se a superfície de erro for contínua e diferenciável em relação ao vetor de parâmetros (os parâmetros podem assumir qualquer valor real), então os mais eficientes métodos de otimização não linear irrestrita podem ser aplicados para minimizar J(). 34. Técnicas de Otimização Não linear Irrestrita  Para a maioria dos modelos de aproximação )θ(.,ˆg , o problema de otimização apresentado na Equação 2 tem a desvantagem de ser não linear e não-convexo, mas as vantagens de ser irrestrito e permitir a aplicação de conceitos de cálculo variacional na obtenção da solução *.
  • 348. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 348  Estas características impedem a existência de uma solução analítica, mas permitem obter processos iterativos de solução, a partir de uma condição inicial 0, na forma: 0,αθθ 1  iiiii d , (3) onde i  P é o vetor de parâmetros, i  + é um escalar que define o passo de ajuste e di  P é a direção de ajuste, todos definidos na iteração i.  Os algoritmos de otimização revisados neste capítulo são aplicados na obtenção da direção de ajuste do processo iterativo dado pela Equação (3) acima.  A forma pela qual cada um dos algoritmos procede no cálculo da direção de ajuste dos parâmetros e do passo a cada iteração permite estabelecer distinções entre eles.  Quando a direção de minimização está disponível, é preciso definir o tamanho do passo i  + para se determinar o ajuste de parâmetros naquela direção.  Podem ser utilizados inúmeros procedimentos de busca unidimensional na determinação do passo. Alguns destes procedimentos serão vistos posteriormente.
  • 349. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 349  Uma forma comum de classificação dos algoritmos de otimização é baseada na ‘ordem’ da informação que eles devem calcular.  Por ordem queremos dizer ordem das derivadas da função objetivo (funcional de erro).  A primeira classe de algoritmos não requer mais do que a simples avaliação da função em diferentes pontos do espaço. Nenhuma derivada está envolvida. São os chamados métodos sem diferenciação.  A segunda classe de algoritmos faz uso da derivada primeira da função a ser minimizada. São chamados de métodos de primeira ordem.  Outra classe de algoritmos que será intensamente estuda neste capítulo são os chamados métodos de segunda ordem, e que utilizam informações sobre a derivada segunda da função de custo.
  • 350. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 350  Uma última divisão inclui os algoritmos cujos parâmetros são ajustados de maneira empírica, ou seja, através de procedimentos de tentativa e erro. Classificam-se como métodos empíricos. ESTRATÉGIASDETREINAMENTO SEMDIFERENCIAÇÃO 1a ORDEM 2a ORDEM EMPÍRICOS GA SA BP GRAD CG QNN-LM QP MOD. SCG FR PR DFP BFGS OSSBE
  • 351. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 351 Mínimos Locais e Globais  O ponto x* é um mínimo local de F(x) se existe um escalar  > 0, tal que F(x*) < F(x + x) para todo x tal que 0 < ||x|| < .  O ponto x* é um mínimo global único de F(x) se F(x*) < F(x + x) para todo x  0. -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -20 -15 -10 -5 0 5 10 Mínimo local Mínimo global
  • 352. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 352  Os métodos discutidos neste tópico têm como objetivo determinar mínimos locais, que são pontos na vizinhança dos quais o funcional de erro possui o menor valor.  Teoricamente, os métodos de segunda ordem não são mais capazes de encontrar um mínimo global do que os métodos de primeira ordem.  O problema de determinação de mínimos globais, mesmo dentro de um conjunto de mínimos locais bem definidos, é difícil devido a impossibilidade fundamental de se reconhecer um mínimo global utilizando-se apenas informações locais.  Mínimos locais não são únicos por uma de duas razões: o a função é multimodal; o se a Hessiana é singular em um mínimo local, este mínimo constitui um conjunto compacto ao invés de um ponto isolado. Isto é, o valor da função deve ser constante ao longo de uma direção, de um plano ou de um subespaço maior.
  • 353. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 353 34.1. Métodos Sem Diferenciação  Dentre esses métodos podemos citar simulated annealing (SA), algoritmos genéticos (GA) e busca exaustiva (BE). 34.2. Métodos de Primeira Ordem  O erro quadrático médio a ser minimizado pode ser apresentado considerando-se seus termos até segunda ordem pela Equação (4): )θθ)(θ()θθ()θθ()θ()θ()θ( 2 ii T ii T iiquad JJJJ  (4) onde J(i) é o vetor gradiente e 2 J(i) é a matriz Hessiana de J(), ambos calculados no ponto  = i, e Jquad() representa a aproximação até segunda ordem de J().  Nos métodos de primeira ordem apenas os termos constante e linear em  da expansão em série de Taylor são considerados.
  • 354. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 354  Estes métodos, onde unicamente o gradiente local determina a direção de minimização d (Eq. (3)), são conhecidos como métodos da direção de maior decrescimento (steepest descent ou gradient descent). Algoritmo Padrão de Primeira Ordem  Este método funciona como segue. Quando a rede está em um estado i, o gradiente J(i) é calculado e um passo de minimização na direção oposta ao gradiente d = J() é efetuado.  No algoritmo padrão, a minimização é geralmente feita com um passo  fixo. A determinação do passo  é fundamental, pois para valores muito baixos, o tempo de treinamento pode tornar-se exageradamente alto, e para valores muito altos os parâmetros podem divergir.  A velocidade de convergência é geralmente melhorada adicionando-se um termo de momento: 0,θβαθθ 11   iiiiiii d (5)
  • 355. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 355  Este termo adicional geralmente evita oscilações no comportamento do erro, pois pode ser interpretado como a inclusão de uma aproximação da informação de segunda ordem. Algoritmo: Método do Gradiente  Dentre os métodos que utilizam diferenciação e busca, o método do gradiente é o mais simples para obtenção da direção di, pois utiliza apenas informações de primeira ordem.
  • 356. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 356  Na i-ésima iteração, a direção di é definida como a direção de módulo unitário de maior decrescimento da função J: )θ( )θ( J J   d .  A lei de ajuste do método do gradiente é, então, dada por: )θ( )θ( αθθ 1 i i iii J J   
  • 357. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 357 Algoritmo:
  • 358. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 358 34.3. Métodos de Segunda Ordem  Atualmente estes métodos são considerados a maneira mais eficiente de se fazer o treinamento de redes neurais do tipo MLP.  Estes algoritmos recorrem a um rigor matemático baseado em modelos de otimização não linear irrestrita bem definidos, não apresentando assim um vínculo natural com a inspiração biológica inicialmente proposta para as RNA's.  Todos os métodos a serem descritos a seguir, a exceção dos métodos de gradiente conjugado escalonado, utilizam um procedimento de busca unidimensional para encontrar um i que seja solução ótima do problema: )α(θmin ]1,0(α iiiJ i d  . Método de Newton Modificado  O método de Newton pode ser considerado como o método local básico que utiliza informações de segunda ordem.
  • 359. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 359  Deve ser enfatizado que a sua aplicação prática aos perceptrons multicamadas é pouco recomendada uma vez que o cálculo da matriz Hessiana representa um elevado custo computacional, pois exige a inversão, análise espectral e armazenagem de uma matriz quadrada que é da ordem do número de parâmetros P a serem ajustados.  O vetor i+1, é a solução que minimiza exatamente J() dado pela Equação (4), atendendo portanto a condição de otimalidade: 0 θ )θ( 1 1      i iquadJ (6)  Aplicando a Equação (6) na Equação (4) resulta:   )θ()θ(θθ 12 1 iiii JJ    , (7) onde 2 J(i) é a matriz Hessiana e J(i) o vetor gradiente.  Utilizando o mesmo raciocínio empregado no caso do método do gradiente, como a função J() não é necessariamente quadrática, a minimização de sua
  • 360. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 360 aproximação quadrática  θquadJ dada pela Equação (4) pode não fornecer uma solução i+1 tal que J(i+1) < J(i). A lei de ajuste (7) torna-se então:   )θ()θ(αθθ 12 1 iiiii JJ    . (8)  Na forma como foi apresentado acima, o método de Newton ainda não apresenta garantia de convergência, pois nada pode ser afirmado sobre o sinal da matriz Hessiana, que deve ser definida positiva por duas razões: o para garantir que a aproximação quadrática tenha um mínimo; e o para garantir que a inversa da matriz Hessiana exista, que é a condição necessária para resolver as Equações (7) ou (8) a cada iteração.  Portanto, é necessário testar a positividade de 2 J() a cada iteração, e na eventualidade de se obter 2 J()  0, deve-se aplicar um procedimento de positivação desta matriz.
  • 361. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 361  Dada uma matriz A simétrica, conhecendo-se o menor autovalor min desta matriz, é possível obter uma matriz M definida positiva a partir de A na forma: o se min > 0, então M = A o se min  0, então M = A + ( - min)I, com  > min.  A lei de ajuste do método de Newton torna-se: )θ(αθθ 1 1 iiiii J   M , onde       0λse)λε()θ( 0λse)θ( ][ min ][ min 2 ][ min 2 ii ii i ii J J IM M , com ][ minλ i o autovalor mínimo de Mi. Ainda não existem resultados que conduzam à determinação automática de um valor ótimo para .
  • 362. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 362  É importante mencionar ainda que em lugar de positivar Mi poder-se-ia, em princípio, utilizar qualquer outra matriz definida positiva de dimensões apropriadas.  A razão para optar pelo processo de positivação da Hessiana é a analogia com o tradicional método de Levenberg-Marquardt (que será visto a seguir) que pode ser interpretado como uma combinação entre a lei de ajuste do método do gradiente e a lei de ajuste do método de Newton.  A determinação exata da matriz Hessiana não é uma tarefa fácil. C. BISHOP (1992) apresenta expressões que permitem o cálculo exato da matriz Hessiana para arquiteturas MLP com uma ou mais camadas intermediárias.
  • 363. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 363 Algoritmo: Método de Levenberg-Marquardt  Este método, assim como o método de Newton, é bastante eficiente quando estamos tratando de redes que não possuem mais do que algumas centenas de conexões a serem ajustadas.
  • 364. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 364  Isto deve-se, principalmente, ao fato de que estes algoritmos necessitam armazenar uma matriz quadrada cuja dimensão é da ordem do número de conexões da rede.  O funcional de erro apresentado na Equação (1) representa o erro quadrático médio (MSE).  Se considerarmos como funcional a soma dos erros quadráticos (SSE), e ainda levarmos em conta que o problema pode ter múltiplas saídas, obtemos a seguinte expressão para o funcional de erro:       q k k N i o j ijij rggJ 1 2 1 1 2 )θ,(ˆ)()θ( xx (9) onde N é o número de amostras, r o erro residual, o o número de saídas, e q o produto N  o.  Seja J o Jacobiano (matriz das derivadas primeiras) do funcional J dado pela Equação (9). Esta matriz pode ser escrita da seguinte forma:
  • 365. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 365              T q T r r  1 J , onde r é denominado de erro residual.  Diferenciando:    q k kk T rJ 1 22 rrJ ,            q k kk T rJ 1 22 2 rJJ  Quando os erros residuais são suficientemente pequenos, a matriz Hessiana pode ser aproximada pelo primeiro termo da equação acima: JJT J 22  .  Esta aproximação geralmente é válida em um mínimo de J para a maioria dos propósitos, e é a base para o método de Gauss-Newton. A lei de atualização torna- se então:   rJJJ TT 1 θ   .
  • 366. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 366  A modificação de Levenberg-Marquardt para o método de Gauss-Newton é:   rJIJJ TT 1 μθ   .  O efeito da matriz adicional I é adicionar  a cada autovalor de JT J.  Uma vez que a matriz JT J é positiva semi-definida e, portanto, o autovalor mínimo possível é zero, qualquer valor positivo, pequeno, mas numericamente significativo, de  será suficiente para restaurar a matriz aumentada e produzir uma direção descendente de busca.
  • 367. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 367 Algoritmo:
  • 368. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 368 Método de Davidon-Fletcher-Powell (DFP)  Este método, assim como o método BFGS que será apresentado em seguida, é classificado como método quase-Newton.  A ideia por trás dos métodos quase-Newton é fazer uma aproximação iterativa da inversa da matriz Hessiana, de forma que: 12 )(lim    θH Ji i .  São considerados os métodos teoricamente mais sofisticados na solução de problemas de otimização não linear irrestrita e representam o ápice do desenvolvimento de algoritmos através de uma análise detalhada de problemas quadráticos.  Para problemas quadráticos, gera as direções do método do gradiente conjugado (que será visto posteriormente) ao mesmo tempo que constrói a inversa da Hessiana.
  • 369. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 369  A cada passo a inversa da Hessiana é aproximada pela soma de duas matrizes simétricas de posto 1, procedimento que é geralmente chamado de correção de posto 2 (rank 2 correction procedure).  Construção da inversa: ii T i i T iii i T i T ii ii qHq HqqH qp pp HH 1 , i = 0, 1, …, P – 1. Onde iii dp α e iiii J pggq )θ(2 1   .  Note que a avaliação do gradiente em dois pontos fornece informações sobre a matriz Hessiana 2 J().
  • 370. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 370
  • 371. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 371 Método de Broyden-Fletcher-Goldfarb-Shanno (BFGS) i T i i T ii T iii i T i ii T i i T i T ii ii qp HqppqH qp qHq qp pp HH            11 , onde p e q são obtidos como anteriormente. Método das Secantes de um Passo (OSS – One Step Secant)  O termo método de secante provém do fato de que as derivadas são aproximadas por secantes avaliadas em dois pontos da função (neste caso a função é o gradiente).  Uma vantagem deste método apresentado por BATTITI (1992; 1994) é que sua complexidade é de ordem O(P), ou seja, é linear em relação ao número P de parâmetros, enquanto a complexidade dos métodos DFP e BFGS é de ordem O(P2 ).  A nova direção de busca di+1 é obtida como segue: iiiiii BA qsgd 1 ,
  • 372. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 372 onde iiii ps   θθ 1 . i T i i T i i i T i i T i i T i i T i i T i i T i i BA qs gs qs gq qs gs qs qq           ;1 .  Os vetores qi e pi são determinados como anteriormente.
  • 373. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 373
  • 374. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 374 Gradiente Conjugado (GC): Polak-Ribiére (PR) e Fletcher-Reeves (FR)  Existe um consenso geral da comunidade de análise numérica que a classe de métodos de otimização chamados métodos do gradiente conjugado, tratam de problemas de grande escala de maneira efetiva.  Os métodos do gradiente conjugado possuem sua estratégia baseada no modelo geral de otimização apresentado no algoritmo padrão e do gradiente, mas escolhem a direção de busca di, o passo i e o coeficiente de momento i mais eficientemente utilizando informações de segunda ordem.  É projetado para exigir menos cálculos que o método de Newton e apresentar taxas de convergência maiores que as do método do gradiente.  É baseado no método das direções conjugadas proposto para tratar problemas quadráticos: θθθ 2 1 )θ( TT J bQ 
  • 375. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 375  A lei de ajuste do método das direções conjugadas é dada por: . )θ( θθ 1 i i T i i T i ii J d Qdd d    Antes de aplicarmos a lei de ajuste dada pela Equação (10), é necessário obter as direções Q-conjugadas di  P , i=0,…,P1. Uma maneira de determinar estas direções é tomá-las na forma (BAZARAA et. al., 1993): i T i i T i iiii J iJ J Qdd Qd dd d )θ( βcom 0β)θ( )θ( 1 i 11 00          .  Para problemas não-quadráticos a matriz Q deve ser aproximada pela matriz Hessiana calculada no ponto i.
  • 376. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 376  Isso envolve um procedimento de busca unidimensional do passo de ajuste (taxa de aprendizagem) e a aproximação do parâmetro  utilizando informações de primeira ordem (gradiente).  Uma destas aproximações é dada pelo método de Polak-Ribière (PR). Se (i mod P  0), faça iiii dgd β1  , onde   i T i ii T i i gg ggg    11 β Senão, faça: di = ig .
  • 377. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 377 Algoritmo:
  • 378. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 378  Outra aproximação é dada pelo método de Fletcher-Reeves (FR). Se (i mod P  0), faça iiii dgd β1  , onde 2 2 1 β i i i g g   . Senão, faça: di = ig .
  • 379. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 379 Algoritmo:
  • 380. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 380 Método do Gradiente Conjugado Escalonado (SCG)  Os métodos de segunda ordem apresentados até agora utilizam um procedimento de busca unidimensional para a determinação da taxa de aprendizagem.  A busca unidimensional envolve um grande número de avaliações da função ou de sua derivada, tornando o processo bastante custoso do ponto de vista computacional.  MOLLER (1993) introduz uma nova variação no algoritmo de gradiente conjugado (Gradiente Conjugado Escalonado – SCG), que evita a busca unidimensional a cada iteração utilizando uma abordagem de Levenberg-Marquardt cujo objetivo é fazer um escalonamento do passo de ajuste . Método do Gradiente Conjugado Escalonado Modificado (SCGM)  Uma modificação importante do algoritmo SCG resulta no algoritmo SCGM, que permite o cálculo exato da informação de segunda ordem.
  • 381. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 381  PEARLMUTTER (1994) propôs a utilização de um operador diferencial capaz de calcular exatamente o produto entre a matriz Hessiana e qualquer vetor desejado, sem a necessidade de se calcular e armazenar a matriz Hessiana.  Para o caso dos perceptrons de múltiplas camadas, o vetor a ser multiplicado pela Hessiana corresponde a direção de busca na iteração anterior. 35. Busca Iterativa da Taxa de Aprendizagem  Uma das formas mais importantes de otimizar o algoritmo de retropropagação (back-propagation) é determinando automaticamente valores adequados para a taxa de aprendizagem.  Várias técnicas podem ser sugeridas para o ajuste deste parâmetro durante o treinamento.  No treinamento em lote o vetor de parâmetros (pesos) só é atualizado depois que todas as amostras de treinamento foram apresentadas a rede.
  • 382. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 382  Um único valor para o passo é equivalente a multiplicar a direção de ajuste por um escalar, não alterando assim a direção de ajuste.  Para garantir um passo minimizante na direção de ajuste a cada iteração, métodos de busca unidimensional devem ser empregados, exigindo um esforço computacional adicional por iteração. 35.1. Busca Simples do Passo  Um método bastante simples de determinação do valor de ajuste da taxa a cada iteração é apresentado abaixo (P é o valor provisório do vetor de parâmetros): 1. iai t αα  ; )θ( )θ( αθθ 1 i i ii p i J J    ; calcule  p iJ 1θ  2. Enquanto  p iJ 1θ   J(i) faça: 2.1. iri t αα  2.2. )θ( )θ( αθθ 1 i i ii p i J J    3. p ii θθ 
  • 383. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 383  Este método faz apenas uma avaliação da função caso seja determinado uma redução no erro na primeira tentativa.  Caso contrário, avalia a função quantas vezes forem necessárias para garantir um comportamento monotonicamente decrescente do funcional de erro.  É importante observar que, a menos que haja problemas de precisão numérica na representação computacional, é sempre possível encontrar um i > 0 que garanta um passo minimizante.  No entanto, este método de busca não conduz a um valor ótimo para i.  O objetivo aqui é apenas encontrar um passo i tal que J(i+1) < J(i), e não iα min J(i+1).  Os algoritmos a serem apresentados a seguir descrevem métodos de busca que procuram resolver o problema iα min J(i+1).
  • 384. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 384 35.2. Método de Fibonacci  O método de Fibonacci é um procedimento de busca unidimensional do passo cujo objetivo é minimizar uma função estritamente quase-convexa em um intervalo fechado e limitado.  O método de Fibonacci faz duas avaliações da função no primeiro passo e apenas uma avaliação nos passos seguintes (BAZARAA et. al., 1993).  A ideia por trás deste método é encontrar um valor ótimo para i em um intervalo ]α,0( , denominado intervalo de incerteza.  Para tanto, promove-se uma redução contínua do intervalo de incerteza a cada iteração da função até que seja atingido um intervalo de incerteza suficientemente pequeno.  O valor ótimo de i é tomado como o ponto central (ou um dos extremos) deste intervalo resultante.
  • 385. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 385  Este método, assim como o método da Seção Áurea e da Falsa Posição, que serão apresentados em seguida, utiliza a seguinte metodologia: o Dado um ponto i, encontre um passo satisfatório α que gere um novo ponto θ = i + α di.  Determinar o passo i envolve a solução do subproblema ]α,0(α i min J(i + idi), que é um problema de busca unidimensional.  Considere a função J : P  ; para d  P fixo, a função g:   , tal que g() = J(i+ idi) depende apenas do escalar i  (0, α ].  O método é baseado na sequência de Fibonacci {Fv}: Fv+1 = Fv + Fv-1, v = 1, 2, … F0 = F1 = 1  A sequência torna-se então 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, ….  Na iteração i suponha que o intervalo de incerteza seja [ai, bi].
  • 386. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 386  Sejam dois pontos quaisquer i e i, e dN o tamanho final desejado do intervalo de incertezas.  Conhecendo o valor de dN (arbitrário) é possível saber quantas iterações (N) serão necessárias para determinar o passo .
  • 387. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 387
  • 388. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 388 35.3. Método da Seção Áurea  Os princípios deste método são os mesmos do método de Fibonacci, a diferença reside apenas na forma de determinação dos pontos i e i.  A sequência de Fibonacci não precisa mais ser gerada, reduzindo sensivelmente o custo computacional do método.
  • 389. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 389
  • 390. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 390 35.4. Método da Falsa Posição  Solucionar o problema ]α,0(α i min J(i + idi), significa minimizar uma função unidimensional.  Estratégias comuns como o método de Newton e outros podem ser utilizados.  A maior desvantagem do método de Newton é a necessidade de se efetuar o cálculo da derivada segunda da função.  O algoritmo da falsa posição possui três diferenças básicas em relação aos algoritmos de busca vistos até agora (Fibonacci e Seção Áurea): o necessita efetuar o cálculo da derivada da função a cada iteração; o calcula o valor do passo ótimo minimizando a função J(i + idi), ao invés de reduzir o intervalo de incerteza; o possível critério de parada: N i ii d   θ θθ 1 .
  • 391. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 391 36. Comparação de Desempenho  Para a análise dos algoritmos estudados e validação dos métodos propostos, foram abordados oito problemas (benchmarks).  Estes problemas podem ser divididos em três grupos: o problemas de paridade; o classificação; e o aproximação de funções.  Seja k o número de entradas, N o número total de amostras e m o número de saídas da rede. o XOR - paridade: k = 2; N = 4 e m = 1 o COD/DEC - paridade: k = 10; N = 10 e m = 10 o sen(x).cos(2x) - aproximação de funções: k = 1; N = 21 e m = 1 o ESP - aproximação de funções: k = 2; N = 75 e m = 5 o SOJA - aproximação de funções: k = 36; N = 144 e m = 1
  • 392. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 392 o IRIS - classificação: k = 4; N = 150 e m = 1 o ECOLI - classificação: k = 7; N = 336 e m = 1 o GLASS - classificação: k = 10; N = 214 e m = 1  Algoritmos Implementados: o Algoritmo padrão (BP) o Método do gradiente (GRAD) o Fletcher & Reeves (FR) o Pollak-Ribière (PR) o Gradiente conjugado escalonado modificado (SCGM) o One step secant (OSS) o Davidon-Fletcher-Powell (DFP) o Broyden-Fletcher-Goldfarb-Shanno (BFGS) 36.1. Desempenho: Velocidade de Convergência  Exemplo de desempenho: função sen(x).cos(2x).
  • 393. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 393 Net: [1, 10, 1] SSE: 0.1 P: 31 bp: 0.005 N: 25 : 0.95 Nci: 20 Inic.: [-1.0; 1.0] ÉPOCAS ||J()|| flops  106 T(seg.) BP 15257 0.021516 195.86 374.67 GRAD 11324 0.022548 143.74 342.45 FR 360 0.623722 32.21 60.81 PR 414 0.328516 36.41 65.00 OSS 2709 0.251328 282.89 469.95 SCGM 172 0.717829 17.19 23.63 DFP 134 0.325639 21.39 19.74 BFGS 199 0.568088 35.35 33.23
  • 394. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 394 Estatísticas 12,5% 75,0% 12,5% FR SCG DFP 16,7% 66,7% 16,7% GRAD SCG DFP 33,3% 66,7% GRAD SCG (a) (b) (c) Comparação geral de desempenho dos algoritmos em relação aos oito problemas abordados. Os valores percentuais indicam o quanto cada um dos algoritmos
  • 395. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 395 mostrou-se superior aos outros para todos os problemas. (a) Número de épocas para convergência. (b) Menor tempo de processamento. (c) Menor esforço computacional. 36.2. Capacidade de Generalização  Problema sen(x).cos(2x) com ruído uniforme em [0.15, +0.15]: Ntr = Nte = Nval = 25. s MSE FVU EP flops106 MSEtr MSEval MSEte FVUtr FVUval FVUte BP 6 0.02165 0.03404 0.02536 0.08242 0.13727 0.09463 2640 39.50 GRAD 4 0.12843 0.11780 0.13875 0.48899 0.47500 0.51780 1120 20.68 FR 4 0.00522 0.01003 0.01281 0.01988 0.04044 0.04779 730 70.10 PR 4 0.00432 0.01088 0.01142 0.01645 0.04387 0.04262 1310 114.78 SCG 4 0.00275 0.01136 0.01238 0.01047 0.04582 0.04621 1390 129.63 OSS 4 0.02178 0.03457 0.02529 0.08294 0.13941 0.09439 590 79.20
  • 396. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 396 DFP 6 0.00605 0.01171 0.01103 0.02305 0.04723 0.04115 2350 305.62 BFGS 4 0.00466 0.01184 0.01251 0.01773 0.04773 0.04669 1220 199.42 Estatísticas 33,3% 50,0% 16,7% FR SCG PR 16,7% 50,0% 16,7% 16,7% FR SCG PR DFP 16,7% 16,7% 16,7%16,7% 16,7% 16,7% BP SCG FR PR GRAD DFP Comparação geral da capacidade de generalização dos algoritmos em relação a seis dos oito problemas abordados. Os valores percentuais indicam o quanto cada um dos
  • 397. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 397 algoritmos mostrou-se superior aos outros para todos os problemas. (a) Menor erro de treinamento. (b) Menor erro de validação. (c) Menor erro de teste.
  • 398. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 398 37. Referências sobre Otimização Não Linear para Treinamento de Redes MLP Wolpert, D. H. and Macready, W. G. (1997), “No Free Lunch Theorems for Optimization”, IEEE Trans. on Evolutionary Computation, 1(1), pp. 67-82. Van Der Smagt P., P, “Minimization Methods for Training Feedforward Neural networks,” Neural Networks, vol 1, n° 7, 1994. Bishop C., “Exact Calculation of the Hessian Matrix for the Multilayer Perceptron,” Neural Computation, vol. 4, pp. 494-501, 1992. Battiti R., “First- and Second-Order Methods for Learning: Between Steepest Descent and Newton’s Method”, Neural Computation, vol. 4, pp. 141-166, 1992. 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. Bazaraa M., Sherali H.D. & Shetty C.M., “Nonlinear Programming – Theory and Algorithms”, 2° edição, John Wiley & Sons Inc., 1993. Moller M.F., “A Scaled Conjugate Gradient Algorithm for Fast Supervised Learning”, Neural Networks, vol. 6, pp. 525-533, 1993. Pearlmutter B.A., “Fast Exact Calculation by the Hessian”, Neural Computation, vol. 6, pp. 147-160, 1994. Prechelt L., “Automatic Early Stopping Using Cross Validation: Quantifying the Criteria”, Neural Networks, vol. 11, n° 4, pp. 761-767, 1998. Sarle W.S., “Stopped Training and Other Remedies for Overfitting”, Proceedings of the Symposium on the Interface, 1995.
  • 399. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 399 Prechelt L., “Early Stopping - but when?”, Technical Report, 1997, URL: http:// wwwipd.ira.uka.de/~prechelt/Biblio/stop_tricks1997.ps.gz
  • 400. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 400 38. Máquinas de Vetores Suporte  Nota: Material extraído (com autorização) de Semolini (2002) e também preparado com base nos livros: (Haykin, 1999; Cristianini & Shawe-Taylor, 2000).  As Máquinas de Vetores Suporte (Support Vector Machines – SVM) implementam um mapeamento não linear, executado por um produto interno kernel escolhido a priori, dos dados de entrada para um espaço característico de alta dimensão em que um hiperplano ótimo é construído para separar os dados linearmente em duas classes.  Quando os dados de treinamento são linearmente separáveis, o hiperplano ótimo no espaço característico é aquele que apresenta a máxima margem de separação.  Para dados de treinamento em que as amostras das diversas classes apresentam superposição (dados não linearmente separáveis), uma generalização deste conceito é usada.
  • 401. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 401  As SVMs baseiam-se nos princípios da minimização do risco estrutural, proveniente da teoria do aprendizado estatístico, a qual está baseada no fato de que o erro do algoritmo de aprendizagem junto aos dados de teste (erro de generalização), é limitado pelo erro de treinamento mais um termo que depende da dimensão VC (dimensão de Vapnik-Chervonenkis), que é uma medida da capacidade de expressão de uma família de funções.  O objetivo é construir um conjunto de hiperplanos tendo como estratégia a variação da dimensão VC, de modo que o risco empírico (erro de treinamento) e a dimensão VC sejam minimizados simultaneamente.  Será visto que durante a construção do hiperplano ótimo a maximização da margem de separação implica na minimização da dimensão VC.  Desta forma, o hiperplano ótimo efetua uma completa realização do princípio de minimização do risco estrutural.
  • 402. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 402  O treinamento da SVM consiste em um problema de otimização quadrático que é atrativo pela garantia da convergência para um mínimo global da superfície de erro.  O problema de otimização primal é transformado em sua versão dual, o que elimina o problema da dimensionalidade, tornando o número de parâmetros ajustáveis dependente apenas da quantidade de dados de treinamento.  O uso de um produto interno kernel oferece uma solução alternativa para projetar os dados em um espaço característico de alta dimensão. 39. Otimização e Produto Interno Kernel 39.1. Conceitos de Otimização  Formulação geral de um problema de minimização com restrições: Definição 1 : (Problema de otimização primal) Minimizar f(w), w    n .
  • 403. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 403 Sujeito a: gi(w)  0,i = 1 , . . . , k; hj(w) = 0,j = 1 , . . . , m. onde f :   n   é a função-objetivo; gi :   n  , i = 1,... , k; hj :   n   , j = 1,... , m são utilizadas para definir as restrições funcionais.  A região factível será denotada por: F = {w  : gi(w)  0, i = 1,... , k ; hj(w) = 0, j = 1,... , m}.  A solução do problema de otimização será o ponto w*  F tal que não exista outro ponto w  F com f(w) < f(w* ). Este ponto será chamado de mínimo global.  Quando   > 0 tal que f(w)  f(w* ), w   com ||w  w* || < , o ponto w* será chamado de mínimo local.  Quando a função f é convexa, um mínimo local w* é também mínimo global.  Um problema de otimização em que a função-objetivo é quadrática e as restrições são todas lineares, é chamado de problema de otimização quadrático, e se a
  • 404. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 404 função-objetivo e todas as restrições são convexas o problema é chamado de convexo.  No problema de treinamento para Support Vector Machines, as restrições serão lineares e a função-objetivo será convexa e quadrática. Com isso o problema de otimização também será convexo e quadrático.  Para resolver este tipo de problema de otimização, faz-se necessário apresentar a Teoria Lagrangeana e suas extensões.  A Teoria Lagrangeana foi desenvolvida por Lagrange, em 1797, apenas com restrições de igualdade, generalizando os resultados de Fermat de 1629. Em 1951, Kuhn e Tucker estenderam o método e permitiram restrições de desigualdade. Este novo método conduz às conhecidas condições de Kuhn-Tucker. Teorema 1: (Fermat)
  • 405. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 405 A condição necessária para w* ser um mínimo de f(w), f  C1 , onde C1 é o conjunto das funções contínuas em , é que f(w* )/w = 0. Esta condição, junto com a de convexidade de f, é também uma condição suficiente.  Em problemas restritos é necessária uma função que incorpore tanto a função- objetivo quanto as restrições, e que sua estacionariedade defina a solução.  Esta função é a Lagrangeana (L : n m  ), que é definida como uma combinação linear da função-objetivo e cada restrição associada ao seu respectivo multiplicador de Lagrange j,   m j jj hfL 1 )()(),( www  Teorema 2: (Lagrange) A condição necessária para o ponto w* ser um mínimo de f(w), sujeito a hj(w) = 0, j = 1, ... , m com f, hj  C1 , j = 1, . .. , m é:
  • 406. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 406       0*)*,(;0*)*,(    ww w LL  A condição acima é também suficiente se L(w,* ) é uma função convexa em w.  Considere agora o caso mais geral de um problema de otimização no qual existem restrições tanto de igualdade como de desigualdade, como o problema da Definição 1. Assim, a função Lagrangeana generalizada (L : n k m  ) é dada por:    m j jj k i ii hgfL 11 )()()(),,( wwww   É conveniente agora definir o problema dual Lagrangeano e em seguida três teoremas sobre dualidade. Definição 2: O problema dual Lagrangeano referente ao problema primal da Definição 1 é o seguinte:
  • 407. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 407 Maximizar (, ). Sujeito a:   0. onde (,) = infw L(w,,). Teorema 3 : (Teorema fraco da dualidade) Sendo  a região factível do problema primal da Definição 1 e (*,*) a solução factível do problema dual da Definição 2, então f(w)  (*,*) para w  .  Este teorema afirma que o valor da solução dual é limitada superiormente pelo valor da solução primal.  Se f(w* ) = (* ,* ), onde as restrições do problema primal e dual são satisfeitas, então w* e (* ,* ) resolvem o problema primal e dual respectivamente. Neste caso, i * gi(w* ) = 0, para i = 1, . . . , k.  Resolvendo e comparando as soluções dos problemas primal e dual, espera-se que a diferença entre as duas soluções no ponto ótimo seja zero. Contudo esta
  • 408. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 408 expectativa nem sempre é atendida e a diferença entre os valores do problema primal e dual é chamado de gap de dualidade.  Um caminho para detectar a ausência do gap de dualidade é a presença de um ponto de sela (w* ,* ,* ) satisfazendo L(w* ,,)  L(w* ,* ,* )  L(w,* ,* ), com w  ,   k e   m . Teorema 4: A tripla (w* ,* ,* ) é um ponto de sela da função Lagrangeana para o problema primal se, e somente se, seus componentes são a solução ótima dos problemas primal e dual e não há gap de dualidade. Assim os dois problemas têm custo dado por: f(w* ) = (* ,* ).
  • 409. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 409 Teorema 5: (Teorema forte da dualidade) Dado o problema de otimização da Definição 1 com domínio convexo e gi, i = 1,... , k e hj, j = 1,... , m sendo funções afins, ou seja, do tipo h(w) = Aw  b, o gap de dualidade é igual a zero. Teorema 6: (Condições de Kuhn-Tucker) Dado o problema de otimização da Definição 1 com o domínio convexo, f  C1 convexa, gi, i = 1,... , k e hj, j = 1,... , m sendo funções afins, a condição necessária e suficiente para o ponto w* ser o ótimo é a existência de * , * satisfazendo: ;0),,( ;0),,( *** ***          w w L w L i * gi(w* ) = 0, i = 1, . . . , k;
  • 410. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 410 gi(w* )  0, i = 1, . . . , k; i *  0, i = 1, . . . , k.  O tratamento Lagrangeano para o problema de otimização convexo fornece a alternativa da descrição dual, que frequentemente tende a ser mais fácil de ser resolvida do que a descrição primal, a qual apresenta restrições de desigualdade difíceis de serem resolvidas.  Esta estratégia tornou-se padrão na teoria de Support Vector Machines, porque a representação dual permitirá trabalhar em um espaço de alta dimensão, devido ao número de parâmetros ajustados não depender do número de atributos sendo utilizados (dimensão dos dados de entrada).  Veremos posteriormente que as amostras associadas aos multiplicadores de Lagrange maiores do que zero (restrições ativas) serão denominadas de vetores- suporte.
  • 411. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 411 39.2. Produto Interno Kernel  O nome kernel é derivado da teoria do operador integral.  A teoria de kernels é antiga, o teorema de Mercer foi escrito em 1908. Porém, o conceito de produto interno kernel foi primeiro utilizado por Aizerman et al. (1964a, 1964b) na formulação do método de funções potenciais, que representaram os precursores dos modelos de regressão com funções de base radial.  Aproximadamente no mesmo período, em 1965, Vapnik e Chervonienkis (Vapnik & Chervonienkis, 1974) desenvolveram o conceito do hiperplano ótimo (a ser discutido posteriormente).  A combinação do uso destes dois poderosos conceitos, feita por Vapnik, originou a formulação de Support Vector Machines.
  • 412. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 412 39.2.1. Espaço Característico  Uma estratégia de pré-processamento em algoritmos de aprendizado como os que serão considerados neste estudo, envolve a mudança de representação dos dados na forma: x = (x1, x2, ..., xm)  (x) = (1(x), 2(x), ..., M(x)), onde M >> m.  Este passo é equivalente ao mapeamento não linear do espaço dos dados de entrada X em um novo espaço, F = {(x) | x  X}, chamado de espaço característico.  Iremos denotar o vetor {j(x)}1  j  M como o conjunto de transformações não lineares definidas a priori.  As medidas originais de representação dos dados serão chamadas de atributos e as medidas no espaço F serão chamadas de características.  A Figura 22 mostra um exemplo de mapeamento não linear dos dados de entrada pertencentes a um espaço bidimensional para um espaço característico de mesma
  • 413. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 413 dimensão (na prática este mapeamento é feito para um espaço de dimensão muito maior do que a original).  A ideia é que no primeiro espaço os dados não podem ser separáveis por um hiperplano, mas no segundo espaço isto seria possível. x x x x x x x x x x o o o o o o (x)  (x) (x) (x) (x) (x)(x) (x) (x) (x) (o) (o) (o) (o) (o) (o) Dimensão = m Dimensão = M >> m x x x x x x x x x x o o o o o o (x)  (x) (x) (x) (x) (x)(x) (x) (x) (x) (o) (o) (o) (o) (o) (o) Dimensão = m Dimensão = M >> m Figura 22: Um espaço de características pode simplificar a tarefa de classificação.  Portanto, é possível construir um algoritmo em dois passos:
  • 414. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 414  Primeiro: um mapeamento não linear, escolhido a priori, mapeia os dados de entrada para um espaço característico F, e depois um hiperplano é utilizado como superfície de decisão para classificar os dados neste novo espaço:   M j jj b 1 0)(xw  , onde {wj} 1  j  M é o vetor de pesos e b o bias. Pode-se simplificar este hiperplano escrevendo: ,0)()( 0   M j T jj xwxw  (1) onde 0(x) = 1, para todo x, faz o papel do bias.  O vetor (x) representa a imagem induzida no espaço característico a partir do vetor de entrada x.  Será visto posteriormente que o vetor de pesos poderá ser substituído por:
  • 415. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 415 ,)( 1   N i iii y xw  (2) onde (xi) corresponde à imagem induzida do i-ésimo padrão de entrada.  Substituindo a Eq. (2) na Eq. (1), é possível definir a superfície de decisão calculada no espaço característico como: .0)()( 1   N i i T ii y xx  (3)  O termo T (xi)(x) representa o produto interno de dois vetores induzidos no espaço característico pelo vetor de entrada x e pelo i-ésimo padrão xi.  Agora é possível introduzir o produto interno kernel denotado por K(x,xi) e definido como segue: ,)()()()()( 0   M j jiji T iK xxxxxx,  para i = 1, 2, . . . , N . (4)
  • 416. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 416  O produto interno kernel apresenta características importantes por ser uma função simétrica em seus argumentos: K(x, xi) = K(xi, x).  O mais importante é que se pode usar o produto interno kernel para construir o hiperplano ótimo no espaço característico sem ter que considerar este espaço de forma explícita. Isto pode ser visto substituindo a Eq. (4) na Eq. (3): .0)( 1   N i iii Ky xx, (5) Teorema 7: (Mercer)  A expansão da Eq. (4) para o produto interno kernel K(x,xi) é um caso especial do teorema de Mercer, que surgiu no contexto de análise funcional. Este teorema pode ser formulado como segue: Seja K(x,x') uma função kernel contínua e simétrica definida na região fechada [a,b][a,b]. A função kernel K(x,x') pode ser expandida em uma série:
  • 417. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 417     1 )'()()'( i iiiK xxxx,  com coeficientes i > 0. Para esta expansão ser válida e convergir absolutamente e uniformemente, é uma condição necessária e suficiente que :   b a b a ddK 0')'()()',( xxxxxx  para todo () no qual  b a dxx)(2  .  As funções (x) são chamadas de auto-funções (eigenfunctions) da expansão e os coeficientes i são chamados de autovalores. O fato de todos os autovalores serem positivos significa que a função kernel é definida positiva.
  • 418. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 418 39.2.2. Produtos Internos Kernel Usados em SVMs  O principal requisito para o produto interno kernel ser utilizado em SVM é que ele satisfaça o teorema de Mercer.  Os três tipos mais comuns de produtos internos kernel utilizados em SVM são:  Função de Base Radial (RBF): K(x,x') = exp(||x'  x||2 / 22 ) , (6) onde o parâmetro 2 (interpretado como a variância da RBF) é especificado a priori pelo usuário.  Função Polinomial: K(x,x') = (x'T x + 1)d , (7) onde a parâmetro d (grau do polinômio) é especificado a priori pelo usuário.  Perceptron: K(x,x') = tanh(0x'T x + 1), (8)
  • 419. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 419 onde 0 e 1 são os parâmetros ajustados pelo usuário, sendo que apenas para determinados valores destes parâmetros o teorema de Mercer é satisfeito. 40. Teoria do Aprendizado Estatístico  É considerada a melhor teoria atualmente disponível para a estimação estatística de amostras finitas, estudo da dependência funcional e do aprendizado preditivo (Vapnik, 1998).  Considere {(xi,yi)}i = 1,...,N, onde xi  m , yi  , denotando os pares de dados de entrada e saída de treinamento, independentes e identicamente distribuídos, gerados de acordo com alguma função densidade de probabilidade conjunta desconhecida Fx,y(x,y).  O problema do treinamento supervisionado é encontrar uma função particular F(x,w) = ŷ, sendo w o vetor de parâmetros ou pesos, de tal modo que ŷi aproxima a resposta desejada yi de acordo com algum critério estatístico.
  • 420. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 420  A viabilidade do treinamento supervisionado depende das amostras de treinamento conterem informação suficiente para a construção de um algoritmo capaz de gerar um bom desempenho de generalização.  A medida de perda ou discrepância entre a resposta desejada yi e a resposta obtida ŷ= F(x,w) é a função de erro.  Um ponto forte da teoria do aprendizado estatístico é o de não depender da forma da função de erro.  Como exemplo, utilizaremos o caso do problema de regressão, onde é comum o uso da função de erro quadrático dada por: L(y, F(x,w)) = (y  F(x,w))2 .  O objetivo do aprendizado supervisionado é encontrar uma função F(x,w) dentre uma classe de funções {F(x,w), w  W} que minimize a função-risco: R(w) =  L(y, F(x,w)) dFx,y(x,y). (9)
  • 421. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 421  Dado o conjunto de treinamento {(xi,yi)}i = 1,...,N, e utilizando os princípios indutivos da minimização do risco empírico, a minimização da função-risco desconhecida é substituída pela minimização da função-risco empírico conhecida: .)),(,( 1 )( 1   N i iiemp FyL N R wxw (10)  A ideia básica da minimização do risco empírico é trabalhar com a função Remp(w) que difere de R(w) em dois aspectos:  independe da função densidade de probabilidade conjunta desconhecida Fx,y(x,y);  pode ser minimizada com respeito ao vetor de pesos w.  Seja wemp e F(x,wemp) o vetor de pesos e o correspondente mapeamento que minimiza a função-risco empírico (10), e similarmente wo e F(x,wo) o vetor de pesos e o correspondente mapeamento que minimiza a função-risco (9), ambos os vetores pertencentes a W. O problema apresentado é sobre quais condições o
  • 422. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 422 mapeamento aproximado F(x,wemp) está “próximo” do mapeamento desejado F(x,wo), medidos pela diferença entre Remp(w) e R(w).  Para algum w = w* fixo, a função-risco R(w*) determina a esperança matemática da variável aleatória definida por: Zw* = L(y, F(x,w*)).  Por outro lado, a função-risco empírico Remp(w*) é a média aritmética (empírica) da variável aleatória Zw*.  De acordo com a lei dos grandes números, nos casos gerais em que o tamanho do conjunto de treinamento N cresce para infinito, a média empírica da variável aleatória Zw* converge para seu valor esperado.  Isto proporciona uma justificativa teórica para o uso da função-risco empírica Remp(w) no lugar da função-risco R(w). Definição 3: (Vapnik, 1995)
  • 423. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 423 Pode-se dizer que o Princípio da Minimização do Risco Empírico é consistente para um conjunto de funções L(y, F(x,w)), w  W e para a função densidade de probabilidade Fx(x) se as seguintes duas sequências convergem em probabilidade para o mesmo limite (ver Figura 23): ).(inf)( );(inf)( Pr Pr ww ww w w RR RR W ob NNemp W ob NN       N Remp(wN) R(wN) infw R(w) N Remp(wN) R(wN) infw R(w) Figura 23: Consistência da minimização do risco empírico.
  • 424. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 424  Em outras palavras, o princípio da Minimização do Risco Empírico é consistente se ele fornece uma sequência de funções L(y, F(x,wN)), com N = 1,2, ... para o qual o risco esperado e o risco empírico convergem para o mínimo valor possível do risco.  Porém, somente porque a média empírica de Zw* converge para seu valor esperado, não há razão para esperar que o vetor de pesos wemp, que minimiza Remp(w), minimizará também R(w).  Esta exigência será satisfeita da seguinte maneira: se Remp(w) aproxima R(w) uniformemente em w com alguma precisão , então o mínimo de Remp(w) diverge do mínimo de R(w) por uma quantidade que não excede 2.  Formalmente, isto significa que é possível impor uma condição estrita de que, para qualquer w  W e  > 0, a relação probabilística abaixo é valida:        NquandoRRP emp 0)()(sup ww w (11)
  • 425. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 425  Quando a Eq. (11) é satisfeita, é dito que ocorre a convergência uniforme do vetor de pesos w do risco empírico médio para o seu valor esperado.  Esta convergência é uma condição necessária e suficiente para o princípio da minimização do risco empírico (Vapnik, 1982, 1998).  Uma interpretação deste princípio é que, antes de empregar um algoritmo de aprendizado, todas as funções de aproximação são igualmente prováveis (plausíveis).  Com a progressão da execução do algoritmo de aprendizado, a plausibilidade das funções de aproximação F(x,w) que são consistentes com as amostras de treinamento são aumentadas.  Conforme o tamanho do conjunto de treinamento N cresce e o espaço de entrada é por meio disso densamente povoado, o ponto mínimo da função-risco empírico Remp(w) converge em probabilidade para o ponto mínimo da verdadeira função- risco R(w).
  • 426. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 426 40.1. Dimensão VC  A teoria da convergência uniforme da função-risco empírico Remp(w) para a real função-risco R(w) inclui limitantes na razão de convergência, que são baseados em um importante parâmetro denominado de dimensão Vapnik e Chervonenkis, ou simplesmente dimensão VC (Vapnik & Chervonenkis, 1971).  A dimensão VC é uma medida da capacidade ou força de expressão de uma família de funções classificadoras obtidas por meio de um algoritmo de aprendizagem.  Considere um problema de classificação de padrões binários, y {0,1}. Seja  um conjunto de implementações dicotômicas (funções classificadoras binárias) por um algoritmo de aprendizado, isto é:  = {F(x,w): wW, F: m W  {0,1}}.  Seja X o conjunto de N pontos em um espaço de entrada  m-dimensional, isto é: X = {xi  ; i = 1, 2, . . . , N}.
  • 427. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 427  A implementação dicotômica de um algoritmo de aprendizagem, que divide X em dois subconjuntos disjuntos X0 e X1, pode ser escrita da seguinte maneira: F(x,w) = {0 para x  X0; 1 para x  X1}.  Seja (X) o número de implementações dicotômicas distintas pelo algoritmo de aprendizado, e (l) o máximo de (X) sobre todo X com |X | = l, onde a cardinalidade |X | é o número máximo de elementos de X.  Pode-se dizer que X é particionado por  se (X) = 2|X| , isto é, se todas as divisões binárias de X podem ser produzidas pelas funções em .  A função (l) é conhecida como função de crescimento.  A Figura 24 ilustra, em um espaço bi-dimensional  o conjunto X consistindo de três pontos x1, x2 e x3 , e todas as partições binárias produzidas por funções em .
  • 428. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 428 x1 x2 x3 x1 x2 x3 Figura 24: Três pontos no 2 particionados por retas orientadas.  Com o conjunto X consistindo de três pontos e a cardinalidade dada por |X| = 3, consequentemente (X) = 23 = 8, como podemos observar na Figura 24.  É possível definir formalmente a dimensão VC como (Vapnik & Chernovenkis, 1971): A dimensão VC de um conjunto de funções dicotômicas  é a cardinalidade do maior conjunto X que é particionado por .
  • 429. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 429  Em outras palavras, a dimensão VC de , denotada por VCdim(), é o maior N tal que (N) = 2N .  Em termos mais familiares, a dimensão VC de um conjunto de funções de classificação {F(x,w): w  W} é o número máximo de amostras de treinamento que podem ser classificadas sem erro, para todas as possíveis atribuições de rótulos às amostras. 41. O Hiperplano Ótimo 41.1. Hiperplano Ótimo para Classes Linearmente Separáveis  Considere um conjunto de pares entrada-saída {(xi,yi)}i = 1,...,N, onde xi  m , yi  {1, + 1}.  Classificações binárias são frequentemente realizadas pelo uso de funções g : X  m   com a seguinte estratégia: as amostras são designadas para a classe positiva se g(x)  0 e, caso contrário, para a classe negativa.
  • 430. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 430  Assuma inicialmente que as classes são linearmente separáveis.  A superfície de decisão será representada por um hiperplano na forma: g(x) = wT x + b = 0 (12) onde, w  m é o vetor de pesos, e b   é o bias.  Assim podemos aplicar a seguinte estratégia de decisão: wT x + b  0 para y = +1 (13) wT x + b < 0 para y = 1  Para descrever o lugar geométrico dos hiperplanos separadores, será utilizada a seguinte forma canônica (onde o vetor w e o escalar b são re-escalados de tal maneira a atender as desigualdades): wT x + b  +1 para y = +1 (14) wT x + b  1 para y = 1  A seguir é apresentada a notação compacta para as desigualdades (14): y [wT x + b]  1. (15)
  • 431. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 431  Para um dado vetor de pesos w e bias b, a separação entre o hiperplano g(x) = wT x + b = 0 e o dado de entrada mais perto é chamada de margem de separação denotada por .  Sempre que for possível obter um  > 0, existirão infinitos hiperplanos, dentre os quais se busca um hiperplano particular em que a margem de separação  é maximizada.  De acordo com esta condição, a superfície de decisão é dita ser o hiperplano ótimo (Vapnik & Chervonenkis, 1974) e a técnica de aprendizado de máquina utilizada para a determinação deste hiperplano é denominada Support Vector Machine (SVM), sendo que os dados de treinamento que se encontram à distância  do hiperplano são chamados vetores-suporte (support vectors).
  • 432. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 432 Vetores-Suporte Hiperplano Ótimo  Maximização : Margem de Separação Vetores-Suporte Hiperplano Ótimo  Maximização : Margem de Separação Figura 25: Hiperplano ótimo.  Os dados para os quais o resultado da Eq. (15) é igual a 1 são os vetores-suporte, pois são aqueles que se encontram à distância  do hiperplano ótimo.
  • 433. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 433  Considere a forma canônica (14) com a seguinte modificação (hiperplanos com margem igual a 1 são conhecidos como hiperplanos canônicos): wT xsv+ + b = +1 , sendo xsv+ um vetor-suporte pertencente à classe y = +1; (16) wT xsv- + b = 1 , sendo xsv um vetor-suporte pertencente à classe y = 1.  Para calcular a distância algébrica dos vetores-suporte ao hiperplano ótimo, ou seja, o valor da margem , é preciso primeiro normalizar o vetor de pesos w. Usando a equação do hiperplano canônico (Eq. 16), temos: . 1 2 1 w x w w x w w                                             sv T sv T  (17)  A Eq. (17) mostra que maximizar a margem de separação entre as classes é equivalente a minimizar a norma euclidiana do vetor de pesos w.  Em resumo, o hiperplano ótimo definido pela Eq. (15), apresenta um vetor de pesos w que leva à máxima separação entre as amostras positivas e negativas.
  • 434. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 434 Esta condição ótima é alcançada minimizando a norma euclidiana do vetor de pesos w. 41.2. Hiperplano Ótimo para Classes Não linearmente Separáveis  No caso de dados não linearmente separáveis, embora não seja possível construir um classificador linear (hiperplano separador) sem erros de classificação, é possível encontrar um hiperplano que minimiza a probabilidade do erro de classificação junto às amostras de treinamento.  Sendo assim, a margem de separação entre as classes é dita ser flexível (soft), pois irão existir pontos {(xi,yi)}i = 1,...,N, que violam a Eq. (15).  Esta violação pode acontecer de três maneiras, conforme ilustrado na Figura 26.
  • 435. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 435 x x x x x x x x Hiperplano ótimo Vetores- suportes Margem  Ponto xi x x x x x x x x Ponto xi (a) (b) x x x x x x x x Ponto xi (c) x x x x x x x x Hiperplano ótimo Vetores- suportes Margem  Ponto xi x x x x x x x x Ponto xi (a) (b) x x x x x x x x Ponto xi (c) Figura 26: Violação das margens de classificação. (a) Ponto xi encontra-se dentro da região de separação e no lado correto. (b) Ponto xi encontra-se no lado incorreto da superfície de decisão, porém dentro da região de separação. (c) Ponto xi encontra-se no lado incorreto da superfície de decisão e fora da região de separação.  Para tratar o problema de classes não linearmente separáveis, é introduzida uma nova variável não-negativa, {i}1  i  N, na definição de hiperplano separador (superfície de decisão) apresentada a seguir: yi [wT xi + b]  1i , i = 1, . . . , N . (18)
  • 436. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 436  Os escalares i são chamados de variáveis de folga e medem os desvios dos dados em relação a condição ideal de separação das classes (Figura 27):  Para 0  i  1, o ponto encontra-se dentro da região de separação, mas do lado correto da superfície de decisão.  Para i >1, o ponto encontra-se do lado incorreto do hiperplano separador. Os vetores suportes são os pontos em que o resultado da Eq. (18) é igual a 1i, mesmo que i > 0.
  • 437. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 437 x x x x x x x x x i = 0,8 i > 1 i = 0 x i > 1 x x x x x x x x x i = 0,8 i > 1 i = 0 x i > 1 Figura 27: Variáveis de folga.  O objetivo é encontrar o hiperplano separador em que o erro de classificação incorreta, baseado no conjunto de treinamento, é minimizado. Podemos fazer isto minimizando uma função ():
  • 438. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 438   N i iI 1 )1()(  (19)  em relação ao vetor de pesos w, considerando a equação do hiperplano separador (18) e mais a seguinte restrição de desigualdade: wT w  1 = Ak. (20)  A restrição (20) é a condição de que os parâmetros w e b que definem o hiperplano minimizem o número de erros no conjunto de treinamento sobre a condição que eles pertençam ao subconjunto de elementos da estrutura Sk ={wT x + b: wT w  Ak} determinados pela constante Ak.  A função indicadora I(i 1) é definida por:            .011 ;010 )1( i i i se se I    (21)
  • 439. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 439  Infelizmente, a minimização de () em relação a w é um problema de otimização não-convexo da classe NP-completo.  Para fazer este problema de otimização matematicamente tratável, aproximamos a função () por:   N i i 1 )(  (22)  restrito ao hiperplano separador (18) e à restrição de desigualdade (20).  Chamamos o hiperplano construído com base na solução deste problema de otimização de hiperplano ótimo generalizado ou, simplesmente, de hiperplano ótimo. 42. SVMs para Classificação  Support Vector Machines (SVMs) constituem uma técnica de aprendizado de máquina fundamentada nos princípios da Minimização do Risco Estrutural.
  • 440. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 440  Estes princípios são provenientes da Teoria do Aprendizado Estatístico, a qual está baseada no fato de que o erro da técnica de aprendizagem junto aos dados de validação (erro de generalização) é limitado pelo erro de treinamento mais um termo que depende da dimensão VC.  As SVMs implementam um mapeamento não linear (executado por um produto interno kernel escolhido a priori) dos dados de entrada para um espaço característico de alta-dimensão, em que um hiperplano ótimo é construído para separar os dados linearmente em duas classes.  Quando os dados de treinamento são separáveis, o hiperplano ótimo no espaço característico é aquele que apresenta a máxima margem de separação  (ver Figura 25).  Para dados de treinamento em que as amostras das duas classes apresentam superposição (dados não separáveis), uma generalização deste conceito é utilizada.
  • 441. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 441 42.1. Caso 1: Classes Linearmente Separáveis  Para o problema de classificação binária em que as duas classes são linearmente separáveis o objetivo é encontrar o hiperplano ótimo, definido pela Eq. (15), maximizando a margem de separação  (ver Figura 25) através da minimização da norma Euclidiana do vetor de pesos w do hiperplano (ver Eq. 17).  Formulação do problema de otimização, em sua representação primal, para encontrar o hiperplano ótimo para classes linearmente separáveis: A partir dos dados de treinamento linearmente separáveis {(xi,yi)}i = 1,...,N, x  m , y  {+1,1}, onde x são os dados de entrada e y corresponde à saída desejada, encontre o valor do vetor de pesos w e bias b que resolva o seguinte problema:   .1:: .|||| 2 1 ),(: 1 2    byaSujeito bVMinimizar i T i N i xw ww (23)
  • 442. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 442  Pode-se resolver o problema (23) utilizando o método dos multiplicadores de Lagrange para transformar o problema de otimização primal em seu correspondente problema dual.  Considere a função Lagrangeana referente ao problema (23):    N i i T ii T bybL 1 1)()( 2 1 ),,( xwwww  , (24) onde os multiplicadores de Lagrange i são todos não negativos.  Sendo a função-objetivo do problema (23) convexa e todas as suas restrições funções afins, o correspondente problema de otimização dual é encontrado aplicando as condições de Kuhn-Tucker (ver Teorema 6) junto à função Lagrangeana (24): .0),,( ;0),,( 1 1           N i ii N i iii yb b L yb L   w xww w (25)
  • 443. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 443  Substituindo as relações obtidas:   N i iiiy 1 xw  (26) e 0 1  N i iiy  (27) na função Lagrangeana (24), obtém-se : .)( 2 1 )()( 2 1 ),,( 1,1 11,1,       N ji j T ijiji N i i N i i N ji j T ijiji N ji j T ijiji yy yyyybL xx xxxxw   (28)  Agora é possível formular o problema de otimização dual: A partir dos dados de treinamento linearmente separáveis {(xi,yi)}i = 1,...,N, x  m , y  {+1, 1}, encontre os multiplicadores de Lagrange (*i) 1  i  N que resolvem o problema de otimização quadrático:
  • 444. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 444 .0: ;0: .)( 2 1 )(: 1 1 1,1         i N i N i ii N ji j T ijiji N i i yaSujeito yyWMaximizar    xx (29)  O problema de otimização dual (29) é totalmente formulado em termos dos dados de treinamento.  Além disso, a função W() a ser maximizada depende somente dos dados de entrada na forma de produto interno (xi T xj)1  i  N; 1  j  N.  Outro ponto importante é que este problema de otimização tem uma única solução que pode ser eficientemente encontrada.  Portanto, não há a presença de pontos de mínimos locais, como em outras técnicas de classificação.
  • 445. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 445  Determinando o vetor de multiplicadores de Lagrange ótimos *, pode-se calcular o vetor de pesos ótimo w* utilizando a Eq. (26),    N i iiiy 1 xw  onde y  {+1, 1}, i*  + e x  m . (30)  Assim w* é o vetor que encontra o hiperplano ótimo com a máxima margem de separação  (Eq. (17)).  O valor do bias ótimo b* é encontrado utilizando a Eq. (30) com o auxílio das restrições primais (23):                                sv i sv i N j j T ijj yi N j j T ijj yi yyb 1 }1|{ 1 }1|{ )(min)(max 2 1 xxxx  , (31) onde Nsv é o numero de vetores-suporte.  Utilizando a condição de complementariedade de Kuhn-Tucker (Teorema 6), obtemos a seguinte relação:
  • 446. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 446   01)*(:1    by i T ii N i xw (32)  que proporciona uma importante informação sobre a estrutura da solução.  Isto implica que somente para os dados de entrada xi para o qual a margem é 1 (e, portanto, localizados à distância  do hiperplano) tem-se seu correspondente * diferente de zero. Todos os outros dados de entrada têm o parâmetro * igual a zero.  Através das condições de complementariedade de Kuhn-Tucker, pode-se demonstrar que:    svN i i T 1 *)*( ww . (33)  Portanto, a norma do vetor de pesos w* que está associado ao hiperplano de máxima margem é também dada por:
  • 447. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 447 2 1 1 1            svN i iw . (34)  Os dados de entrada com a margem igual a 1 são chamados de vetores-suporte, sendo justamente aqueles com os multiplicadores de Lagrange * diferentes de zero. Logo, são os únicos pontos que exercem influência na construção do hiperplano de máxima margem.  Além disso, o hiperplano ótimo é expresso somente em termos deste conjunto de vetores-suporte, como descrito a seguir:          svN i T iii byf 1 )(sgn)( xxx  (35)  Os dados de entrada que não são vetores-suporte também não têm influência na função de decisão produzida pela técnica de SVM.
  • 448. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 448  A função de decisão (35) é utilizada da seguinte maneira: se o resultado de f(x) for negativo, o ponto x pertence à classe negativa; se o resultado de f(x) for positivo, o ponto x pertence à classe positiva.  Os passos abaixo resumem o processo de determinação do hiperplano ótimo para conjuntos linearmente separáveis. 1. Para o conjunto de treinamento linearmente separável {(xi,yi)}i = 1,...,N, x  m e y  {+1, 1}, faça 2. Seja * = (1*, ..., 2*) a solução do seguinte problema de otimização restrita: .0:;0: .)( 2 1 )(: 1 1 1,1        i N i N i ii N ji j T ijiji N i i yaSujeito yyWMaximizar   xx 3. O par (w*,b*) apresentado a seguir define o hiperplano ótimo:
  • 449. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 449 4.    N i iiiy 1 xw  ,                                sv i sv i N j j T ijj yi N j j T ijj yi yyb 1 }1|{ 1 }1|{ )(min)(max 2 1 xxxx  . 42.1.1. Classes Linearmente Separáveis no Espaço Característico  Para o problema de classificação binária em que as duas classes não são linearmente separáveis no espaço original, porém a partir de um mapeamento não linear executado por um produto interno kernel do espaço original para um espaço característico de dimensão muito maior do que a dimensão do espaço original, o problema de classificação originalmente não linear torna-se linearmente separável no espaço característico.  A partir dos dados de treinamento {(xi,yi)}i = 1,...,N, x  m e y  {+1, 1}, linearmente separáveis no espaço característico definido pelo produto interno kernel K(xi,xj), encontre os multiplicadores de Lagrange (*i ) 1  i  N que resolvem o problema de otimização quadrático:
  • 450. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 450 .0:;0: ).,( 2 1 )(: 1 1 1,1        i N i N i ii N ji jijiji N i i yaSujeito KyyWMaximizar   xx (36)  Assim, a função de decisão dada pela SVM é:          svN i iii bKyxf 1 ),(sgn)( xx (37)  que é equivalente ao hiperplano de máxima margem no espaço característico definido implicitamente pelo produto interno kernel K(xi,xj), satisfazendo o teorema de Mercer e, como consequência deste teorema, sendo uma matriz definida positiva. Assim, o problema (36) continua sendo convexo e com uma única solução.  O único grau de liberdade deste hiperplano ótimo é a escolha de qual produto interno kernel utilizar. O conhecimento prévio do problema pode ajudar na escolha do tipo de produto interno kernel e com isto restará apenas ajustar seus parâmetros.
  • 451. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 451 42.2. Caso 2: Classes Não linearmente Separáveis  Vimos anteriormente que foram introduzidas variáveis de folga {i}1 i  N para definir o hiperplano separador para classes não linearmente separáveis, como mostrado na Eq. (18).  Para encontrar este hiperplano separador, devemos minimizar o erro de classificação incorreta dado pela função (19).  Com isto, recai-se num problema de otimização não convexo da classe NP- completo.  Para tornar este problema de otimização tratável computacionalmente, substitui-se a função de minimização do erro de classificação, dada pela Eq. (19), por uma aproximação dada pela função (22).  Para a simplificação dos cálculos, é possível propor a seguinte formulação do hiperplano ótimo a ser minimizado em relação ao vetor de pesos w (Vapnik, 1995):
  • 452. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 452   N i i T C 1 )( 2 1 ),(  www . (38)  A minimização do primeiro termo da Eq. (38) está relacionada à minimização da dimensão VC da SVM.  Quanto ao segundo termo, ele pode ser visto como um limitante superior para o número de erros na amostra de treinamento.  Portanto, a formulação dada pela Eq. (38) está em acordo com os princípios de minimização do risco estrutural.  O parâmetro C, determinado empiricamente, controla a relação entre a complexidade do algoritmo e o número de amostras de treinamento classificadas incorretamente. Ele pode ser visto como um parâmetro de penalização.  Portanto, pode-se formular o problema de otimização em sua representação primal para encontrar o hiperplano ótimo para classes não linearmente separáveis como:
  • 453. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 453 A partir dos dados de treinamento {(xi,yi)}i = 1,...,N, x  m e y  {+1, 1}, onde x são os dados de entrada e y corresponde à saída desejada, encontre valores para o vetor de pesos w, bias b e variáveis de folga i que resolvem o seguinte problema:   .0: ;1:: .|||| 2 1 ),,(: 1 1 1 2        i N i ii T i N i N i i byaSujeito CbVMinimizar    xw ww (39) onde o parâmetro C > 0 é especificado pelo usuário.  Utilizando o método dos multiplicadores de Lagrange, podemos transformar o problema de otimização primal em seu correspondente problema dual.  Considere a função Lagrangeana referente ao problema (39):      N i ii N i ii T iii N i i T rbyCrbL 111 1)()( 2 1 ),,,,(  xwwww , (40)
  • 454. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 454 onde os multiplicadores de Lagrange i e ri são todos não negativos.  Sendo a função-objetivo do problema (39) convexa e todas as suas restrições funções afins, o correspondente problema de otimização dual é encontrado aplicando as condições de Kuhn-Tucker (ver Teorema 6) junto à função Lagrangeana (40): .0),,,,( ;0),,,,( ;0),,,,( 1 1              ii N i ii N i iii rCrb L yrb b L yrb L     w w xww w (41)  Substituindo as relações obtidas na função Lagrangeana (40), obtém-se:    N ji j T ijiji N i i yyrbL 1,1 )( 2 1 ),,,,( xxw  (42)
  • 455. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 455  que é idêntica à relação obtida para o caso das classes linearmente separáveis. A única diferença é que a restrição C i  ri = 0, em conjunto com ri  0, faz com que i  C, enquanto que i  0 ocorre somente se ri = 0.  As condições de complementaridade de Kuhn-Tucker para este caso são definidas como:    .0)(: ;01: 1 1      C by ii N i iiii N i   xw (43)  Agora é possível formular o problema de otimização dual para o caso geral em que o hiperplano ótimo é construído no espaço característico, através de um mapeamento não linear definido implicitamente por um produto interno kernel escolhido a priori. A partir dos dados de treinamento {(xi,yi)}i = 1,...,N, x  m e y  {+1, 1}, e utilizando o espaço característico definido implicitamente pelo produto interno
  • 456. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 456 kernel K(xi,xj), encontre os multiplicadores de Lagrange (*i) 1  i  N que resolvem o problema de otimização quadrático : .0:;0: .),( 2 1 )(: 1 1 1,1 CyaSujeito KyyWMaximizar i N i N i ii N ji jijiji N i i          xx (44) onde o parâmetro C > 0 é especificado pelo usuário.  A única e principal diferença do caso de classes separáveis para o caso de classes não separáveis (Eq. 36) é que a restrição i  0 é substituída por uma restrição mais forte, 0  i  C.  O vetor de pesos w é calculado da mesma maneira que no caso das classes linearmente separáveis (Eq. 30), mas operando com os dados no espaço de características:    N i iiiy 1 )(xw  .
  • 457. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 457  O bias b é encontrado com o auxílio das restrições primais (39) através da seguinte equação:                                sv i sv i N j jijj yi N j jijj yi KyKyb 1 }1|{ 1 }1|{ ),(min),(max 2 1 xxxx  . (45)  Foi visto anteriormente que os dados de entrada para os quais i > 0 são chamados de vetores-suporte. Para diferenciar entre os pontos com 0 < i < C e aqueles com i = C, a primeira categoria é chamada de vetores-suporte não limitados e a segunda categoria de vetores-suporte limitados.  Se a solução contém no mínimo um vetor-suporte não limitado, ela é considerada estável, caso contrário ela é considerada instável (Joachims, 2000).  A função de decisão dada pela SVM é:          svN i iii bKyf 1 ),(sgn)( xxx  . (46)
  • 458. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 458  A Figura 28 mostra uma representação gráfica da função de decisão (46), onde os valores de f(x) sendo positivos indicam que a amostra pertence à classe positiva, e sendo negativos indicam que a amostra pertence à classe negativa. K(v2 ,x) K(v1 ,x) K(vNsv ,x) • • • • • • y11 y22 yNsvNsv b  f (x) Vetor de entrada x = (x1, x2, ...xm) Transformação não linear baseada em Nsv vetores-suportes x1 x2 x3 xm K(v2 ,x) K(v1 ,x) K(vNsv ,x) • • • • • • y11 y22 yNsvNsv b  f (x) Vetor de entrada x = (x1, x2, ...xm) Transformação não linear baseada em Nsv vetores-suportes x1 x2 x3 xm Figura 28: Arquitetura de uma SVM na forma de uma RNA com uma camada intermediária.
  • 459. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 459  Através das condições de complementaridade de Kuhn-Tucker (43) pode-se demonstrar que:   svN ji jijiji T Kyy 1, ),(*)*( xxww  (47)  Portanto, a norma do vetor de pesos w* que realiza o hiperplano de máxima margem é dada por: 2 1 1, 1 ),(*              svN ji jijiji Kyy xxw  . (48)  Os passos abaixo resumem o processo de determinação do hiperplano ótimo para conjuntos não linearmente separáveis no espaço de características.
  • 460. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 460 1. Para qualquer conjunto de treinamento {(xi,yi)}i = 1,...,N, x  m e y  {+1, 1}, faça 2. Seja * = (1*, ..., 2*) a solução do seguinte problema de otimização restrita: .0:;0: .),( 2 1 )(: 1 1 1,1 CyaSujeito KyyWMaximizar i N i N i ii N ji jijiji N i i          xx 3. O par (w*,b*) apresentado a seguir define o hiperplano ótimo: 4.    N i iiiy 1 )(xw  ,                                sv i sv i N j jijj yi N j jijj yi KyKyb 1 }1|{ 1 }1|{ ),(min),(max 2 1 xxxx  .
  • 461. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 461 42.3. Discussão  SVM proporciona um método que controla a complexidade da técnica independentemente da dimensão dos dados.  Em particular, o problema da complexidade é resolvido em um espaço de alta dimensão, usando um hiperplano com o parâmetro C (que controla a relação entre a complexidade do algoritmo e o número de amostras de treinamento classificadas incorretamente) como uma superfície de decisão no espaço característico, resultando em um ótimo desempenho de generalização.  O problema da dimensionalidade é reduzido pela utilização da representação dual do problema de otimização, que calcula os parâmetros do hiperplano ótimo tendo os dados de treinamento na forma de produto interno e assim formando uma matriz quadrada ("Matriz Kernel" para o caso de utilização de transformações não lineares) de mesma dimensão da quantidade de dados de treinamento.
  • 462. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 462  O treinamento da SVM consiste em um problema de otimização quadrático que é atrativo por duas razões:  A menos de problemas numéricos ao longo dos cálculos computacionais, é garantida a convergência para um mínimo global da superfície de erro, onde o erro refere-se à diferença entre a resposta desejada e a saída da SVM;  Os cálculos podem ser executados eficazmente, pois as restrições do problema dual são mais simples de serem resolvidas do que as restrições do problema primal.  Comparando com Redes Neurais Artificiais, o mais importante é que, utilizando o produto interno kernel, SVM calcula automaticamente parte dos parâmetros pertinentes à escolha da função kernel. Por exemplo:  RBF - Função de Base Radial (Tópico 8): o número de funções de base radial e seus centros são computados automaticamente pelo número de vetores-suporte e
  • 463. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 463 de seus valores, respectivamente. Já as variâncias das RBF's são fixas, e especificadas a priori pelo usuário;  Perceptron com uma camada escondida (Tópico 9): o número de neurônios da camada escondida e seus vetores de pesos também são computados automaticamente pelo número de vetores-suporte e de seus valores, respectivamente. Já os parâmetros da função tangente hiperbólica, 0 e 1 são especificados a priori pelo usuário.
  • 464. Introdução as Redes Neurais Artificiais Copyright ® Leandro Nunes de Castro 464 43. Referências sobre SVM Aizerman, M. A.; Braverman, E. M.; Rozonoer, L. I. (1964a), “Theoretical foundations of the potential function in pattern recognition learning”, Automation and Remote Control, 25, pp. 821-835. Aizerman, M. A.; Braverman, E. M.; Rozonoer, L. I. (1964b), “The probability problem of pattern recognition learning and the method of potential functions”, Automation and Remote Control, 25, pp. 1175-1193. Cristianini, N.; Shawe-Taylor, J. (2000), Support Vector Machines and other Kernel-Based Learning Methods, Springer-Verlag. Haykin, S. (1999), Neural Networks: A Comprehensive Foundation, Prentice Hall. Semolini, R. (2002), Support Vector Machines, Inferência Transdutiva e o Problema de Classificação, Dissertação de Mestrado, DCA/FEEC/Unicamp, Dezembro. Vapnik, V. N. (1995), The Nature of Statistical Learning Theory, Springer. Vapnik, V. N. (1998), Statistical Learning Theory, John Wiley & Sons. Vapnik, V. N. (1982), Estimation of Dependences based on Empirical Data, Springer-Verlag. Vapnik, V. N.; Chervonenkis, A. (1971), “On the uniforme convergence of relative frequencies of events to their probabilities”, Theoretical Probability and Its Applications, 17, pp. 264- 280. Vapnik, V. N.; Chervonenkis, A. (1974), Theory of Pattern Recognition, Nauka, Moscow.