2014: Introdução às Redes Neurais Artificiais

464
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 Naturale A Nova Escola do Empreendedorismoestã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 .

description

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

Transcript of 2014: Introdução às Redes Neurais Artificiais

Page 1: 2014: Introdução às Redes Neurais Artificiais

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.

Page 2: 2014: Introdução às Redes Neurais Artificiais

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

Page 3: 2014: Introdução às Redes Neurais Artificiais

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

Page 4: 2014: Introdução às Redes Neurais Artificiais

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

Page 5: 2014: Introdução às Redes Neurais Artificiais

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

Page 6: 2014: Introdução às Redes Neurais Artificiais

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

Page 7: 2014: Introdução às Redes Neurais Artificiais

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

Page 8: 2014: Introdução às Redes Neurais Artificiais

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

Page 9: 2014: Introdução às Redes Neurais Artificiais

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.

Page 10: 2014: Introdução às Redes Neurais Artificiais

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.

Page 11: 2014: Introdução às Redes Neurais Artificiais

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.

Page 12: 2014: Introdução às Redes Neurais Artificiais

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

Page 13: 2014: Introdução às Redes Neurais Artificiais

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.

Page 14: 2014: Introdução às Redes Neurais Artificiais

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

Page 15: 2014: Introdução às Redes Neurais Artificiais

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 novonovonovoa

a min_)min_max_(minmax

min'

Page 16: 2014: Introdução às Redes Neurais Artificiais

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.

Page 17: 2014: Introdução às Redes Neurais Artificiais

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?).

Page 18: 2014: Introdução às Redes Neurais Artificiais

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.

Page 19: 2014: Introdução às Redes Neurais Artificiais

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.

Page 20: 2014: Introdução às Redes Neurais Artificiais

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 ĝ(,): XP 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.

Page 21: 2014: Introdução às Redes Neurais Artificiais

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

ggN

J1

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*θθ

JP

(2)

Page 22: 2014: Introdução às Redes Neurais Artificiais

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.

Page 23: 2014: Introdução às Redes Neurais Artificiais

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ô.

Page 24: 2014: Introdução às Redes Neurais Artificiais

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.

Page 25: 2014: Introdução às Redes Neurais Artificiais

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.5Random

Page 26: 2014: Introdução às Redes Neurais Artificiais

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.5K-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.

Page 27: 2014: Introdução às Redes Neurais Artificiais

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.

Page 28: 2014: Introdução às Redes Neurais Artificiais

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.

Page 29: 2014: Introdução às Redes Neurais Artificiais

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)

Page 30: 2014: Introdução às Redes Neurais Artificiais

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

ixN

x1

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 xxN

x1

2)(1

)var( .

Page 31: 2014: Introdução às Redes Neurais Artificiais

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).

Page 32: 2014: Introdução às Redes Neurais Artificiais

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

Page 33: 2014: Introdução às Redes Neurais Artificiais

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.

Page 34: 2014: Introdução às Redes Neurais Artificiais

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

Page 35: 2014: Introdução às Redes Neurais Artificiais

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.

Page 36: 2014: Introdução às Redes Neurais Artificiais

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 = (ū12 + ū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).

Page 37: 2014: Introdução às Redes Neurais Artificiais

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)

Page 38: 2014: Introdução às Redes Neurais Artificiais

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.

Page 39: 2014: Introdução às Redes Neurais Artificiais

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.

Page 40: 2014: Introdução às Redes Neurais Artificiais

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.

Page 41: 2014: Introdução às Redes Neurais Artificiais

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).

Page 42: 2014: Introdução às Redes Neurais Artificiais

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.

Page 43: 2014: Introdução às Redes Neurais Artificiais

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

Page 44: 2014: Introdução às Redes Neurais Artificiais

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.

Page 45: 2014: Introdução às Redes Neurais Artificiais

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.

Page 46: 2014: Introdução às Redes Neurais Artificiais

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.

Page 47: 2014: Introdução às Redes Neurais Artificiais

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.

Page 48: 2014: Introdução às Redes Neurais Artificiais

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.

Page 49: 2014: Introdução às Redes Neurais Artificiais

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

Page 50: 2014: Introdução às Redes Neurais Artificiais

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.

Page 51: 2014: Introdução às Redes Neurais Artificiais

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.

Page 52: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 52

Page 53: 2014: Introdução às Redes Neurais Artificiais

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.

Page 54: 2014: Introdução às Redes Neurais Artificiais

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.

Page 55: 2014: Introdução às Redes Neurais Artificiais

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.

Page 56: 2014: Introdução às Redes Neurais Artificiais

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.

Page 57: 2014: Introdução às Redes Neurais Artificiais

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

Page 58: 2014: Introdução às Redes Neurais Artificiais

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.

Page 59: 2014: Introdução às Redes Neurais Artificiais

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).

Page 60: 2014: Introdução às Redes Neurais Artificiais

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

Page 61: 2014: Introdução às Redes Neurais Artificiais

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.

Page 62: 2014: Introdução às Redes Neurais Artificiais

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.

Page 63: 2014: Introdução às Redes Neurais Artificiais

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.

Page 64: 2014: Introdução às Redes Neurais Artificiais

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

Page 65: 2014: Introdução às Redes Neurais Artificiais

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.

Page 66: 2014: Introdução às Redes Neurais Artificiais

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.

Page 67: 2014: Introdução às Redes Neurais Artificiais

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.

Page 68: 2014: Introdução às Redes Neurais Artificiais

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:

Page 69: 2014: Introdução às Redes Neurais Artificiais

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.

Page 70: 2014: Introdução às Redes Neurais Artificiais

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:

)()()(

τ tiRtuudt

tdumresm , (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.

Page 71: 2014: Introdução às Redes Neurais Artificiais

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

jjfj

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 tjf corresponde ao momento do disparo do neurônio pré-sináptico da

sinapse j.

Page 72: 2014: Introdução às Redes Neurais Artificiais

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.

Page 73: 2014: Introdução às Redes Neurais Artificiais

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

En

tra

das

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

Page 74: 2014: Introdução às Redes Neurais Artificiais

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ário caso0

θ se1)(

uufy

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ário caso0

0 se1)(

uufy

Page 75: 2014: Introdução às Redes Neurais Artificiais

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 bxwfufy1

)(

É 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 xwfufy0

)(

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.

Page 76: 2014: Introdução às Redes Neurais Artificiais

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

Entr

adas

Figura 4: Outra representação para o neurônio genérico.

Page 77: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 77

0p se 0

1p0 se

1p se 1

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).

Page 78: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 78

kk

k

pp

p

kee

efy

uu

u

u

1

1

1)(

01 kk

k

py

uuu

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).

Page 79: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 79

kk

kk

pp

pp

kkee

eepfy

uu

uu

uu

)tanh()(

01 2 k

k

py

uu

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).

Page 80: 2014: Introdução às Redes Neurais Artificiais

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

gu

wij

w

xij

i yi

g

yj

1 wi0

Figura 8: Processo de conexão entre neurônios.

Page 81: 2014: Introdução às Redes Neurais Artificiais

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.

Page 82: 2014: Introdução às Redes Neurais Artificiais

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.

Page 83: 2014: Introdução às Redes Neurais Artificiais

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 om, wi 1m, i = 1,…,o, x m1, e y o1.

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.

Page 84: 2014: Introdução às Redes Neurais Artificiais

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.

Page 85: 2014: Introdução às Redes Neurais Artificiais

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(W1x)))

Note que fk, k = 1,..., M (M = número de camadas da rede) pode ser dado por uma

matriz quadrada fk ll, onde l é o número de neurônios na camada k, ou por um

vetor fk l1, 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?

Page 86: 2014: Introdução às Redes Neurais Artificiais

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.

Z1

Z1

Z1

Figura 11: Rede neural recorrente de Hopfield.

Page 87: 2014: Introdução às Redes Neurais Artificiais

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.

Page 88: 2014: Introdução às Redes Neurais Artificiais

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

Page 89: 2014: Introdução às Redes Neurais Artificiais

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).

Page 90: 2014: Introdução às Redes Neurais Artificiais

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.

Page 91: 2014: Introdução às Redes Neurais Artificiais

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:

Page 92: 2014: Introdução às Redes Neurais Artificiais

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)

Page 93: 2014: Introdução às Redes Neurais Artificiais

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.

Page 94: 2014: Introdução às Redes Neurais Artificiais

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 teo

EJ1

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.

Page 95: 2014: Introdução às Redes Neurais Artificiais

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 keo

kJJ1

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.

Page 96: 2014: Introdução às Redes Neurais Artificiais

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.

Page 97: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 97

Inputpatterns

EnvironmentNeural

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)

Page 98: 2014: Introdução às Redes Neurais Artificiais

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:

Page 99: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 99

competição a perde se0

competição a ganha se)α(

i

ii

i

wxw

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.

Page 100: 2014: Introdução às Redes Neurais Artificiais

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.

Page 101: 2014: Introdução às Redes Neurais Artificiais

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.”

Page 102: 2014: Introdução às Redes Neurais Artificiais

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.

Page 103: 2014: Introdução às Redes Neurais Artificiais

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).

Page 104: 2014: Introdução às Redes Neurais Artificiais

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.

Page 105: 2014: Introdução às Redes Neurais Artificiais

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 xiT,

b(t+1) = b(t) + ei,

onde w 1m, x m1, e b 11.

Page 106: 2014: Introdução às Redes Neurais Artificiais

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

Entr

adas

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.

Page 107: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 107

Seja X mN, a matriz de dados de entradas com N padrões de dimensão m cada

(colunas de X), e d 1N 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 xiT //atualize o vetor de pesos

b b + ei //atualize o bias

E E + ei2

end for

t t + 1

end while

end procedure

Algoritmo 1: Algoritmo de treinamento para o perceptron simples.

Page 108: 2014: Introdução às Redes Neurais Artificiais

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

10001010

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.

Page 109: 2014: Introdução às Redes Neurais Artificiais

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.

Page 110: 2014: Introdução às Redes Neurais Artificiais

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.

Page 111: 2014: Introdução às Redes Neurais Artificiais

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 om, xi m1, i = 1,…,N, yi o1, e b o1, D oN.

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 xiT //atualize a matriz de pesos

b b + ei //atualize o vetor de bias

E E + sum(eij2) //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.

Page 112: 2014: Introdução às Redes Neurais Artificiais

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 1210 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 1208 e D 88 (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.

Page 113: 2014: Introdução às Redes Neurais Artificiais

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.

Page 114: 2014: Introdução às Redes Neurais Artificiais

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.

Page 115: 2014: Introdução às Redes Neurais Artificiais

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.

Page 116: 2014: Introdução às Redes Neurais Artificiais

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 yde1

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

IJIJw

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.

Page 117: 2014: Introdução às Redes Neurais Artificiais

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

ydw

ydww

Mas, yI = f(wI.x) = f(j wIj.xj) = j wIj.xj (ativação linear)

JII

IJ

III

IJ

xydw

yyd

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 xiT

Page 118: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 118

b = b + ei

onde W om, xi m1, i = 1,…,N, ei o1, e b o1.

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.

Page 119: 2014: Introdução às Redes Neurais Artificiais

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.

Page 120: 2014: Introdução às Redes Neurais Artificiais

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

Page 121: 2014: Introdução às Redes Neurais Artificiais

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.

Page 122: 2014: Introdução às Redes Neurais Artificiais

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.

Page 123: 2014: Introdução às Redes Neurais Artificiais

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.

Page 124: 2014: Introdução às Redes Neurais Artificiais

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.

Page 125: 2014: Introdução às Redes Neurais Artificiais

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.

Page 126: 2014: Introdução às Redes Neurais Artificiais

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)

Page 127: 2014: Introdução às Redes Neurais Artificiais

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.

Page 128: 2014: Introdução às Redes Neurais Artificiais

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ção a perde se0

competição a ganha se)α(

i

ii

i

wxw

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.

Page 129: 2014: Introdução às Redes Neurais Artificiais

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.

Page 130: 2014: Introdução às Redes Neurais Artificiais

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.

Page 131: 2014: Introdução às Redes Neurais Artificiais

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.

Page 132: 2014: Introdução às Redes Neurais Artificiais

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.

Page 133: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 133

R n

Mapa auto-organizável

Espaço de entrada

Page 134: 2014: Introdução às Redes Neurais Artificiais

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.

Page 135: 2014: Introdução às Redes Neurais Artificiais

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.

Page 136: 2014: Introdução às Redes Neurais Artificiais

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.

Page 137: 2014: Introdução às Redes Neurais Artificiais

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õessinápticas

Unidades de saída

Unidades de entrada

Grid bi-dimensional.

Page 138: 2014: Introdução às Redes Neurais Artificiais

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.

Page 139: 2014: Introdução às Redes Neurais Artificiais

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.

Page 140: 2014: Introdução às Redes Neurais Artificiais

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

ProcessoCompetitivo

ProcessoCooperativo

Processo

AdaptativoSatisfaz Critério de Parada?

Fim

Início

Sim

Não

Page 141: 2014: Introdução às Redes Neurais Artificiais

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.

Page 142: 2014: Introdução às Redes Neurais Artificiais

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.

Page 143: 2014: Introdução às Redes Neurais Artificiais

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

dd

d

d

dd

d

dx1

x2 x3

x4

x5

x6x7

x8

x9

Page 144: 2014: Introdução às Redes Neurais Artificiais

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

Page 145: 2014: Introdução às Redes Neurais Artificiais

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:

Page 146: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 146

2

2)(,

)(,2

expx

xij

ij

Dh

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

2log

1000τ

.

Page 147: 2014: Introdução às Redes Neurais Artificiais

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

0 1 2 3 1 2 3

1.0

hji

dji

0 1 2 3 1 2 3

hji

dji

Winner

Page 148: 2014: Introdução às Redes Neurais Artificiais

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).

Page 149: 2014: Introdução às Redes Neurais Artificiais

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).

Page 150: 2014: Introdução às Redes Neurais Artificiais

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).

Page 151: 2014: Introdução às Redes Neurais Artificiais

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 10

0.2

0.4

0.6

0.8

1

Page 152: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 152

0 0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

1

2

3

4

56

7

8

910

1112

1314

15

16

1718 19 20 21 22 23 24

25

26

27

28

29

30

31

32

333435

36

3738

39

4041

424344

45

46

47

48 4950

Page 153: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 153

Caso 2: Presença de agrupamentos bem distintos

(I)

(II)

(III)

(IV)

Page 154: 2014: Introdução às Redes Neurais Artificiais

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)

Page 155: 2014: Introdução às Redes Neurais Artificiais

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.

Page 156: 2014: Introdução às Redes Neurais Artificiais

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

102102

b)

(GOMES et al., 2002)

Page 157: 2014: Introdução às Redes Neurais Artificiais

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)

Page 158: 2014: Introdução às Redes Neurais Artificiais

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

Page 159: 2014: Introdução às Redes Neurais Artificiais

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:

Page 160: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 160

incorretafor classe a se)(α

corretafor classe a se)(α

ji

ji

jwx

wxw

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.

Page 161: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 161

Page 162: 2014: Introdução às Redes Neurais Artificiais

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.

Page 163: 2014: Introdução às Redes Neurais Artificiais

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.

Page 164: 2014: Introdução às Redes Neurais Artificiais

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)

Page 165: 2014: Introdução às Redes Neurais Artificiais

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.

Page 166: 2014: Introdução às Redes Neurais Artificiais

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.

Page 167: 2014: Introdução às Redes Neurais Artificiais

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.

Page 168: 2014: Introdução às Redes Neurais Artificiais

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.

Page 169: 2014: Introdução às Redes Neurais Artificiais

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

Page 170: 2014: Introdução às Redes Neurais Artificiais

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 h x(t) x(t)

. y(t)

Page 171: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 171

))(),(,()(

))(),(,()1(

kkkk

kkkk

uxhy

uxgx

g u(k) h x(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).

Page 172: 2014: Introdução às Redes Neurais Artificiais

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:

Page 173: 2014: Introdução às Redes Neurais Artificiais

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.

Page 174: 2014: Introdução às Redes Neurais Artificiais

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.

Page 175: 2014: Introdução às Redes Neurais Artificiais

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

Page 176: 2014: Introdução às Redes Neurais Artificiais

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

Page 177: 2014: Introdução às Redes Neurais Artificiais

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.

Page 178: 2014: Introdução às Redes Neurais Artificiais

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

Page 179: 2014: Introdução às Redes Neurais Artificiais

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.

Page 180: 2014: Introdução às Redes Neurais Artificiais

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,

Page 181: 2014: Introdução às Redes Neurais Artificiais

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.

Page 182: 2014: Introdução às Redes Neurais Artificiais

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.

Page 183: 2014: Introdução às Redes Neurais Artificiais

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.

Page 184: 2014: Introdução às Redes Neurais Artificiais

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.

Page 185: 2014: Introdução às Redes Neurais Artificiais

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

Page 186: 2014: Introdução às Redes Neurais Artificiais

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

ii 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 ;

Page 187: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 187

Base para toda fi: sempre existe um conjunto de inteiros ip

i kk ,...,1 tal que, para

i = 1,...,p, pip

ii 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 é

Page 188: 2014: Introdução às Redes Neurais Artificiais

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

Page 189: 2014: Introdução às Redes Neurais Artificiais

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).

Page 190: 2014: Introdução às Redes Neurais Artificiais

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

Page 191: 2014: Introdução às Redes Neurais Artificiais

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.

Page 192: 2014: Introdução às Redes Neurais Artificiais

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:

Page 193: 2014: Introdução às Redes Neurais Artificiais

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.

Page 194: 2014: Introdução às Redes Neurais Artificiais

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).

Page 195: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 195

Rede Neural de Hopfield: ênfase nas conexões.

Page 196: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 196

Z1

Z1

Z1

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).

Page 197: 2014: Introdução às Redes Neurais Artificiais

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

Page 198: 2014: Introdução às Redes Neurais Artificiais

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).

Page 199: 2014: Introdução às Redes Neurais Artificiais

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 E

ntr

adas

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 ItxwR

tu

dt

tduC

1

)()()(

, j = 1,…,N. (2)

Page 200: 2014: Introdução às Redes Neurais Artificiais

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.

Page 201: 2014: Introdução às Redes Neurais Artificiais

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

jN

jii

iiji

j

j bR

uuw

dt

duC

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

Page 202: 2014: Introdução às Redes Neurais Artificiais

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

ijj

jiji xbdzzR

xxwEj

1 10

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:

Page 203: 2014: Introdução às Redes Neurais Artificiais

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

dxI

R

vxw

dt

dE jN

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

dvC

dt

dE jN

j

j

j

12

1 (6)

Sabendo que a inversa da não linearidade existe e é igual à vj = j1(x), obtém-se:

dt

dxx

dt

dC

dt

dE jN

j

jjj

1

1 )(2

1 (7)

A inversa da função de ativação não linear j1(x) é uma função monotonicamente

crescente, portanto:

Page 204: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 204

0)(1

jj

j

xdx

d , xj

Da Eq. (7) notamos que dE/dt vai a zero apenas se 0)( txdt

dj .

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).

Page 205: 2014: Introdução às Redes Neurais Artificiais

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.

Page 206: 2014: Introdução às Redes Neurais Artificiais

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.

Page 207: 2014: Introdução às Redes Neurais Artificiais

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?

Page 208: 2014: Introdução às Redes Neurais Artificiais

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

Page 209: 2014: Introdução às Redes Neurais Artificiais

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

jii

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:

Page 210: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 210

0 se1

0 se1)sgn(

j

j

jju

uuy

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).

Page 211: 2014: Introdução às Redes Neurais Artificiais

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

ijjiN

w1

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:

IWN

p

N

pT

1

1

.

Observe que W = WT, ou seja, wji = wij (i,j = 1,…,N).

Page 212: 2014: Introdução às Redes Neurais Artificiais

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:

Page 213: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 213

j

N

i

ijij bywy1

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

Page 214: 2014: Introdução às Redes Neurais Artificiais

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

ijj

jiji yywE2

1

2

1

1 1

Page 215: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 215

onde

N

jii

ijijj ywuy1

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

jii

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

iij

jjiji yywE

2323131332321212313121212

1yywyywyywyywyywyywE

Page 216: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 216

Supondo que 02 y :

23233232121221212

1yywyywyywyywE

Que produz:

3

21

2323121223232121

ii

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;

Page 217: 2014: Introdução às Redes Neurais Artificiais

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).

Page 218: 2014: Introdução às Redes Neurais Artificiais

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

ijjiN

w1

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:

Page 219: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 219

N

iijij 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

iiij

N

i

p

iijj xN

xN

u1 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

iiijjj

p N

iiijj

Nu

Nu

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.

Page 220: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 220

A parcela mais à direita,

p N

iiij

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

KK

Nde elevados espara 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,01

(K = 138 quando N = 1000);

Page 221: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 221

2. N

NKN

ln2ln2 (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 1P , então temos que WP = P.

Uma solução para W é dada na forma: TTPPPPW

1 .

Para que exista 1PP

T , basta que os vetores , =1,…,K, sejam linearmente

independentes, pois esta condição garante que a matriz P tem posto completo.

A matriz TTPPPP

1 é denominada pseudoinversa de P (Moore-Penrose).

Page 222: 2014: Introdução às Redes Neurais Artificiais

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.

Page 223: 2014: Introdução às Redes Neurais Artificiais

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.

Page 224: 2014: Introdução às Redes Neurais Artificiais

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.

Page 225: 2014: Introdução às Redes Neurais Artificiais

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.

Page 226: 2014: Introdução às Redes Neurais Artificiais

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.

Page 227: 2014: Introdução às Redes Neurais Artificiais

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

Page 228: 2014: Introdução às Redes Neurais Artificiais

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

Page 229: 2014: Introdução às Redes Neurais Artificiais

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.

Page 230: 2014: Introdução às Redes Neurais Artificiais

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.

Page 231: 2014: Introdução às Redes Neurais Artificiais

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

jjwf1

)()( 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).

Page 232: 2014: Introdução às Redes Neurais Artificiais

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

Page 233: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 233

2. Funções-base senoidais (série de Fourier):

n

xjx

j

j

2sin)(

3. Funções-base logísticas (perceptron): j

T

j

j

b0exp1

1)(

xbx

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.

Page 234: 2014: Introdução às Redes Neurais Artificiais

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.

Page 235: 2014: Introdução às Redes Neurais Artificiais

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.003130x

5 + 0.07321x

4 −

0.3577x3 + 0.2255x

2 + 0.9038x. (Fonte: wikipedia.org)

Page 236: 2014: Introdução às Redes Neurais Artificiais

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 .

Page 237: 2014: Introdução às Redes Neurais Artificiais

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.

Page 238: 2014: Introdução às Redes Neurais Artificiais

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: Nm 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).

Page 239: 2014: Introdução às Redes Neurais Artificiais

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.

Page 240: 2014: Introdução às Redes Neurais Artificiais

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 = 1d.

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)

Page 241: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 241

-2 -1.5 -1 -0.5 0 0.5 1 1.5 20

0.5

1

1.5

2

2.5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 20

1

2

3

4

5

6

7

8

9

10

(a) (b)

Page 242: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 242

-2 -1.5 -1 -0.5 0 0.5 1 1.5 20

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.

Page 243: 2014: Introdução às Redes Neurais Artificiais

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:

Page 244: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 244

2

2

σexp)(

j

j

j

cxx , 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

cxx

σ

σ)(

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

Page 245: 2014: Introdução às Redes Neurais Artificiais

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 1exp)(

onde Tnxxx 21x é o vetor de entradas, Tjnjjj ccc 21c é 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 .

Page 246: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 246

Neste caso, os elementos do vetor Tjnjjj 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.

Page 247: 2014: Introdução às Redes Neurais Artificiais

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.

Page 248: 2014: Introdução às Redes Neurais Artificiais

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.

Page 249: 2014: Introdução às Redes Neurais Artificiais

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

Page 250: 2014: Introdução às Redes Neurais Artificiais

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.

Page 251: 2014: Introdução às Redes Neurais Artificiais

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 ĝ(,): XP 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 ĝ.

Page 252: 2014: Introdução às Redes Neurais Artificiais

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

gggJ1

2)ˆ(

2

1)θ,(ˆ)(

2

1)θ( xx , (8)

onde é um número positivo denominado parâmetro de regularização.

Page 253: 2014: Introdução às Redes Neurais Artificiais

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.

Page 254: 2014: Introdução às Redes Neurais Artificiais

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.

Page 255: 2014: Introdução às Redes Neurais Artificiais

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;

Page 256: 2014: Introdução às Redes Neurais Artificiais

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)1d,

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().

Page 257: 2014: Introdução às Redes Neurais Artificiais

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.

Page 258: 2014: Introdução às Redes Neurais Artificiais

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.

Page 259: 2014: Introdução às Redes Neurais Artificiais

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):

(GTG + 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+ = (GTG)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.

Page 260: 2014: Introdução às Redes Neurais Artificiais

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.

Page 261: 2014: Introdução às Redes Neurais Artificiais

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.

Page 262: 2014: Introdução às Redes Neurais Artificiais

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

Page 263: 2014: Introdução às Redes Neurais Artificiais

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.

Page 264: 2014: Introdução às Redes Neurais Artificiais

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.

Page 265: 2014: Introdução às Redes Neurais Artificiais

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):

Page 266: 2014: Introdução às Redes Neurais Artificiais

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.

Page 267: 2014: Introdução às Redes Neurais Artificiais

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

kktttt

j

ijij

j c

xcxcc

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.

Page 268: 2014: Introdução às Redes Neurais Artificiais

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

jeJ1

2

2

1,

onde

ej = dj F*(xj)

Page 269: 2014: Introdução às Redes Neurais Artificiais

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 i1 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

iiw

Jww

1α , onde

N

j

ijj

i

Gew

J

1

||)(|| cx

2. Posições dos centros:

i

ii

J

ccc

2α , onde

N

j

ijiijji

i

GewJ

1

1 ][||)(||'2 cxcxc , i = 1, ..., n

3. Dispersão dos centros:

Page 270: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 270

13

11 α

i

ii

J, onde

N

j

T

ijijijji

i

GewJ

11

]][||)[(||' cxcxcx

26.3. Um Exemplo de Aproximação Usando Redes RBF

0 2 4 6 8 100

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

Page 271: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 271

0 2 4 6 8 100

1

2

3

4

5

6

0 2 4 6 8 100

1

2

3

4

5

6

7

8

0 2 4 6 8 100

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

Page 272: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 272

0 2 4 6 8 100

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)

Page 273: 2014: Introdução às Redes Neurais Artificiais

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.

Page 274: 2014: Introdução às Redes Neurais Artificiais

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.

Page 275: 2014: Introdução às Redes Neurais Artificiais

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.

Page 276: 2014: Introdução às Redes Neurais Artificiais

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.

Page 277: 2014: Introdução às Redes Neurais Artificiais

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 layer Second 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.

Page 278: 2014: Introdução às Redes Neurais Artificiais

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

jiw

ttwtw

m

i

m

i

m

ib

ttbtb

)(α)()1( ?

A derivação do algoritmo de backpropagation será apresentada e resumida em

notação matricial:

Page 279: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 279

f1

W1

b1

u1

x

1

Primeira camada

y1 = f

1 (W1x + b

1)

f2

W2

b2

u2

y1

1

Segunda camada

y2 = f

2 (W2y

1 + b2)

f3

W3

b3

u3

y2

1

Terceira camada

y3 = f

3 (W3y

2 + b3)

y3

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 + b

m + 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(W3f2(W2f1(W1x + b1)+b2)+b3).

Page 280: 2014: Introdução às Redes Neurais Artificiais

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

,

mS

j

m

i

m

j

m

ji

m

i bywu

.1,1

,

m

i

m

im

jm

ji

m

i

b

uy

w

u

Page 281: 2014: Introdução às Redes Neurais Artificiais

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

iu

então:

,δ 1

,

m

j

m

im

ji

yw

.δ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

Page 282: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 282

onde .21

T

m

S

mmm

m

muuu

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

Page 283: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 283

Considere um elemento i, j qualquer desta matriz:

),()(

1

,

1

,

1

,

1m

j

mm

jim

j

m

j

m

m

jim

j

m

jm

jim

j

m

i ufwu

ufw

u

yw

u

u

onde .

)()(

m

j

m

j

m

m

j

m

u

ufuf

Em notação matricial:

),(1

1

mmm

m

m

uFWu

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:

Page 284: 2014: Introdução às Redes Neurais Artificiais

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

uWuF

uu

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

iiiM

i

S

j

jj

M

i

T

M

i

M

iu

yys

u

ys

uu

J

M

ysys

Como:

),()(

M

j

M

M

i

M

j

M

M

i

M

i

M

i

i ufu

uf

u

y

u

y

então ).()(2δ M

j

M

ii

M

i ufys

Page 285: 2014: Introdução às Redes Neurais Artificiais

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

u

1 x

1

f 2

W 2

b 2

u

2 y

1

1

f 3

W 3

b 3

u

3 y

2

1

y 3

F 1 .

F 2 .

F 3

.

Propagação dos sinais

2 ( y – s )

3 2 1

Retro-propagação das sensibilidades

(W 2 )

T (W

3 )

T

2 3

Page 286: 2014: Introdução às Redes Neurais Artificiais

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

yim + 1

fm + 1

(Wm + 1

yim + b

m + 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 eiTei = (di yi)

T (di yi) //calculate the error for pattern i

end for

MSE 1/N.sum(Ei) //MSE

t t + 1

end while

end procedure

Page 287: 2014: Introdução às Redes Neurais Artificiais

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:

Page 288: 2014: Introdução às Redes Neurais Artificiais

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 wxwfxxxF1

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(.).

Page 289: 2014: Introdução às Redes Neurais Artificiais

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.

Page 290: 2014: Introdução às Redes Neurais Artificiais

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.

Page 291: 2014: Introdução às Redes Neurais Artificiais

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.

Page 292: 2014: Introdução às Redes Neurais Artificiais

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

Page 293: 2014: Introdução às Redes Neurais Artificiais

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.

Page 294: 2014: Introdução às Redes Neurais Artificiais

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

Page 295: 2014: Introdução às Redes Neurais Artificiais

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.

Page 296: 2014: Introdução às Redes Neurais Artificiais

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

Page 297: 2014: Introdução às Redes Neurais Artificiais

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.

Page 298: 2014: Introdução às Redes Neurais Artificiais

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 451.5

2

2.5

3

3.5

4

4.5

w01 + w11*z1 + w21*z2 + w31*z3 + w41*z4

Page 299: 2014: Introdução às Redes Neurais Artificiais

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.

Page 300: 2014: Introdução às Redes Neurais Artificiais

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.

Page 301: 2014: Introdução às Redes Neurais Artificiais

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

Page 302: 2014: Introdução às Redes Neurais Artificiais

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

Page 303: 2014: Introdução às Redes Neurais Artificiais

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.

Page 304: 2014: Introdução às Redes Neurais Artificiais

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

Page 305: 2014: Introdução às Redes Neurais Artificiais

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

Page 306: 2014: Introdução às Redes Neurais Artificiais

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:

Page 307: 2014: Introdução às Redes Neurais Artificiais

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.

Page 308: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 308

Figura 10: Rede para aproximação de funções.

Page 309: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 309

0 5 10 15 20 25 30 35 40 450.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.

Page 310: 2014: Introdução às Redes Neurais Artificiais

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

150

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

200

0.5

1

1.5

2

v(1,1)v(0,1)

Page 311: 2014: Introdução às Redes Neurais Artificiais

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

100

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

Page 312: 2014: Introdução às Redes Neurais Artificiais

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.

Page 313: 2014: Introdução às Redes Neurais Artificiais

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.

Page 314: 2014: Introdução às Redes Neurais Artificiais

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

Page 315: 2014: Introdução às Redes Neurais Artificiais

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.

Page 316: 2014: Introdução às Redes Neurais Artificiais

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).

Page 317: 2014: Introdução às Redes Neurais Artificiais

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.

Page 318: 2014: Introdução às Redes Neurais Artificiais

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.

Page 319: 2014: Introdução às Redes Neurais Artificiais

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,

Page 320: 2014: Introdução às Redes Neurais Artificiais

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:

,1ln1 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

Page 321: 2014: Introdução às Redes Neurais Artificiais

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.

Page 322: 2014: Introdução às Redes Neurais Artificiais

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

Page 323: 2014: Introdução às Redes Neurais Artificiais

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.

Page 324: 2014: Introdução às Redes Neurais Artificiais

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

Err

o

Figura 13: Curvas idealizadas de erro de treinamento e generalização.

Page 325: 2014: Introdução às Redes Neurais Artificiais

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

Page 326: 2014: Introdução às Redes Neurais Artificiais

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.

Page 327: 2014: Introdução às Redes Neurais Artificiais

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.

Page 328: 2014: Introdução às Redes Neurais Artificiais

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.

Page 329: 2014: Introdução às Redes Neurais Artificiais

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.

Page 330: 2014: Introdução às Redes Neurais Artificiais

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.

Page 331: 2014: Introdução às Redes Neurais Artificiais

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:

Page 332: 2014: Introdução às Redes Neurais Artificiais

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

Page 333: 2014: Introdução às Redes Neurais Artificiais

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:

Page 334: 2014: Introdução às Redes Neurais Artificiais

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.

Page 335: 2014: Introdução às Redes Neurais Artificiais

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.

Page 336: 2014: Introdução às Redes Neurais Artificiais

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.

Page 337: 2014: Introdução às Redes Neurais Artificiais

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

Page 338: 2014: Introdução às Redes Neurais Artificiais

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,

Page 339: 2014: Introdução às Redes Neurais Artificiais

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

Page 340: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 340

T

n

Fx

Fx

Fx

F

)()()()(

21

xxxx

T

nnn

n

n

Fx

Fxx

Fxx

Fxx

Fx

Fxx

Fxx

Fxx

Fx

F

)()()(

)()()(

)()()(

)(

2

2

2

2

1

2

2

2

22

2

12

21

2

21

2

21

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

11)( xxxF

Page 341: 2014: Introdução às Redes Neurais Artificiais

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)

Page 342: 2014: Introdução às Redes Neurais Artificiais

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.

Page 343: 2014: Introdução às Redes Neurais Artificiais

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 Nlll 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 rPXg :)θ(.,ˆ , 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.

Page 344: 2014: Introdução às Redes Neurais Artificiais

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

ggN

J1

2)θ,(ˆ)(

1)θ( xx (1)

Page 345: 2014: Introdução às Redes Neurais Artificiais

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*θθ

JP

(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.

Page 346: 2014: Introdução às Redes Neurais Artificiais

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.

Page 347: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 347

Dado o conjunto amostral Nlll 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 *.

Page 348: 2014: Introdução às Redes Neurais Artificiais

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.

Page 349: 2014: Introdução às Redes Neurais Artificiais

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.

Page 350: 2014: Introdução às Redes Neurais Artificiais

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ÉGIAS DE TREINAMENTO

SEM DIFERENCIAÇÃO 1aORDEM 2a ORDEM EMPÍRICOS

GA SA BP GRAD CG QNN-LM QP MOD.

SCG FR PR DFP BFGS

OSSBE

Page 351: 2014: Introdução às Redes Neurais Artificiais

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

Page 352: 2014: Introdução às Redes Neurais Artificiais

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.

Page 353: 2014: Introdução às Redes Neurais Artificiais

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):

)θθ)(θ()θθ()θθ()θ()θ()θ( 2ii

Tii

Tiiquad JJJJ (4)

onde J(i) é o vetor gradiente e 2J(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.

Page 354: 2014: Introdução às Redes Neurais Artificiais

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)

Page 355: 2014: Introdução às Redes Neurais Artificiais

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.

Page 356: 2014: Introdução às Redes Neurais Artificiais

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

iiii

J

J

Page 357: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 357

Algoritmo:

Page 358: 2014: Introdução às Redes Neurais Artificiais

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(α

iiiJi

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.

Page 359: 2014: Introdução às Redes Neurais Artificiais

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:

)θ(

1

1

i

iquadJ

(6)

Aplicando a Equação (6) na Equação (4) resulta:

)θ()θ(θθ12

1 iiii JJ

, (7)

onde 2J(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

Page 360: 2014: Introdução às Redes Neurais Artificiais

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 2J() a cada iteração, e na

eventualidade de se obter 2J() 0, deve-se aplicar um procedimento de

positivação desta matriz.

Page 361: 2014: Introdução às Redes Neurais Artificiais

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:

)θ(αθθ 11 iiiii J M ,

onde

0λ se)λε()θ(

0λ se)θ(][

min][

min2

][min

2

iiii

iii

J

J

IM

M,

com ][

minλ io autovalor mínimo de Mi. Ainda não existem resultados que conduzam

à determinação automática de um valor ótimo para .

Page 362: 2014: Introdução às Redes Neurais Artificiais

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.

Page 363: 2014: Introdução às Redes Neurais Artificiais

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.

Page 364: 2014: Introdução às Redes Neurais Artificiais

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 rggJ1

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:

Page 365: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 365

Tq

T

r

r

1

J, onde r é denominado de erro residual.

Diferenciando:

q

k

kkT rJ

1

22 rrJ ,

q

k

kkT rJ

1

222 rJJ

Quando os erros residuais são suficientemente pequenos, a matriz Hessiana pode

ser aproximada pelo primeiro termo da equação acima:

JJTJ 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:

rJJJTT 1

θ

.

Page 366: 2014: Introdução às Redes Neurais Artificiais

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 é:

rJIJJTT 1

μθ

.

O efeito da matriz adicional I é adicionar a cada autovalor de JTJ.

Uma vez que a matriz JTJ é 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.

Page 367: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 367

Algoritmo:

Page 368: 2014: Introdução às Redes Neurais Artificiais

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.

Page 369: 2014: Introdução às Redes Neurais Artificiais

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:

iiTi

iTiii

iTi

Tii

iiqHq

HqqH

qp

ppHH 1 , i = 0, 1, …, P – 1.

Onde iii dp α e iiii J pggq )θ(21 .

Note que a avaliação do gradiente em dois pontos fornece informações sobre a

matriz Hessiana 2J().

Page 370: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 370

Page 371: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 371

Método de Broyden-Fletcher-Goldfarb-Shanno (BFGS)

iTi

iTii

Tiii

iTi

iiTi

iTi

Tii

iiqp

HqppqH

qp

qHq

qp

ppHH

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 ,

Page 372: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 372

onde iiii ps θθ 1 .

iTi

iTi

i

iTi

iTi

iTi

iTi

iTi

iTi

i BAqs

gs

qs

gq

qs

gs

qs

qq

;1 .

Os vetores qi e pi são determinados como anteriormente.

Page 373: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 373

Page 374: 2014: Introdução às Redes Neurais Artificiais

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)θ( TTJ bQ

Page 375: 2014: Introdução às Redes Neurais Artificiais

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

iTi

iTi

ii

Jd

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,…,P1. Uma maneira de determinar estas

direções é tomá-las na forma (BAZARAA et. al., 1993):

iTi

iT

i

iiii

J

iJ

J

Qdd

Qd

dd

d

)θ(βcom

0β)θ(

)θ(

1i

11

00

.

Para problemas não-quadráticos a matriz Q deve ser aproximada pela matriz

Hessiana calculada no ponto i.

Page 376: 2014: Introdução às Redes Neurais Artificiais

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

iTi

iiTi

igg

ggg 11β

Senão, faça: di = ig .

Page 377: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 377

Algoritmo:

Page 378: 2014: Introdução às Redes Neurais Artificiais

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

21

β

i

ii

g

g

.

Senão, faça: di = ig .

Page 379: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 379

Algoritmo:

Page 380: 2014: Introdução às Redes Neurais Artificiais

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.

Page 381: 2014: Introdução às Redes Neurais Artificiais

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.

Page 382: 2014: Introdução às Redes Neurais Artificiais

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

iii

p

iJ

J

; calcule p

iJ 1θ

2. Enquanto piJ 1θ J(i) faça:

2.1. iri t αα

2.2. )θ(

)θ(αθθ 1

i

iii

p

iJ

J

3. p

ii θθ

Page 383: 2014: Introdução às Redes Neurais Artificiais

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).

Page 384: 2014: Introdução às Redes Neurais Artificiais

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.

Page 385: 2014: Introdução às Redes Neurais Artificiais

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].

Page 386: 2014: Introdução às Redes Neurais Artificiais

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 .

Page 387: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 387

Page 388: 2014: Introdução às Redes Neurais Artificiais

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.

Page 389: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 389

Page 390: 2014: Introdução às Redes Neurais Artificiais

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

iid

θ

θθ 1

.

Page 391: 2014: Introdução às Redes Neurais Artificiais

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

Page 392: 2014: Introdução às Redes Neurais Artificiais

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).

Page 393: 2014: Introdução às Redes Neurais Artificiais

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

Page 394: 2014: Introdução às Redes Neurais Artificiais

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

Page 395: 2014: Introdução às Redes Neurais Artificiais

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 flops106

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

Page 396: 2014: Introdução às Redes Neurais Artificiais

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

Page 397: 2014: Introdução às Redes Neurais Artificiais

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.

Page 398: 2014: Introdução às Redes Neurais Artificiais

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.

Page 399: 2014: Introdução às Redes Neurais Artificiais

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

Page 400: 2014: Introdução às Redes Neurais Artificiais

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.

Page 401: 2014: Introdução às Redes Neurais Artificiais

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.

Page 402: 2014: Introdução às Redes Neurais Artificiais

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.

Page 403: 2014: Introdução às Redes Neurais Artificiais

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

Page 404: 2014: Introdução às Redes Neurais Artificiais

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)

Page 405: 2014: Introdução às Redes Neurais Artificiais

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 : nm ), 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

jjhfL1

)()(),( 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 é:

Page 406: 2014: Introdução às Redes Neurais Artificiais

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 : nkm ) é

dada por:

m

j

jj

k

i

ii hgfL11

)()()(),,( 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:

Page 407: 2014: Introdução às Redes Neurais Artificiais

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

Page 408: 2014: Introdução às Redes Neurais Artificiais

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*) = (*,*).

Page 409: 2014: Introdução às Redes Neurais Artificiais

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;

Page 410: 2014: Introdução às Redes Neurais Artificiais

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.

Page 411: 2014: Introdução às Redes Neurais Artificiais

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.

Page 412: 2014: Introdução às Redes Neurais Artificiais

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

Page 413: 2014: Introdução às Redes Neurais Artificiais

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

xx

x

x

x

xo

o

oo

oo

(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

xx

x

x

x

xo

o

oo

oo

(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:

Page 414: 2014: Introdução às Redes Neurais Artificiais

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 b1

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:

Page 415: 2014: Introdução às Redes Neurais Artificiais

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)

Page 416: 2014: Introdução às Redes Neurais Artificiais

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:

Page 417: 2014: Introdução às Redes Neurais Artificiais

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.

Page 418: 2014: Introdução às Redes Neurais Artificiais

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 / 22) , (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'Tx + 1)d , (7)

onde a parâmetro d (grau do polinômio) é especificado a priori pelo usuário.

Perceptron:

K(x,x') = tanh(0x'Tx + 1), (8)

Page 419: 2014: Introdução às Redes Neurais Artificiais

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.

Page 420: 2014: Introdução às Redes Neurais Artificiais

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)

Page 421: 2014: Introdução às Redes Neurais Artificiais

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 FyLN

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

Page 422: 2014: Introdução às Redes Neurais Artificiais

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)

Page 423: 2014: Introdução às Redes Neurais Artificiais

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)

infwR(w)

N

Remp(wN)

R(wN)

infwR(w)

Figura 23: Consistência da minimização do risco empírico.

Page 424: 2014: Introdução às Redes Neurais Artificiais

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)

Page 425: 2014: Introdução às Redes Neurais Artificiais

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).

Page 426: 2014: Introdução às Redes Neurais Artificiais

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): wW, F: mW {0,1}}.

Seja X o conjunto de N pontos em um espaço de entrada m-dimensional, isto é:

X = {xi ; i = 1, 2, . . . , N}.

Page 427: 2014: Introdução às Redes Neurais Artificiais

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 .

Page 428: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 428

x1

x2

x3x1

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 .

Page 429: 2014: Introdução às Redes Neurais Artificiais

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.

Page 430: 2014: Introdução às Redes Neurais Artificiais

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) = wTx + b = 0 (12)

onde, w m é o vetor de pesos, e b é o bias.

Assim podemos aplicar a seguinte estratégia de decisão:

wTx + b 0 para y = +1 (13)

wTx + 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):

wTx + b +1 para y = +1 (14)

wTx + b 1 para y = 1

A seguir é apresentada a notação compacta para as desigualdades (14):

y [wTx + b] 1. (15)

Page 431: 2014: Introdução às Redes Neurais Artificiais

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) = wTx + 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).

Page 432: 2014: Introdução às Redes Neurais Artificiais

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.

Page 433: 2014: Introdução às Redes Neurais Artificiais

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):

wTx

sv+ + b = +1 , sendo xsv+ um vetor-suporte pertencente à classe y = +1; (16)

wTx

sv- + 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

wx

w

wx

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.

Page 434: 2014: Introdução às Redes Neurais Artificiais

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.

Page 435: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 435

x

x

x

x

xx

xx

Hiperplano

ótimo

Vetores-

suportes

Margem

Ponto

xi

x

x

x

x

xx

xx

Ponto

xi

(a) (b)

x

x

x

x

xx

xx

Ponto xi

(c)

x

x

x

x

xx

xx

Hiperplano

ótimo

Vetores-

suportes

Margem

Ponto

xi

x

x

x

x

xx

xx

Ponto

xi

(a) (b)

x

x

x

x

xx

xx

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 [wTxi + b] 1i , i = 1, . . . , N . (18)

Page 436: 2014: Introdução às Redes Neurais Artificiais

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 1i,

mesmo que i > 0.

Page 437: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 437

x

x

x

x

xx

x

x

x

i = 0,8i > 1

i= 0

x

i > 1

x

x

x

x

xx

x

x

x

i = 0,8i > 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 ():

Page 438: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 438

N

i

iI1

)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:

wTw 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 ={wTx + b: wT

w Ak}

determinados pela constante Ak.

A função indicadora I(i 1) é definida por:

.011

;010

)1(i

i

ise

se

I

(21)

Page 439: 2014: Introdução às Redes Neurais Artificiais

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.

Page 440: 2014: Introdução às Redes Neurais Artificiais

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.

Page 441: 2014: Introdução às Redes Neurais Artificiais

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)

Page 442: 2014: Introdução às Redes Neurais Artificiais

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 bybL1

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

ybb

L

ybL

w

xwww

(25)

Page 443: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 443

Substituindo as relações obtidas:

N

i

iiiy1

xw (26)

e

01

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:

Page 444: 2014: Introdução às Redes Neurais Artificiais

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 (xiTxj)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.

Page 445: 2014: Introdução às Redes Neurais Artificiais

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

iiiy1

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

ijjyi

N

j

j

T

ijjyi

yyb1

}1|{1

}1|{)(min)(max

2

1xxxx

, (31)

onde Nsv é o numero de vetores-suporte.

Utilizando a condição de complementariedade de Kuhn-Tucker (Teorema 6),

obtemos a seguinte relação:

Page 446: 2014: Introdução às Redes Neurais Artificiais

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:

Page 447: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 447

2

1

1

1

svN

i

iw . (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 byf1

)(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.

Page 448: 2014: Introdução às Redes Neurais Artificiais

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:

Page 449: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 449

4.

N

i

iiiy1

xw ,

sv

i

sv

i

N

j

j

T

ijjyi

N

j

j

T

ijjyi

yyb1

}1|{1

}1|{)(min)(max

2

1xxxx

.

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:

Page 450: 2014: Introdução às Redes Neurais Artificiais

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 bKyxf1

),(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.

Page 451: 2014: Introdução às Redes Neurais Artificiais

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):

Page 452: 2014: Introdução às Redes Neurais Artificiais

Introdução as Redes Neurais Artificiais

Copyright ® Leandro Nunes de Castro 452

N

i

i

T C1

)(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:

Page 453: 2014: Introdução às Redes Neurais Artificiais

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 rbyCrbL111

1)()(2

1),,,,( xwwww , (40)

Page 454: 2014: Introdução às Redes Neurais Artificiais

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

rCrbL

yrbb

L

yrbL

w

w

xwww

(41)

Substituindo as relações obtidas na função Lagrangeana (40), obtém-se:

N

ji

j

T

ijiji

N

i

i yyrbL1,1

)(2

1),,,,( xxw (42)

Page 455: 2014: Introdução às Redes Neurais Artificiais

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

Page 456: 2014: Introdução às Redes Neurais Artificiais

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

iiiy1

)(xw .

Page 457: 2014: Introdução às Redes Neurais Artificiais

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

jijjyi

N

j

jijjyi

KyKyb1

}1|{1

}1|{),(min),(max

2

1xxxx

. (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 bKyf1

),(sgn)( xxx . (46)

Page 458: 2014: Introdução às Redes Neurais Artificiais

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)

•••

•••

y11

y22

yNsvNsv

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)

•••

•••

y11

y22

yNsvNsv

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.

Page 459: 2014: Introdução às Redes Neurais Artificiais

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 Kyy1,

),(*)*( 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.

Page 460: 2014: Introdução às Redes Neurais Artificiais

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

iiiy1

)(xw ,

sv

i

sv

i

N

j

jijjyi

N

j

jijjyi

KyKyb1

}1|{1

}1|{),(min),(max

2

1xxxx

.

Page 461: 2014: Introdução às Redes Neurais Artificiais

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.

Page 462: 2014: Introdução às Redes Neurais Artificiais

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

Page 463: 2014: Introdução às Redes Neurais Artificiais

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.

Page 464: 2014: Introdução às Redes Neurais Artificiais

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.