140
I¥W

Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Embed Size (px)

Citation preview

Page 1: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

I¥W

Page 2: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Redes Neurais Artificiais:Teoria e Aplicações

Antônio de Pádua Braga(DELT-UFMG)

André Ponce de Leon E de Carvalho(ICMSC-USP)

Teresa Bernarda Ludermir(DI-UFPE)

TCEDITORA

Page 3: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capa: Dan Palatnik

Direitos exclusivos para a língua portuguesaCopyright © 2000 byLTC - LIVROS TÉCNICOS E CIENTÍFICOS EDITORA S.A.Travessa do Ouvidor, 11Rio de Janeiro, RJ - CEP 20040-040Tel.: 21-221-9621Fax: 21-221-3202

Reservados todos os direitos . É proibida a duplicaçãoou reprodução deste volume , no todo ou em parte,sob quaisquer formas ou por quaisquer meios(eletrônico , mecânico , gravação , fotocópia ou outros)sem permissão expressa da Editora.

A Wanda e Mateus,

A Valéria e Beatriz,

A Wilson, Artur e Rodrigo.

Page 4: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Prefácio

A idéia de escrever este livro surgiu como uma conseqüência natural do trabalho con-junto que temos realizado nos últimos anos. Embora distantes fisicamente, graças à Inter-net, à execução de projetos em conjunto como ProTeM-CC/CNPq, RECOPE-IA/FINEP e àorganização dos Simpósios Brasileiros de Redes Neurais (SBRNs), temos estado em conta-to freqüente. Em algumas oportunidades, durante os nossos cursos de mestrado e doutora-do, fomos contemporâneos, trabalhando nos mesmos departamentos e grupos de pesquisa.

A área de Redes Neurais Artificiais (RNAs) começou a se desenvolver no Brasil ao fi-nal dos anos 70, e, desde então, foram formados inúmeros mestres e vários doutores naárea. Por ter característica multidisciplinar, a gama de aplicações das RNAs é vasta, oque gerou também nos últimos anos no Brasil uma grande demanda por aplicações nossetores industrial, comercial e de serviços. Com a inclusão de disciplinas de RNAs em váriosdos cursos de graduação em Informática e Engenharia, tornou-se imprescindível um li-vro que tivesse um nível técnico apropriado em que o assunto fosse abordado com umavisão mais ampla da área, proporcionando ao leitor uma formação sólida em fundamen-tos e aplicações das RNAs.

Este livro apresenta aspectos básicos e aplicações de RNAs. Após uma introdução gra-dual aos seus principais fundamentos, tais como aprendizado e principais topologias, osmodelos mais difundidos são então apresentados. Em todo o livro, o assunto é abordadocom a profundidade adequada para que o leitor adquira a autonomia necessária para odesenvolvimento de suas próprias aplicações. Como existe na literatura uma diversidademuito grande de modelos de RNAs, resolvemos incluir neste livro somente aqueles que,do ponto de vista dos autores, têm sido mais investigados nas universidades e nos labora-tórios de pesquisa, além de utilizados em aplicações práticas.

O texto que se segue pode ser utilizado para cursos de diferentes níveis e audiências,tais como:

• Curso de RNAs em nível de graduação : Capítulos 1 a 4, Capítulo 5 (Seções 5 . 1 e 5.6),Capítulo 6 e Capítulo 10.

• Curso de RNAs em nível de pós-graduação: todo o livro.

• Seminários sobre tópicos de RNAs: Capítulos 5, 7, 8, 9 e 10;

• Minicursos de introdução a RNAs: Capítulos 1 e 2, Capítulo 3 (Seções 3.1 e 3.3),Capítulo 4, Capítulo 6 (Seção 6.2 ) e Capítulo 10.

Page 5: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Esperamos que este livro atinja os seus objetivos, servindo de instrumento para a di-fusão da área de RNAs no Brasil, e que seja utilizado como ferramenta de trabalho paraaqueles que se dedicam à área e também como incentivo para aqueles que se iniciam noassunto.

Finalmente, gostaríamos de agradecer às nossas esposas, Wanda e Valéria, ao ex-ma-rido Wilson e aos nossos filhos Mateus, Beatriz, Artur e Rodrigo, pelo amor, apoio, paci-ência e por todas as horas de convívio das quais os privamos para nos dedicarmos à ela-boração deste livro e aos nossos trabalhos de pesquisa.

Agradecemos a todos os amigos, colegas e alunos, que, através de discussões, comen-tários e palavras de incentivo, colaboraram para a realização deste livro. Braga gostariade agradecer a Gustavo G. Parma e a Alessandra L. Carvalho pela ajuda na elaboraçãodos gráficos das Figuras 10.2, 10.3 e 10.6. André gostaria de agradecer especialmente aosalunos Cláudia Milaré, Edmar Martineli, Elson Mendes Filho, Ernesto Vargas, EstefaneLacerda, Fabio Melfi, Hélio Diniz, Humberto de Sousa, Katti Faceli, Marco Vega, Patrí-cia Teixeira, Renan Giovanini, Ricardo Sovat, Roberto Figueira e Werner Hanisch. Tere-sa agradece especialmente a Jeferson pela ajuda nos desenhos das figuras dos Capítulos1 e 8.

Agradecemos também às agências de fomento CNPq, CAPES, FINEP, FAPESP,FAPEMIG e FACEPE pelo apoio financeiro recebido durante a nossa vida acadêmica.

Antônio de Pádua BragaAndré P. de L. F. de Carvalho

Teresa Bernarda Ludermir

Sobre os Autores

Antônio de Pádua Braga é Engenheiro Eletricista, formado pela UFMG em 1987, e Mes-tre em Ciência da Computação, também pela UFMG. Obteve o seu PhD em EngenhariaElétrica em 1995 pelo Imperial College (University of London) na área de Redes NeuraisArtificiais. É atualmente Professor Adjunto do Departamento de Engenharia Eletrónicada UFMG, onde orienta vários alunos de doutorado, mestrado e graduação na área deRedes Neurais. Publicou vários trabalhos em periódicos e em anais de conferências naci-onais e internacionais na área deste livro. Organizou o V Simpósio Brasileiro de RedesNeurais e é coordenador da Comissão Especial de Redes Neurais da Sociedade Brasileirade Computação. É atualmente co-editor chefe do periódico internacional InternationalJournal of Computational Intelligence and Applications, publicado pela Imperial Colle-ge Press, de Londres, Inglaterra.

André P. de L. F. de Carvalho cursou graduação e mestrado em Ciência da Computaçãopelo Departamento de Informática da Universidade Federal de Pernambuco em 1987 e1990, respectivamente. Em 1994, obteve seu PhD em Redes Neurais pela University ofKent at Canterbury, Inglaterra. Iniciou carreira docente em 1994 como Professor Assis-tente junto ao Departamento de Ciências da Computação e Estatística da Universidadede São Paulo, Campus de São Carlos. Em 1998, tornou-se Professor Associado do referi-do departamento, de onde está licenciado. Atualmente, é Professor Associado da Univer-sity of Guelph, Canadá. Publicou vários artigos em congressos e periódicos nacionais einternacionais e dois livros. Organizou o II Simpósio Brasileiro de Redes Neurais e foicoordenador da Comissão Especial de Redes Neurais da Sociedade Brasileira de Compu-tação. É atualmente co-editor chefe do periódico internacional International Journal ofComputational Intelligence and Applications, publicado pela Imperial College Press, deLondres, Inglaterra.

Teresa B. Ludermir fez a graduação e o mestrado em Ciência da Computação no Depar-tamento de Informática da Universidade Federal de Pernambuco em 1983 e 1986, res-pectivamente. Em 1990, terminou o doutorado em Redes Neurais no Imperial College,Universidade de Londres. De 1991 a 1992, foi professora no Kings College London, Uni-versidade de Londres. Desde setembro de 1992 é Professora Adjunta do Departamentode Informática da Universidade Federal de Pernambuco, sendo hoje coordenadora do cursode pós-graduação em Informática e líder do grupo de Inteligência Computacional. Publi-cou mais de sessenta artigos em periódicos e congressos, dois livros em Redes Neurais eorganizou o III Simpósio Brasileiro de Redes Neurais, tendo sido também coordenadorada Comissão Especial de Redes Neurais da Sociedade Brasileira de Computação.

Page 6: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Sumário

1 Introdução ............................................................................................................ 11.1 O que São Redes Neurais Artificiais? .......................................................... 11.2 Histórico ......................................................................................................... 21.3 Motivação para as RNAs: Redes Biológicas ................................................ 4

1.3.1 Neurônios Biológicos ........................................................................ 51.3.2 A Comunicação no Cérebro .............................................................. 6

1.4 Neurônios Artificiais: Modelo MCP ............................................................ 71.5 Funções de Ativação ..................................................................................... 101.6 Principais Arquiteturas de RNAs ................................................................ 111.7 Estrutura do Livro ........................................................................................ 13

2 Aprendizado ............................................................................................................ 152.1 Introdução ...................................................................................................... 152.2 Aprendizado Supervisionado ....................................................................... 16

2.2.1 Correção de Erros .............................................................................. 172.3 Aprendizado Não-supervisionado ............................................................... 19

2.3.1 Aprendizado Hebbiano .............................................. :....................... 202.3.2 Modelo de Linsker ............................................................................. 212.3.3 Regra de Oja ...................................................................................... 232.3.4 Regra de Yuille .................................................................................. 232.3.5 Aprendizado por Competição .......................................................... 23

2.4 Aprendizado por Reforço ............................................................................. 252.4.1 Classes de Aprendizado por Reforço ............................................... 26

2.5 Conclusão ....................................................................................................... 272.6 Exercícios ....................................................................................................... 27

3 Redes Perceptron e Adaline ................................................................................... 293.1 Introdução ...................................................................................................... 293.2 Portas de Limiar ............................................................................................ 30

3.2.1 Portas de Limiar Lineares ................................................................ 303.2.2 Portas de Limiar Quadráticas .......................................................... 32

3.3 Perceptron ...................................................................................................... 353.3.1 O Algoritmo de Aprendizado do Perceptron .................................. 363.3.2 Teorema da Convergéncia ................................................................ 383.3.3 Implementação do Algoritmo de Treinamento do Perceptron ...... 41

3.4 Adaline ........................................................................................................... 433.4.1 Atualização dos Pesos pelo Método do Gradiente ......................... 433.4.2 Visão Gráfica do Processo de Aprendizado .................................... 45

3.5 Conclusão ....................................................................................................... 463.6 Exercícios ....................................................................................................... 47

Page 7: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

4 Redes MLP ............................................................................................................ 494.1 Arquitetura .................................................................................................... 51

4.1.1 Funcionalidade .................................................................................. 534.2.1 Otimização da Topologia Utilizando Pruning ................................ 56

4.2 Treinamento de Redes MLP ......................................................................... 594.2.1 Derivação das Fórmulas ................................................................... 624.2.2 Dificuldades no Treinamento ........................................................ '.. 67

4.3 Variações do Back-Propagation .................................................................. 704.3.1 Algoritmo Quickprop ........................................................................ 704.3.2 Algoritmo Rprop ............................................................................... 71

4.4 Aplicações ...................................................................................................... 724.5 Conclusão ....................................................................................................... 734.6 Exercícios ....................................................................................................... 73

5 Memórias Matriciais ............................................................................................... 775.1 Introdução ...................................................................................................... 775.2 Modelo Não-linear de Willshaw .................................................................. 78

5.2.1 Um Exemplo de Utilização da Memória de Willshaw ................... 805.2.2 Capacidade de Recuperação de Informação ................................... 80

5.3 Modelo Matricial Linear ............................................................................... 815.4 Exemplo de Utilização da Memória Matricial Linear ............................... 82

5.4.1 O Termo de Crosstalk e Sua Influência na Capacidade deRecuperação de Informação ................................. :................ ........... 83

5.5 OLAM ............................................................................................................ 855.5.1 Exemplo de Utilização da OLAM .................................................... 86

5.6 Modelo de Hopfield ...................................................................................... 875.6.1 Exemplo de Operação da Rede de Hopfield ................................... 905.6.2 Minimização de Energia ................................................................... 935.6.3 Capacidade de Armazenamento ...................................................... 95

5.7 Conclusão ....................................................................................................... 975.8 Exercícios ....................................................................................................... 98

6 Redes Self-Organizing ............................................................................................ 996.1 Redes ART ...................................................................................................... 102

6.1.1 Arquitetura Básica da Rede ART 1 ................................................. 1036.1.2 Treinamento ....................................................................................... 1056.1.3 Outros Modelos ART ......................................................................... 1116.1.4 Aplicações .......................................................................................... 112

6.2 Redes SOM ..................................................................................................... 1126.2.1 Arquitetura ........................................................................................ 1156.2.2 Melhorando o Desempenho da Rede ................................................ 1166.2.3 Treinamento ....................................................................................... 1176.2.4 Exemplo de Categorização de Dados com SOM ............................. 1206.2.5 Algoritmo LVQ .................................................................................. 1256.2.6 Aplicações .......................................................................................... 126

6.3 Conclusão ....................................................................................................... 1276.4 Exercícios ....................................................................................................... 127

i Sistemas Neurais Híbridos .................................................................................... 1297.1 RNAs e Algoritmos Genéticos ...................................................................... 131

7.1.1 Algoritmos Genéticos .........................:.............................................. 131

7.1.2 Representação .................................................................................... 1337.1.3 Seleção ............................................................................................... 1347.1.4 Reprodução ........................................................................................ 1367.1.5 Parâmetros Genéticos ....................................................................... 1397.1.6 Aplicações .......................................................................................... 1407.1.7 Projeto Evolucionário de RNAs ....................................................... 1417.1.8 Representação das Redes .................................................................. 1437.1.9 Operadores Genéticos ....................................................................... 146

7.2 Combinação de RNAs com RBC .................................................................. 1477.2.1 Raciocínio Baseado em Casos .......................................................... 1477.2.2 Histórico de RBC ............................................................................... 1487.2.3 Funcionamento de um Sistema de RBC .......................................... 1497.2.4 Representação de Casos .................................................................... 1507.2.5 Indexação de Casos ........................................................................... 1517.2.6 Armazenamento e Recuperação de Casos ....................................... 1517.2.7 Adaptação de Casos .......................................................................... 1527.2.8 Avaliação e Reparo de Casos ............................................................ 1527.2.9 Integrando RNA com RBC ............................................................... 152

7.3 Extração de Conhecimento .......................................................................... 1557.3.1 Método EN ......................................................................................... 1597.3.2 Algoritmo Trepan .............................................................................. 1597.3.3 Método DEDEC ................................................................................. 159

7.4 Conclusão ....................................................................................................... 1607.5 Exercícios ....................................................................................................... 160

8 Redes Neurais sem Pesos ........................................................................................ 1618.1 Introdução ...................................................................................................... 1618.2 Nodos RAM .................................................................................................... 1638.3 Discriminadores ............................................................................................ 167

8.3.1 Multidiscriminadores ........................................................................ 1688.3.2 WISARD ............................................................................................. 169

8.4 Nodos PLN ..................................................................................................... 17 18.5 Modelo de Nodo MPLN ................................................................................ 1748.6 Nodo GSN ...................................................................................................... 1758.7 GRAM ............................................................................................................ 1828.8 GNU ..... ....................................................................................................... 1848.9 pRAM ............................................................................................................ 1858.10 SDM ............................................................................................................ 1868.11 ALN ............................................................................................................ 1878.12 ADAM ............................................................................................................ 1898.13 Estudos Comparativos .................................................................................. 1898.14 Conclusão ....................................................................................................... 1918.15 Exercícios ....................................................................................................... 191

Variações ............................................................................................................ 193

9.1 Redes RBF ...................................................................................................... 194

9.1.1 Arquitetura ........................................................................................ 194

9.1.2 Treinamerito ....................................................................................... 193..... .....9.2 Redes Construtivas............ 2 02

2039.2.1 Redes NTN ..................................... 203

Page 8: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

9.2.2 Redes CasCor ................ ......................................... .......... .................. 2039.2.3 Redes Upstart .................................................................................... 2049.2.4 Redes Tiling ....................................................................................... 2059.2.5 Redes Tower e Pyramid .................................................................... 2059.2.6 Redes SOF7" ...................................................................................... 206

9.3 Processamento Temporal ..............................................................................9.3.1 Atraso no Tempo ...............................................................................9.3.2 Back -Propagation Recorrente .........................................................9.3.3 Back-Propagation Through Time ....................................................9.3.4 Redes Recorrentes de Tempo Real ...................................................9.3.5 Redes de Elman e de Jordan .............................................................

9.4 Conclusão .......................................................................................................9.5 Exercícios .......................................................................................................

207208209209210211214215

10 Aplicações ............................................................................................................ 21710.1 Introdução ...................................................................................................... 21710.2 Modelamento e Controle Neural .................................................................. 218

10.2.1 Modelamento e Identificação de Sistemas ...................................... 21910.2.2 Controladores Neurais ...................................................................... 22110.2.3 Treinamento On-line em Identificação e Controle ......................... 225

10.3 Predição ......................................................................................................... 22710.4 Otimização ..................................................................................................... 22810.5 Processamento de Imagens e Sinais ............................... ............................. 23110.6 Classificação .................................................................................................. 23213.7 Conclusão ....................................................................................................... 234

Bibliografia ................................................................................................................... 237

Redes Neurais Artificiais:Teoria e Aplicações

Page 9: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capítulo 1

Introdução

1.1 O que são Redes Neurais Artificiais?

O final da década de 80 marcou o ressurgimento da área de Redes Neurais

Artificiais (RNAs). também conhecida como cone.xionis7no ou sistemas de pro-cessamento paralelo e distribuído. Esta forma de computação nào-algorítmica

é caracterizada por sistemas que. em algum nível, relembram a estrutura docérebro humano. Por não ser baseada em regras ou programas, a computaçãoneural se constitui em unia alternativa à computação algorítmica convencional.

RNAs são sistemas paralelos distribuídos compostos por unidades de pro-

cessamento simples (nodos) que calculam determinadas funções matemáticas(normalmente não-lineares). Tais unidades são dispostas em unia ou mais

camadas e interligadas por um grande número de conexões, geralmente unidi-recionais. Na maioria dos modelos estas conexões estão associadas a pesos. os

quais armazenam o conhecimento representado no modelo e servem para pon-derar a entrada recebida por cada neurônio da rede. O funcionamento destasredes é inspirado em uma estrutura física concebida pela natureza: o cérebro

humano.

A solução de problemas através de RNAs é bastante atrativa. já que a formaconto estes são representados internamente pela rede e o paralelismo naturalinerente à arquitetura das RNAs criam a possibilidade de um desempenhosuperior ao dos modelos convencionais. Em RNAs, o procedimento usual na

solução de problemas passa inicialmente por uma fase de aprendizagem. em que

um conjunto de exemplos é apresentado para a rede, a qual extrai automatica-mente as características necessárias para representar a informação fornecida.

Page 10: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Estas características são utilizadas posteriormente para gerar respostas para o

problema.

A capacidade de aprender através de exemplos e de generalizar a infor-

mação aprendida é, sem dúvida , o atrativo principal da solução de problemas

através de RNAs. A generalização , que está associada à capacidade de a redeaprender através de um conjunto reduzido de exemplos e posteriormente darrespostas coerentes para dados não-conhecidos , é uma demonstração de que acapacidade das RNAs vai muito além do que simplesmente mapear relações deentrada e saída. As RNAs são capazes de extrair informações não-apresentadasde forma explícita através dos exemplos. Não obstante, as RNAs são capazes deatuar como mapeadores universais de funções multivariáveis, com custo com-putacional que cresce apenas linearmente com o número de variáveis. Outracaracterística importante é a capacidade de auto -organização e de processa-mento temporal, que, aliada àquelas citadas anteriormente, faz das RNAs umaferramenta computacional extremamente poderosa e atrativa para a solução deproblemas complexos.

Histórico

O primeiro modelo artificial de um neurônio biológico foi fruto do trabalhopioneiro de Warren 11cCulloch e Walter Pitts em 1943 [11P43]. McCulloch,psiquiatra e neuroanatomista,- dedicou 20 anos à tentativa de representar umevento no sistema nervoso. Pitts, um matemático recém-graduado, juntou-se aele em 1942. No trabalho publicado em 1943, "A Logical Calculus of the IdeasImmament in Nervous Activity" [MP43], é apresentada uma discussão sofisti-cada de redes lógicas de nodos (chamados no decorrer deste livro de nodos ou

nodos MCP) e novas idéias sobre máquinas de estados finitos, elementos de

decisão de limiar lineares e representações lógicas de várias formas de compor-tamento e memória . Parte da discussão em RNAs gira em torno dos métodosde aprendizado para que os nodos possam ser capazes de executar uma deter-minada função. O trabalho de McCulloch e Pitts se concentra muito mais emdescrever um modelo artificial de um neurônio e apresentar suas capacidades

computacionais do que em apresentar técnicas de aprendizado.

O aprendizado de redes biológicas e artificiais veio a ser objeto de estudosomente alguns anos depois do trabalho de McCulloch e Pitts. O primeiro

trabalho de que se tem notícia que tem ligação direta com o aprendizado foiapresentado por Donald Hebb [Heb49], em 1949. Hebb mostrou como a plasti-

cidade da aprendizagem de redes neurais é conseguida. através da variação dospesos de entrada dos nodos. Ele propôs uma teoria para explicar o aprendiza-do em nodos biológicos baseada no reforço das ligações sinápticas entre nodos

excitados. A regra de Hebb, como é conhecida a sua teoria na comunidade deRNAs, foi interpretada do ponto de vista matemático, e é hoje utilizada emvários algoritmos de aprendizado . Mais tarde, Widrow e Hoff [WH60] suge-riram uma regra de aprendizado, conhecida como regra de Widrow-Hoff, ouregra delta , que é ainda hoje bastante utilizada . Esta, por sua vez, é baseadano método do gradiente para minimização do erro na saída de um neurôniocom resposta linear.

Em 1958, Rank Rosenblatt [Ros58] demonstrou, com o seu novo modelo,o perceptron, que, se fossem acrescidas de sinapses ajustáveis, as RNAs comnodos MCP poderiam ser treinadas para classificar certos tipos de padrões.Rosenblatt descreveu uma topologia de RNA, estruturas de ligação entre osnodos e, o mais importante, propôs um algoritmo para treinar a rede paraexecutar determinados tipos de funções. O perceptron simples descrito porRosenblatt possui três camadas: a primeira recebe as entradas do exterior epossui conexões fixas (retina); a segunda recebe impulsos da primeira atravésde conexões cuja eficiência de transmissão (peso) é ajustável e, por sua vez,envia saídas para a terceira camada (resposta). Este tipo elementar de per-ceptron comporta-se como um classificador de padrões, dividindo o espaço deentrada em regiões distintas para cada uma das classes existentes. Como serávisto mais adiante, o perceptron somente é capaz de classificar padrões quesejam linearmente separáveis. Inicialmente, a saída da rede é aleatória, mas,pelo ajuste gradual dos pesos, o perceptron é treinado para fornecer saídas deacordo com os dados do conjunto de treinamento. O que Rosenblatt buscava- e os "novos conexionistas" continuam buscando - era projetar RNAs quefossem capazes de fazer descobertas interessantes sem a necessidade de regras.

Em 1969, Minsky e Papert [MP69] chamaram a atenção para algumastarefas que o perceptron não era capaz de executar, já que este só resolveproblemas linearmente separáveis, ou seja, problemas cuja solução pode ser

obtida dividindo-se o espaço de entrada em duas regiões através de uma re-ta. O perceptron, por exemplo, não consegue detectar paridade, conectividadee simetria, que são problemas não-linearmente separáveis. Estes são exem-plos de "problemas difíceis de aprender" (hard learning problems). Problemasdifíceis de aprender formam uma classe grande de funções que não pode serdesprezada. O principal argumento de Minsky e Papert era de que o problema

2 3

Page 11: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

do crescimento explosivo. tanto de espaço ocupado como do tempo requeri-do para a solução de problemas complexos - grandes obstáculos que a escola

simbolista da inteligência artificial já enfrentava -, afetaria. cedo ou tarde. a^-

RNAs , inclusive os perceptrons . Argumentaram também que . embora existisseum algoritmo de aprendizado que garantia a convergência para modelos comuma única camada de nodos, como era o caso do modelo perceptron original.

o mesmo não acontecia para redes perceptron com mais de unia camada.

Nos anos 70. a abordagem conexionista ficou adormecida i em grande parte

devido à repercussão do trabalho de Minsk, v e Papert). apesar de alguns poucos

pesquisadores continuarem trabalhando na área. Entre eles poderei ser citadosIgor Aleksander (redes sem pesos) na Inglaterra. Kuniliiko Fukushima (cogni-

tron e neocognitron) no .Japão. Steven Grossberg (sistemas auto-adaptativos)nos EUA. e Tenvo Kolionen (memórias associativas e auto-organizadas) na

Finlândia.

Em 1982. John Hopfield publicou mil artigo [HopS2' que ('_.amou a atenção

para as propriedades associativas das RNAs. Este artigo foi responsável por

parte da retomada das pesquisas na área. O grande feito de Hopfield foi. semdúvida. mostrar a relação entre redes recorrentes auto-associativas e sistemas

físicos. o que também abriu espaço para a utilização de teorias correntes daFísica para estudar tais modelos. Não obstante, a descrição do algoritmo de

treinamento back-propagation alguns anos mais tarde 'RH\V-'-C), mostrou que a

visão de linsky e Papert sobre o perceptron era bastante pessimista. As RNAsde múltiplas camadas são. sem dúvida. capazes de resolver -problemas difíceis

de aprender—. A partir de meados da década de 80. houve nova explosão deinteresse pelas RNAs na comunidade internacional. Dois outros fatores foram

responsáveis pela retomada de interesse na área: em primeiro lugar , o avanço

da tecnologia , sobretudo da microeletrônica , que vem permitindo a realizaçãofísica de modelos de rodos e sua interconexão de uni modo antes impensável:

em segundo , o fato de a escola simbolista , a despeito de seu sucesso na solução

de determinados tipos de problemas , não ter conseguido avanços significativosna resolução de alguns problemas simples para um ser humano.

1.3 . ' Motivação para as RNAs: redes biológicas

O cérebro humano contém em torno de 1011 neurônios , sua célula fundamen-tal. Cada um destes neurônios processa e se comunica com milhares de outroscontinuamente e em paralelo . A estrutura individual dos nodos , a topologia

de suas conexões e o comportamento conjunto destes nodos naturais formam

a base para o estudo das RNAs.

O cérebro humano é responsável pelo que se chama de emoção, pensamen-to. percepção e cognição. assim como pela execução de funções sensoriomotoras

e autônomas. Além disso. sua rede de nodos tem a capacidade de reconhecer

padrões e relacioná - los. usar e armazenar conhecimento por experiência. além

de interpretar observações . Apesar do estudo contínuo . o funcionamento dasredes biológicas ainda não foi totalmente desvendado pelo honrem. Não se

sabe ao certo a forma como as funções cerebrais são realizadas. O que se tematé o momento são modelos, os quais são atualizados a cada nova descober-

ta. No entanto, a estrutura fisiológica básica destas redes de nodos naturais

é conhecida. e é exatamente nesta estrutura fisiológica que se baseiam as RNAs.

As RNAs tentam reproduzir as funções das redes biológicas. buscando im-

plementar seu comportamento básico e sua dinâmica. No entanto. do ponto

de vista físico. no momento as redes artificiais se diferem bastante das redes

biológicas. E importante. contudo. observar as similaridades entre estes dois

tipos de sistemas. tanto para que se possa entender melhor o sistema nervoso

quanto para buscar idéias e inspirações para a pesquisa em neurocomputação.

Como características comuns, pode-se citar que os dois sistemas são basea-

dos em unidades de computação paralela e distribuída que se comunicam por

meio de conexões sinápticas. possuem detetores de características. redundância

e modularização das conexões. Apesar da pouca similaridade. do ponto de

vista biológico , entre os dois sistemas . estas características comuns permitem

às RNAs reproduzir com fidelidade várias funções somente encontradas nos

seres humanos. Acredita-se, portanto. que o futuro da neurocomputação pos-

sa se beneficiar ainda mais do desenvolvimento de modelos que tenham apelo

biológico. Estruturas encontradas nos sistemas biológicos podem inspirar o

desenvolvimento de novas arquiteturas para modelos de RNAs. Similarmente.

espera-se que a Biologia e as Ciências Cognitivas possam se beneficiar do de-

senvolvimento dos modelos da neurocomput ação.

1.3. 1 ! Neurônios biológicos

Os neurônios são divididos em três seções : o corpo da célula, os dendritos e

o axônio , cada um com funções específicas porém complementares . O corpo

do neurônio mede apenas alguns milésimos de milímetros , e os dendritos apre-

sentam poucos milímetros de comprimento . O axônio , contudo, pode ser mais

longo e , em geral , tem calibre uniforme. Os dendritos têm por função receber

Page 12: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

EspaçoSináptico

Figura 1.1: Componentes do neurônio biológico.

as informações , ou impulsos nervosos , oriundas de outros neurônios e conduzi-

las até o corpo celular . Aqui, a informação é processada, e novos impulsos sãogerados. Estes impulsos são transmitidos a outros neurônios , passando através

do axônio até os dendritos dos neurônios seguintes . O ponto de contato entre

a terminação axônica de um neurônio e o dendrito de outro é chamado de

sinopse. É pelas sinapses que os nodos se unem funcionalmente , formando re-

des neurais. As sinapses funcionam como válvulas , e são capazes de controlar a

transmissão de impulsos - isto é , o fluxo da informação - entre os nodos na rede

neural . O efeito das sinapses é variável , e é esta variação que dá ao neurônio

capacidade de adaptação . A Figura 1.1 ilustra , de forma simplificada, os

componentes do neurônio . Os sinais oriundos dos neurônios pré-sinópticos são

passados para o corpo do neurônio pós-sináptico , onde são comparados com os

outros sinais recebidos pelo mesmo . Se o percentual em um intervalo curto de

tempo é suficientemente alto, a célula "dispara", produzindo um impulso que

é transmitido para as células seguintes ( nodos pós -sinópticos). Este sistema

simples é responsável pela maioria das funções realizadas pelo nosso cérebro.A capacidade de realizar funções complexas surge com a operação em paralelode todos os 1011 nodos do nosso cérebro.

X1.3.2' A comunicação no cérebro

A comunicação no cérebro pode ser de dois tipos: sinais químicos através das

sinapses e sinais elétricos dentro do neurônio. A ação da membrana dos nodos

é que cria a habilidade de produzir e transmitir esses dois tipos de sinais. Esta

membrana .contém proteínas com funções específicas de, por exemplo, moveríons, apressar reações químicas etc. A membrana que envolve o exterior do cor-

po do neurônio tem a capacidade de gerar impulsos nervosos (elétricos), umafunção vital do sistema nervoso e central à sua capacidade computacional. O

corpo, por sua vez, combina os sinais recebidos, e, se o valor resultante foracima do limiar de excitação do neurônio, um impulso elétrico é produzido epropagado através do axônio para os neurônios seguintes.

Há uma diferença de potencial (em volts) entre o interior e o exterior doneurônio, ocasionada pela diferença entre a concentração de potássio (internaà célula) e de sódio (externa à célula). A concentração de íons de potássiodentro da célula cria um potencial elétrico de -70 mv (potencial de repouso)em relação ao exterior. Para que a célula dispare, produzindo um potencial deação (impulso nervoso), é preciso que os impulsos das sinapses reduzam estenível para cerca de -50 mv. Nesse momento, o fluxo de sódio e de potássioé invertido, e o interior da célula torna-se, subitamente, positivo em relaçãoao exterior. Esta inversão de polaridade faz com que o impulso nervoso sepropague pelo axônio até suas conexões sinápticas (Figura 1.2). Quando oimpulso chega ao terminal de um axônio, os canais controlados por tensãose abrem. Isto libera as moléculas neurotransmissoras para dentro da clavesináptica (região entre a membrana pré-sináptica e a membrana pós-sináptica),e o processo continua no neurônio seguinte. O tipo de neurotransmissor (há

em torno de 100 tipos diferentes de neurotransmissores) liberado determinaráa polarização ou a despolarização do corpo do neurônio seguinte. De acordocom o tipo de neurotransmissor liberado, a sinapse poderá ser inibitória ouexcitatória. A contribuição de todos os nodos pré-sinápticos na polarizaçãodo neurônio pós-sináptico determinará se este irá ou não gerar um impulso

nervoso. Portanto, o percentual de disparo de um neurônio é determinado pelo

acúmulo de um número grande de entradas inibitórias e excitatórias, medidopelo corpo da célula em um pequeno intervalo de tempo. Depois de gerar umimpulso, o neurônio entra em um período de refração (período em que o axônionão pode ser novamente estimulado), durante o qual retorna ao seu potencialde repouso enquanto se prepara para a geração de um novo impulso.

/'-' V

1.4 Neurônios artificiais: modelo MCP

0 modelo de neurônio proposto por McCulloch e Pitts [MP43] é uma simpli-ficação do que se sabia então a respeito do neurônio biológico. Sua descrição

6 7

Page 13: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

+40m V

Tempo

-50m V

-70mVDisparo Período de descanso

Figura 1.2: Potencial de ação em um neurônio.

matemática resultou em uni modelo com n terminais de entrada xl, x2...., x„

(que representam os dendritos) e apenas uni terminal de saída y (represen-tando o axônio). Para emular o comportamento das sinapses, os terminais de

entrada do neurônio têm pesos acoplados w1, w2, . , w;, cujos valores podem

ser positivos ou negativos, dependendo de as sinapses correspondentes sereminibitórias ou excitatórias. O efeito de unia sinapse particular i no neurônio

pós-sináptico é dado por xiwi. Os pesos determinam "em que grau" o neurônio

deve considerar sinais de disparo que ocorrem naquela conexão. Uma descriçãodo modelo está ilustrada na Figura 1.3.

Um neurônio biológico dispara quando a soma dos impulsos que ele recebe

ultrapassa o seu limiar de excitação (threshold). O corpo do neurônio, por

sua vez, é emulado por um mecanismo simples que faz a soma dos valores

x; wi recebidos pelo neurônio (soma ponderada) e decide se ô neurônio deve

ou não disparar (saída igual a 1 ou a 0) comparando a soma obtida ao limiar

ou threshold do neurônio. No modelo 1\ICP, a ativação do neurônio é obtidaatravés da aplicação de uma "função de ativação", que ativa ou não a saída,

dependendo do valor da soma ponderada das suas entradas. Na descriçãooriginal do modelo 1\ICP, a função de ativação é dada pela função de limiardescrita na Equação 1.1. O nodo IVICP terá então sua saída ativa quando:

xíwi ? o (1.1)

2=1

Figura 1.3: Neurônio de McCulloch e Pitts.

onde n é o número de entradas do neurônio. w; é o peso associado à entrada

x; e 0 é o limiar (threshold) do neurônio.

1MIcCulloch e Pitts simplificaram seu modelo considerando que os rodos

em cada camada da rede disparam sincronamente, isto é, que todos os no-dos são avaliados ao mesmo tempo. Em sistemas biológicos, sabe-se que nãoexiste um mecanismo para sincronizar as ações dos nodos. nem liá restrição

para que as suas saídas sejam ativadas em tempos discretos como no mode-lo --,\ICP. Sabe-se também que o valor da próxima saída dos nodos biológicosdepende enormemente das ativações dos estados anteriores, já que até mesmo

os neurotransmissores liberados anteriormente levam algum tempo para se re-combinarem, influenciando assim as ativações seguintes.

Finalmente, pode-se levantar algumas limitações na descrição do modelo

I\ICP original:

1. redes MCP com apenas uma camada só conseguem implementar funções

linearmente separáveis;

2. pesos negativos são mais adequados para representar disparos inibidores;

3. o modelo foi proposto com pesos fixos, não-ajustáveis.

9

Page 14: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

+ry iffx>+ryy = x iff lxl < +ry

-ry iffx < -ry

A função passo, ilustrada na Figura 1.4c, é similar a uma função sinal nosentido de que a função produz a saída +y para os valores de x maiores que

zero , caso contrário a função produz o valor -ry. A função degrau é definida

pela Equação 1.4:

X

(c)

Figura 1.4: Algumas funções de ativação.

Funções de ativação

X

A partir do modelo proposto por McCulloch e Pitts, foram derivados váriosoutros modelos que permitem a produção de uma saída qualquer, não neces-

sariamente zero ou um, e com diferentes funções de ativação. A Figura 1.4ilustra graficamente quatro funções de ativação diferentes: a função linear, afunção rampa, a função degrau (step) e a função sigmoidal.

A função de ativação linear mostrada na Figura 1.4a é definida pela Equa-ção 1.2.

y=ax

onde a é um número real que define a saída linear para os valores de entrada,y é a saída e x é a entrada.

A função linear pode ser restringida para produzir valores constantes emuma faixa [-ry, +-y], e neste caso a função passa a ser a função rampa comomostra graficamente a Figura 1.4b e a Equação 1.3.

Os'valores máximo e mínimo da saída são +y e -y, respectivamente.

1

+y iffx>0y l -ry iffx<0

A função sigmoidal, conhecida também como S-shape, ilustrada na Figu-ra 1.4d, é uma função semilinear, limitada e monotônica. É possível definirvárias funções sigmoidais. As funções sigmoidais são encontradas na construçãode diversos modelos nas mais variadas áreas. Umas das funções sigmoidais maisimportantes é a função logística definida pela Equação 1.5:

1

y 1 + -x/T

onde o parâmetro T determina a suavidade da curva.

1.6 Principais arquiteturas de RNAs

A definição da arquitetura de uma R\A é um parâmetro importante na suaconcepção, uma vez que ela restringe o tipo de problema que pode ser trata-do pela rede. Redes com uma camada única de nodos MCP, por exemplo,só conseguem resolver problemas linearmente separáveis. Redes recorrentes,por sua vez. são mais apropriadas para resolver problemas que envolvem pro-cessamento temporal. Fazem parte da definição da arquitetura os seguintesparâmetros: número de camadas da rede, número de nodos em cada cama-da, tipo de conexão entre os nodos e topologia da rede. Alguns exemplos de

arquiteturas de RNAs são apresentados na Figura 1.5.

10 11

Page 15: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

(2) feedback, ou cíclica -+ a saída de algum neurônio na i-ésima camada darede é usada como entrada de nodos em camadas de índice menor ou

igual a i (Figura 1.5 d, e).

(a)

(c)

XX3Lx4

(e)

(d)

Figura 1.5: Exemplos de arquiteturas de RNAs.

Quanto ao número de camadas, pode-se ter: i

(1) redes de camada única --> só existe um nó entre qualquer entrada e qual-quer saída da rede (Figura 1.5 a, e);

(2) redes de múltiplas camadas --* existe mais de um neurônio entre algumaentrada e alguma saída da rede (Figura 1.5 b, c, d).

Os nodos podem ter conexões do tipo: 7 e fio 24- C_._X X2,

(1) feedforward, ou acíclica - a saída de um neurônio na i-ésima camada darede não pode ser usada como entrada de nodos em camadas de índicemenor ou igual a i (Figura 1.5 a, b, c);

Redes cuja saída final (única) é ligada às entradas comportam-se como

autômatos reconhecedores de cadeias, onde a saída que é realimentada

fornece o estado do autômato (Figura 1.5 d).

Se todas as ligações são cíclicas, a rede é denominada auto-associativa.

Estas redes associam um padrão de entrada com ele mesmo. e são par-

ticularmente úteis para recuperação ou "regeneração' de um padrão de

entrada (Figura 1.5 e).

Finalmente, as RNAs podem também ser classificadas quanto à sua conec-

tividade:

(1) rede fracamente (ou parcialmente) conectada (Figura 1.5 b. e, d):

(3) rede completamente conectada (Figura 1.5 a. e).

1.7 Estrutura do livro

O segundo capítulo será dedicado ao estudo dos métodos de aprendizado. que

é a característica mais importante das RNAs. Diversos métodos para treina-mento de redes têm sido desenvolvidos, os quais podem ser agrupados em qua-tro paradigmas: aprendizado supervisionado, aprendizado não-supervisionado.

aprendizado por reforço e aprendizado por competição. O segundo capítulo

descreve com detalhes estes quatro paradigmas.

Os tópicos cobertos no terceiro capítulo, iniciando com uma introdução às

threshold gates, visam a enfatizar os aspectos computacionais das RNAs im-

plementadas com nodos lógicos, ou Redes Neurais Sem Peso, que, devido à suaimportância, serão tratadas mais adiante em um capítulo à parte. Após a in-

trodução das threshold gates e de suas capacidades computacionais, perceptronde uma única camada [Ros58] e as redes lineares do tipo Adaline e 11\Iadaline

[WH60] serão então descritos do ponto de vista de suas funcionalidades, apli-

cações e algoritmos de treinamento.

. O quarto capítulo tem por objetivo descrever o funcionamento das RNAsdo tipo perceptron inulticamadas. Redes perceptron multicamadas, do origi-

nal Multilayer Perceptron (MLP), são RNAs que apresentam pelo menos unia

12 13

Page 16: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

camada intermediária ou escondida. Inicialmente será apresentada uma intro-dução às características básicas das redes MLP, mostrando sua motivação e

capacidade computacional. Posteriormente, será apresentado o principal ál-goritmo para treinar tais redes, o algoritmo Backpropagation [RHW86] e suasvariações.

No quinto capítulo, serão abordados os principais modelos de memóriasmatriciais conhecidos na literatura: modelo não-linear de Willshaw [WBLH69],modelo linear de Kohonen e Anderson [Koh74, And68, And70], OLAM [Koh89]e finalmente o modelo recorrente de Hopfield [Hop82, Hop841.

O sexto capítulo será dedicado a uma classe de hNAs que possuem a ca-pacidade de auto-organização, sendo por isso chamadas self-organizing. Apósapresentar as principais características destas redes, duas representantes destaclasse, redes de Kohonen e redes ART, serão analisadas em detalhes.

No sétimo capítulo será descrita uma classe de RNAs conhecida como Re-des Neurais Sem Pesos, RNSPs. Será dado um breve histórico das origensdeste modelo seguido, das definições dos modelos RAM, Discriminadores, PLN,MPLN, GSN, GRAM, GNU, pRAM, SDM, ALN, ADAM. O capítulo tambéminclui um estudo comparativo entre RNAs convencionais e RNSPs, conclusãoe exercícios.

No oitavo capítulo será abordado um dos temas de pesquisa mais promis-sores de RNAs, que é o desenvolvimento de Sistemas Neurais Híbridos [GK95,SB95]. Após caracterizar o que vêm a ser e quais as características de Sis-temas Neurais Híbridos, serão brevemente discutidas as diferentes abordagensutilizadas para o desenvolvimento de tais sistemas.

No nono capítulo serão discutidos redes RBF, redes construtivas e proces-samento temporal.

Até o momento foram descritos os aspectos fundamentais das RNAs queformarão a base para o entendimento das aplicações práticas a serem abor-dadas no décimo capítulo. Embora algumas aplicações práticas tenham sidoutilizadas em capítulos anteriores, para facilitar o entendimento dos princípios

básicos de operação das RNAs, no décimo capítulo estas aplicações serão des-critas de uma forma mais detalhada, com maior ênfase na aplicação propria-mente dita do que nos aspectos operacionais das RNAs. Para tal, procurou-se

selecionar exemplos de aplicação representativos de diversas áreas, preparan-

do o leitor para desenvolver suas próprias aplicações. As aplicações escolhidasforam sobre identificação, controle, predição e otimização.

Capítulo 2

Aprendizado

2.1) Introdução

Redes Neurais Artificiais possuem a capacidade de aprender por exemplose fazer interpolações e extrapolações do que aprenderam. No aprendizadoconexionista, não se procura obter regras como na abordagem simbólica daInteligência Artificial (IA), mas sim determinar a intensidade de conexões en-tre neurônios. Um conjunto de procedimentos bem-definidos para adaptar osparâmetros de uma RNA para que a mesma possa aprender uma determinadafunção é chamado de algoritmo de aprendizado. Como era de se esperar, nãohá um único algoritmo de aprendizado. O que temos é um conjunto de ferra-mentas representadas por diversos algoritmos, cada qual com suas vantagens edesvantagens. Estes algoritmos basicamente diferem pela maneira pela qual oajuste dos pesos é feito.

A utilização de uma RNA na solução de uma tarefa passa inicialmentepor uma fase de aprendizagem, quando a rede extrai informações relevantesde padrões de informação apresentados para ela, criando assim uma represen-tação própria para o problema. A etapa de aprendizagem consiste em umprocesso iterativo de ajuste de parâmetros da rede, os pesos das conexõesentre as unidades de processamento, que guardam, ao final do processo, oconhecimento que a rede adquiriu do ambiente em que está operando. Uma

definição geral do que vem a ser aprendizagem pode ser expressa da seguinteforma [MM70]:

Aprendizagem é o processo pelo qual os parâmetros de uma rede

neural são ajustados através de uma forma continuada de estímulopelo ambiente no qual a rede está operando, sendo o tipo específico

14 [ 15

Page 17: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

de aprendizagem realizada definido pela maneira particular comoocorrem os ajustes realizados nos parâmetros.

ProfessorSaída

Diversos métodos para treinamento de redes foram desenvolvidos, podendoser agrupados em dois paradigmas principais: aprendizado supervisionado eaprendizado não-supervisionado. Outros dois paradigmas bastante conhecidos

são os de aprendizado por reforço (que é uni caso particular de aprendizado

supervisionado) e aprendizado por competição (que é um caso particular de

aprendizado não-supervisionado). Nas próxima seções, estes paradigmas serãoestudados, juntamente com vários mecanismos de aprendizado encontrados na

literatura: correção de erros. aprendizado hebbiano, modelo de Linsker, regrade Oja. regra de Yuille e modelo de Kohonen.

2.2 Aprendizado supervisionado

Este método de aprendizado é o mais comum no treinamento das RNAs, tantode neurônios com pesos como de neurônios sem pesos. É chamado de aprendiza-do supervisionado porque a entrada e saída desejadas para a rede são forneci-das por uni supervisor (professor) externo. O objetivo é ajustar os parâmetros

da rede, de forma a encontrar unia ligação entre os pares de entrada e saídafornecidos. A Figura 2.1 ilustra o mecanismo de aprendizado supervisiona-do. O professor indica explicitamente um comportamento bom ou ruim para

a rede. visando a direcionar o processo de treinamento. A rede tem sua saídacorrente (calculada) comparada com a saída desejada, recebendo informaçõesdo supervisor sobre o erro da resposta atual. A cada padrão de entrada sub-

metido à rede compara-se a resposta desejada (que representa uma ação ótima

para ser realizada pela rede) com a resposta calculada, ajustando-se os pesosdas conexões para minimizar o erro. A minimização da diferença é incremen-tal, já que pequenos ajustes são feitos nos pesos a cada etapa de treinamento,

de tal forma que estes caminhem - se houver solução possível - para umasolução. A soma dos erros quadráticos de todas as saídas é normalmente uti-

lizada como medida de desempenho da rede e também como função de custoa ser minimizada pelo algoritmo de treinamento.

A desvantagem do aprendizado supervisionado é que, na ausência do pro-fessor. a rede não conseguirá aprender novas estratégias para situações não-cobertas pelos exemplos do treinamento da rede. Os exemplos mais conhecidosde algoritmos para aprendizado supervisionado são a regra delta [WH60] e asua generalização para redes de múltiplas camadas, o algoritmo backpropaga-tion [RHW86].

EntradaRNA

Erro

Figura 2.1: Aprendizado supervisionado.

O aprendizado supervisionado pode ser implementado basicamente de duas

formas: off-line e on-line. Para treinamento off-line, os dados do conjunto de

treinamento não mudam, e. uma vez obtida uma solução para a rede. estadeve permanecer fixa. Caso novos dados sejam adicionados ao conjunto de

treinamento, um novo treinamento. envolvendo também os dados anteriores,deve ser realizado para se evitar interferência no treinamento anterior. Por

sua vez, no aprendizado on-line, o conjunto de dados muda continuamente, e

a rede deve estar em contínuo processo de adaptação.

Nas seções seguintes, serão apresentadas noções gerais sobre métodos de

correção de erros. No próximo capítulo será apresentado o primeiro modelo de

RNAs que utilizou aprendizado supervisionado, o perceptron [Ros58].

^2.2.1^ Correção de erros

A adaptação por correção de erros procura minimizar a diferença entre a soma

ponderada das entradas pelo pesos (saída calculada pela rede) e a saída dese-

jada, ou seja, o erro da resposta atual da rede. O termo e(t) do erro deve ser

escrito como: e(t) = d(t) - y(t), onde d(t) é a saída desejada e y(t) é a resposta

atual (calculada) no instante de tempo t. A forma genérica para alteração dos

pesos por correção de erros é apresentada na Equação 2.1:

wi(t + 1) = wi(t) +1)e(t)xi(t)

1716

Page 18: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

onde 17 é a taxa de aprendizado e xi (t) é a entrada para o neurônio i no tempot:

Segundo a Equação 2.1, o ajuste dos pesos deve ser proporcional ao produto

do erro pelo valor de entrada da sinapse naquele instante de tempo. . Estaexpressão aparece tanto no algoritmo de treinamento do perceptron [Ros58]quanto no algoritmo para treinamento do ADALINE [WH60] e posterior gene-

ralização para o algoritmo back-propagation [RHW86]. Para estes modelos, as

equações de ajustes serão deduzidas nos capítulos seguintes, onde será mostradotambém serem elas equivalentes à Equação 2.1. A dedução destas equaçõesenvolve a minimização da soma dos erros quadráticos das saídas, conformeapresentado na Equação 2.2:

k

F(w) = 1/2> (di - yi(w))2i=o

onde k é o número de nodos de saída da rede, di é a saída desejada para o nodoi, e yt, a saída corrente da rede.

Com relação à superfície de erro obtida através da Equação 2.2, depen-dendo do tipo de unidade de processamento utilizada para construir a rede,

podem-se identificar duas situações diferentes:

• A rede ser formada inteiramente por unidades de processamento lineares;

nesse. caso, a superfície do erro é dada exatamente pela função quadráticados pesos da rede, o que quer dizer que esta possui um único mínimo.

• A rede ser formada por unidades de processamento não-lineares. Nestecaso, a superfície do erro poderá ter, além do mínimo global, um ou maismínimos locais.

Em ambas as situações, o objetivo deste método de aprendizado é partir deum ponto arbitrário da superfície movendo-se até o mínimo global. Na primeirasituação só existe um único mínimo global, já que se trata de uma superfíciede erro quadrática, facilmente atingido a partir de qualquer ponto inicial sobrea superfície.' Na segunda situação, nem sempre o mínimo global é alcançado,

já que saídas não-lineares geram superfícies de erro irregulares, podendo levara rede a se estabilizar em um mínimo local indesejado. Apesar disso, existemtécnicas de treinamento que levam a rede a se aproximar do mínimo global,como será visto nos capítulos seguintes.

'Na verdade, a forma da superfície pode se alterar, dependendo da correlação linear entreos dados de entrada, mas isto será objeto de estudo dos capítulos seguintes.

Meio externo

Estado domeio externo 1

RNAResposta

Figura 2.2: Aprendizado não-supervisionado.

2.3) Aprendizado não-supervisionado

No aprendizado não-supervisionado, como o próprio nome sugere, não há umprofessor ou supervisor para acompanhar o processo de aprendizado. Estemétodo está ilustrado na Figura 2.2. Apesar da semelhança entre o apren-dizado supervisionado e o aprendizado dos seres humanos, muitos dos sis-temas biológicos ocorrem através de aprendizado não-supervisionado, como porexemplo os estágios iniciais dos sistemas de visão e audição. Para estes algorit-mos, somente os padrões de entrada estão disponíveis para a rede, ao contráriodo aprendizado supervisionado , cujo conjunto de treinamento possui pares deentrada e saída . A partir do momento em que a rede estabelece uma har-monia com as regularidades estatísticas da entrada de dados, desenvolve-senela uma habilidade de formar representações internas para codificar carac-terísticas da entrada e criar novas classes ou grupos automaticamente. Estetipo de aprendizado só se torna possível quando existe redundância nos dadosde entrada . Sem redundância seria impossível encontrar quaisquer padrões oucaracterísticas dos dados de entrada.

A estrutura do sistema de aprendizado não-supervisionado pode adquiriruma variedade de formas diferentes. Ela pode, por exemplo, consistir em umacamada de entrada, uma camada de saída, conexões feedforward da entradapara a saída e conexões laterais entre os neurônios da camada de saída. Umoutro exemplo é uma rede feedforward com múltiplas camadas, em que a livreorganização procede na base de camada por camada. Nestes dois exemplos, o

processo de aprendizado consiste em modificar repetidamente o peso sinápticode todas as conexões do sistema em resposta às entradas. Nas seções seguintes,serão apresentados alguns métodos para implementação de aprendizado não-supervisionado.

18 í 19

Page 19: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

2.3.1 Aprendizado liebbiano

Os resultados obtidos por Hebb [Heb49] motivaram os primeiros métodos deaprendizado em RNAs. Confio originalmente postulado. a regra de aprendizado

de Hebb propõe que o peso de uma conexão sináptica deve ser ajustado se hou-ver sincronismo entre os "níveis de atividade" das entradas e saídas. Se dois

neurônios, em lados distintos da sinapse, são ativados sincronamente, teremos

um fortalecimento desta sinapse. Entretanto, se os neurônios forem ativadosassincronamente, a sinapse será enfraquecida ou mesmo eliminada. Em outras

palavras, se o neurónio pré-sináptico tiver grande influência na ativação doneurônio pós-sináptico, a conexão entre eles deve ser reforçada.

A sinapse hebbiana possui quatro características principais:

• Mecanismo in'eratit'o: dentro do aprendizado hebbiano. não se podeanalisar atividades pré-sinápticas de forma isolada; qualquer modificação

na sinapse hebbiana depende (estatística ou deterministicamente) da in-teração entre os dois tipos de atividade (pré e pós-sinápticos).

• Meca.nism.o local: unia sinapse hebbiana é urna transmissão com sinaiscontínuos que produz modificações sinápticas locais que são entradas es-pecíficas. É a partir do mecanismo local que sinapses hebbianas efetuamo aprendizado não-supervisionado.

• Mecanismo dependente do tempo: as modificações em uma sinapse heb-biana dependem do momento exato de ocorrência das atividades pré epós-sinápticas.

• Mecanismo correlacional ou conjuncional: a sinapse hebbiana pode serchamada de sinapse conjuncional pelo fato de a ocorrência conjunta de

atividades pré e pós-sinápticas ser suficiente para que haja uma modifi-

cação. Além disso, pode também ser chamada de sinapse correlacionalporque unia correlação entre estas mesmas atividades também é suficientepara gerar mudanças.

Pode-se expressar o postulado de Hebb em termos matemáticos a partir daseguinte equação, que consiste em uma regra para a mudança do peso sináptico

wij (regra do produto de atividade):

w( t) = ihyi (t)xj(t) (2.3)

onde rl é uma constante positiva que determina a taxa de aprendizado.

Entrada Camada A Camada B Camada C

Figura 2.3: Modelo de Linsker.

Apesar de os vetores de entrada e saída serem fornecidos (como no apren-

dizado supervisionado), a regra de Hebb é classificada como aprendizado não-supervisionado, já que não existe supervisor externo para verificar a qualidadeda resposta da rede para prover um ajuste de pesos. Neste caso, o treinamento

da rede é feito independentemente da resposta atual da rede, através de um

mecanismo local à sinapse.

2.3.2 Modelo de Linsker

0 modelo de Linsker foi proposto com o objetivo de modelar os primeiros

estágios do sistema visual dos mamíferos [Lin88]. Utilizando uma abordagemde aprendizado baseada na regra de Hebb [Heb49], estas redes têm mostradocomportamento semelhante ao obtido pelo sistema visual humano. Assim como

os nodos dos primeiros estágios do sistema visual, o modelo de Linsker, uniavez treinado, apresenta nodos especializados para, entre outras características,

segmentos de retas em determinadas orientações.

Como pode ser visto na Figura 2.3, a arquitetura da rede de Linsker ésemelhante à estrutura do sistema visual dos mamíferos. Os nodos são organi-zados em camadas bidimensionais , CA, CB, Co,..., até uma camada de saída

CY.

A função de ativação utilizada é representada pela Equação 2.4:

20 21

Page 20: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

yj(t) - a1 + x i( t ) wji(t )i=1

onde yj(t) é a saída do nodo j, a1 é uma constante, wji é o peso da conexão

entre o nodo j e sua entrada xi e n é o número de entradas ou nodos conectados

à entrada do nodo j.

O treinamento da rede de Linsker é realizado camada por camada. Uti-lizando como entrada padrões gerados aleatoriamente, cada camada atualiza

os pesos de seu nodos utilizando uma regra hebbiana. Primeiro, os pesos dosnodos da camada A ajustam seus valores. Em seguida, o mesmo processo é

repetido para os nodos da camada B, e assim por diante.

Neste modelo, os pesos iniciais são escolhidos aleatoriamente. O ajuste dospesos de cada nodo n j para cada padrão de entrada é definido pelos valoresdas entradas e pela saída produzida. A Equação 2.5 ilustra o cálculo do ajuste

dos pesos:

Owji(t) = a2xi (t)yj(t) + a3xi (t) + a4yj(t) +a; (2.5)

onde os termos ai são constantes (a2 > 0). Admitindo que os pesos mu-dam lentamente de uma apresentação para outra, pode-se tirar uma média daEquação 2.5 após várias apresentações e utilizar a Equação 2.4 para obter ataxa de mudança de cada peso da rede, w, fornecida. após várias transfor-mações algébricas, pela Equação 2.6.

.v Nwij = Qikwkj + [k1 + (k2 /N) E wkj]

k=1 k=1

onde k1 e k2 são constantes geradas pela combinação das constantes ai da

Equação 2 . 5, Qik é a covariância das entradas i e k, que é definida pela Equação

2.7:

Qik =< (xi(t) - x)(xk(t) - x > (2.7)

onde < ... > e a barra denotam a média.

Para evitar que os pesos assumam um valor muito elevado. é imposta uma

constante de saturação. Esta constante define, para cada peso. um par de va-lores máximos: um negativo, w_, e outro positivo, wT.

2.3.3 Regra de Oja

Como citado anteriormente, existe a necessidade de limitar o aumento no pe-

so do vetor w (aprendizado segundo Hebb) para evitar sua saturação. Umapossível solução é a renormalização (wí = awi) de todos os pesos após cadaatualização, garantindo, através da escolha de a, que IIw'II = 1. Entretanto,

existe uma melhor solução (baseado em modificações da regra de Hebb), pro-posta por Oja [Oja82], em que é possível obter os mesmos resultados sem anecessidade de normalização. A regra de Oja possui a forma apresentada naEquação 2.8:

Owi = 77y(xi - ywi) (2.8)

onde y controla a taxa de aprendizagem, xi corresponde à entrada associadaao peso wi e y representa a saída do nodo.

Esta regra é bem semelhante à de aproximação estocástica, e na realidadepode ser vista como um caso particular da mesma. Este algoritmo de apren-dizado garante a convergência da rede. Oja apenas modificou a regra de Hebbcom o objetivo de limitar os pesos, e Linsker restringiu os pesos wi para ointervalo w- < wi > w+.

2.3.4 Regra de Yuille

Yuille, Kammen e Cohen [YKC89] propuseram a regra

Owi = y(yxi - IIwll2wi)

que faz w convergir para a mesma direção do autovetor máximo Àmar da regrade Oja, mas modificando Iiwil para assumir o valor amor [HKP91]. Estemétodo tem a vantagem de ter uma função de custo associada e a desvan-

tagem de ser uma regra não-local, ou seja, para se atualizar wi precisa-se deinformação sobre outros w j's.

2.3.5 Aprendizado por competição

Aprendizado por competição é um caso particular de aprendizado não-supervi-sionado [Fuk75, Kòh82, Gro76b]. A idéia neste caso é, dado um padrão deentrada, fazer com que as unidades de saída disputem entre si para seremativadas. Existe, portanto, uma competição entre as unidades de saída para

decidir qual delas será a vencedora e, conseqüentemente, terá sua saída ativada

22 1 23

Page 21: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

e seus pesos atualizados no treinamento. As unidades de entrada são direta-mente conectadas às unidades de saída, e estas últimas também podem estarligadas entre si via conexões laterais inibitórias, ou negativas. A unidade de

saída com maior ativação inicial terá maior chance de vencer a disputa dasoutras unidades, que perderão o poder de inibição ao longo do tempo sobre

a unidade de maior ativação. A unidade mais forte fica ainda mais forte. e

seu efeito inibidor sobre as outras unidades de saída torna-se dominante. Com

o tempo. todas as outras unidades de saída ficarão completamente inativas.exceto a vencedora. Este tipo de inibição mútua também é conhecido comowinner takes ali.

Uni algoritmo simples de aprendizado competitivo é:

1. Apresentar um vetor de entrada.

2. Calcular a ativação inicial de cada unidade de saída.

3. Deixar as unidades de saída competirem até que apenas unia fique ativa.

4. Aumentar os pesos sobre as conexões entre a unidade de saída ativa e

as unidades de entrada ativas. Com isso, a unidade de saída terá maiorprobabilidade de ficar ativa na próxima repetição do padrão.

Um problema neste algoritmo é que uma unidade de saída pode se tornardominante e ficar ativa todo o tempo, podendo captar para si todo o espaço deentradas. A solução para tal problema é racionar os pesos, de forma tal que a

soma dos pesos sobre as linhas de entrada de uma unidade seja limitada a 1.Para aumentar o peso de uma conexão, é preciso diminuir o peso de algumaoutra, conforme descrito na Equação 2.10:

âwj = rixa/M - rlwJ (2.10)

para todo j = 1, 2, ..., n, onde wj é o peso da conexão da unidade de entradaj com a unidade ativa, xj é o valor do j-ésimo bit de entrada. M é o númerode unidades de entrada ativas no vetor de entrada e rl é a taxa de aprendizagem.

Este algoritmo funciona bem em muitos casos, porém, às vezes, uma unidadede saída ganha sempre. Uma solução para este problema é a leaky learning[Gro87], que foi desenvolvida por Grossberg. O aprendizado por competição

é a base do modelos ART de Grossberg [Gro87] e dos mapas de Kohonen[Koh82, Koh89], que serão vistos em detalhes mais adiante.

2.4 Aprendizado por reforço

O aprendizado por reforço pode ser visto como uni caso particular de aprendiza-

do supervisionado. A principal diferença entre o aprendizado supervisionado

clássico e o aprendizado por reforço é a medida de desempenho usada em cadauni dos sistemas. No aprendizado supervisionado, a medida de desempenho ébaseada no conjunto de respostas desejadas usando um critério de erro conheci-

do, enquanto no aprendizado por reforço o desempenho é baseado em qualquer

medida que possa ser fornecida ao sistema. No aprendizado por reforço. a únicainformação de realimentação fornecida à rede é se unia determinada saída está

correta ou não. isto é, não é fornecida à rede a resposta correta para o padrão

de entrada. 0 aprendizado por reforço está ilustrado na Figura 2.4.

O aprendizado por reforço é uma forma de aprendizado on-line obtido

por um mapeamento de entrada-saída através de um processo de triagem eerro desenvolvido para maximizar o índice de desempenho escalar chamado

sinal de reforço. 0 termo aprendizagem por reforço foi usado por Minsky

[Min61] em seus estudos iniciais de IA. A idéia básica subjacente ao termo "re-

forço" tem sua origem em estudos experimentais sobre aprendizado dos animais

[Ham90]. Neste contexto, é interessante lembrar a Lei do Efeito [Tholl], que

diz que quanto maior a satisfação obtida com uma certa experiência em umanimal, maiores as chances de ele aprender. Sutton [SB\V91] reformulou o que

Thorndike disse na seguinte definição de aprendizado por reforço:

Se uma ação tomada pelo sistema de aprendizagem é seguidade estados satisfatórios, então a tendência do sistema de produzir

esta ação particular é reforçada. Se não for seguida de estadossatisfatórios, a tendência do sistema de produzir esta ação é en-

fraquecida.

O paradigma de aprendizagem por reforço pode ter:

• Aprendizagem associativa: o meio fornece outras informações além cio

reforço, e um mapeamento, na forma estímulo-ação, deve ser aprendido.

• Aprendizagem não-associativa: o sinal de reforço é a única entrada que o

sistema recebe do meio. O sistema seleciona uma única ação ótima, em

vez de associar diferentes ações com diferentes estímulos.

24 25

Page 22: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Crítico

Reforço/Penalidade

RNAAção

Figura 2.4: Aprendizado por reforço.

2.4.1 Classes de aprendizado por reforço

Como foi dito anteriormente, o aprendizado por reforço é uma forma de apren-dizado supervisionado, já que a rede tem algum feedback do ambiente. Estefeedback, que é um simples sinal de reforço (sim/não), é apenas uma avaliaçãodo desempenho da rede, e não fornece qualquer informação instrutiva de comoproceder para melhorar o desempenho. Muitas vezes, este método de apren-dizado é chamado aprendizado com crítica em vez de aprendizado com pro-fessor. Quando o sinal de reforço diz que uma saída está errada, ele não dánenhuma sugestão de qual poderia ser a resposta certa. Dependendo da na-tureza do ambiente, existem algumas classes de problemas de aprendizado porreforço:

• Classe I: No caso mais simples, o sinal de reforço é sempre o mesmo paraum dado par de entrada-saída. Com isto existe um mapeamento definidopara cada entrada-saída que a rede deve aprender, ou pelo menos um,se houver muitas saídas corretas para uma dada entrada. Os padrões deentrada são escolhidos aleatoriamente ou pelo ambiente, sem, no entanto,

nenhuma referência às saídas anteriores. Um representante para estaclasse é a Função de Avaliação, como descrito em [Hay94].

• Classe IL Uma extensão comum é para um ambiente estocástico. Aquium par de entrada-saída determina apenas a probabilidade de um reforçopositivo. No entanto, essa probabilidade é fixa para cada par de entrada-

saída, e mais uma vez a seqüência de entrada não depende do passado.

Um representante para esta classe é o Julgador Heurístico Adaptativo

[BSA83].

• Classe III: Ambos os sinais de reforço e padrões de entrada podem depen-

der arbitrariamente das saídas anteriores da rede. Representante destaclasse é o Método de Diferença-Temporal [Sut88].

2.5 Conclusão

Neste capítulo foram apresentados os principais métodos de aprendizado evários mecanismos de aprendizado encontrados na literatura. No decorrer docapítulo foram destacadas as principais diferenças entre os métodos de apren-

dizado. O capítulo seguinte descreverá threshold gates e os modelos perceptron

e ADALINE.

2.6 Exercícios

1. Descreva as vantagens e desvantagens do aprendizado supervisio-nado e do aprendizado não-supervisionado.

2. Qual a diferença entre aprendizado supervisionado e aprendizadopor reforço?

3. Qual a diferença entre aprendizado não-supervisionado e aprendiza-do competitivo?

4. O aprendizado supervisionado pode ser implementado off-line ou

on-line. Discuta as implicações físicas de cada uma destas possibi-

lidades.

5. A regra delta descrita pela Equação 2.2 e a regra de Hebb descritapela Equação 2.4 representam dois métodos diferentes de apren-dizado. Listar as características que distinguem estas regras uma

da outra.

2726

Page 23: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capítulo 3

Redes Perceptron e Adaline

3.1 Introdução

Neste capítulo serão abordados o modelo perceptron de uma única camada

[Ros58] e as redes lineares do tipo Adaline [\V'H60], tendo em vista suas ca-pacidades computacionais, aplicações e algoritmos de treinamento. Devido à

sua importância histórica, unia breve introdução às portas de limiar (threshold

gates) é apresentada nas seções iniciais.

Nas seções relativas às portas de limiar serão descritos os modelos linear

e quadrático [1Iur71]. O modelo linear. que na realidade corresponde aomodelo clássico MCP ['l\IP43], possui capacidade computacional limitada a

funções linearmente separáveis, ou funções de limiar. Para entradas booleanas(x e {0, 1}"). as funções de limiar correspondem a um pequeno subconjunto dototal de funções booleanas possíveis. Por sua vez, a porta de limiar quadrática

é capaz de resolver problemas mais complexos, já que possui uri maior número

de parâmetros livres ajustáveis.

As questões básicas relativas ao modelo perceptron [Ros62] serão abordadasinicialmente através da descrição do algoritmo de treinamento por correção de

erros descrito por Rosenblatt [Ros62]. Será também demonstrado o teoremade convergência do perceptron, que mostra que o algoritmo de treinamentosempre encontra unia solução em um número finito de iterações caso as classes

em questão sejam linearmente separáveis.

Como uma continuação natural da descrição do perceptron, será descritoo modelo Adaline proposto por Widrow e Hoff [\VH60]. Este modelo também

29

Page 24: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

utiliza o nodo MICP [MP43] como unidade básica, porém ó treinamento da redeé feito através do cálculo do gradiente do erro quadrático da saída em relação

aos pesos do nodo. O modelo Adaline também se diferencia do perceptron pelofato de que o erro de saída é calculado em relação à sua saída linear, e não emrelação à saída não-linear, como no perceptron e na maioria dos algoritmos detreinamento de RNAs.

3.2 Portas de limiar

As portas do tipo limiar (threshold gates) [Mur71] podem ser divididas em trêstipos: linear , quadrática e polinomial. A função executada por cada uma delasé basicamente a mesma: comparação da soma ponderada das entradas comum valor de limiar (threshold). Caso a soma exceda o limiar, a saída é ativa-da, permanecendo desativada em caso contrário. No entanto, estes modelosdiferem entre si pela complexidade com que seus pesos são calculados. Quantomais complexos os termos associados a cada um dos pesos, mais complexas assuperfícies que podem ser formadas no espaço n-dimensional e maior flexibili-dade possui a porta na solução do problema de mapeamento. A seguir serãodescritas as portas de limiar linear e quadrática.

3.2.1 Portas de limiar lineares

As portas de limiar lineares ( linear threshold gates) são definidas de formasemelhante ao nodo MCP, conforme mostrado na Figura 3.1 e em sua descriçãoformal na Equação 3.1.

y _{1 r- wixi > 9

0 r- wixi <O

Na forma descrita na Equação 3.1, as portas de limiar lineares estão res-tritas à solução de problemas que sejam linearmente separáveis, ou seja, a

problemas cuja solução pode ser obtida pela separação de duas regiões pormeio de uma reta (ou um hiperplano para o caso n-dimensional). A questãoda separação linear pode ser facilmente visualizada para o caso bidimensional.Considere, como exemplo ilustrativo, um nodo de duas entradas xl e x2, pesos

wl e W2, limiar 9 e saída y executando uma função qualquer. A condição de

disparo do nodo (y = 1) é então definida por X1 W1 +x2w2 = 0, que pode entãoser descrita na forma geral da equação de uma reta onde x2 = f (xl ), conformemostra a Equação 3.2. Portanto, a superfície de decisão de uma porta de limi-ar linear está restrita a uma reta, ou um hiperplano para o caso n-dimensional.A Figura 3.2 mostra a solução para o problema do E lógico através de umaporta de limiar linear.

X2 -(w2^x1+(

x2 =-x1+1,5

Figura 3.1: Porta de limiar linear.

Figura 3.2: Solução para o problema do E através de unia porta de limiarlinear. Para este caso, tem-se w1 = w2 1 e 9 = 1, 5.

Para o caso particular em que x E {O,1}", que restringe as entradas avalores binários, tem-se que y : {O, 1}" {O. 1} para w E R". Apesar de

30 1 31

Page 25: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

estarem limitadas à resolução de problemas linearmente separáveis , que corres-pondemi a unia pequena parcela do total de 22" funções booleanas possíveiscom n entradas , as portas de limiar lineares são mais poderosas do que asportas lógicas convencionais . Com unia mesma porta de limiar linear pode-se implementar qualquer uma das funções E, OU, NAO-E e NÃO-OU, entreoutras, bastando mudar os parâmetros da porta. Porém, como será discutidomais adiante . para a implementação de funções não-linearmente separáveiscomo OU-EXCLUSIVO serão necessárias pelo menos duas camadas de portasde limiar lineares.

3.2.2 Portas de limiar quadráticas

Para valores grandes de n. a relação entre o número de funções linearmenteseparáveis e o número total de funções booleanas tende a zero , restringindoassim a utilização das portas lineares [Has95 ]. Para aumentar a capacidadecomputacional das mesmas , a porta de limiar quadrática é então definida con-forme mostrado na Figura 3.3 e em sua descrição formal na Equação 3.3:

1 E w;x; + I w;ix;xj > By = - (3.3)

0 r- uw; x; + w,jx; xj < 0

entrada (parâmetros livres) definem a importância de cada uni destes termos

na definição da superfície de decisão. A capacidade de a porta quadrática

definir regiões de decisão mais complexas pode ser mais facilmente visualizada

por um exemplo. De maneira análoga ao exemplo apresentado para a porta

linear, considere uma porta quadrática com duas variáveis de entrada xl e

x2 para a qual a condição de disparo do nodo (y = 1) é então definida por

x2W11 +X 2 W22 + XIx22L'12 + 12x1W21 + xiw.C'1 + x2w2 = O. Durante o processo

de aprendizado, a porta de limiar adapta os valores dos pesos de forma a

definir a superfície de decisão apropriada para o problema. A solução para

a superfície de decisão acima pode ser obtida atribuindo-se valores para unia

das duas variáveis, xi por exemplo, e resolvendo-se a equação de segundo grau

resultante para a outra variável. Em outras palavras, para valores fixos de

.r1, a equação de decisão se transforma em unia equação de segundo grau com

duas soluções possíveis para a variável r.2. Considerando-se que x E R" e os

parâmetroswi =1,w2=1.w11 =5.w22=5,W12=w21 =1eO=1.a

solução encontrada para a superfície de decisão correspondente é mostrada na

Figura 3.4.

Classe 1

y=1

Classe 0

y=0

-0S 0 OSX^

nIX,

Figura 3.4: Região de decisão para duas classes CI e C2 para uma porta

quadrática com duas entradas em que wl = 1, w2 = 1, w11 = 5, W22 = 5,

W12=W21=1e0=1.

Figura 3.3: Porta de limiar quadrática.

O termo adicional na Equação 3.3 confere à porta de limiar quadráticaum maior poder computacional, já que a mesma possui um número maior deparâmetros livres ajustáveis. Como pode ser visto na Equação 3.3, a portaquadrática possui termos quadráticos em cada uma das variáveis de entrada,além de termos com produtos cruzados entre cada uma delas. Os pesos de

A superfície de resposta para o nodo com os parâmetros apresentados na

Figura 3.4 é apresentada na Figura 3.5 para valores de xi e x2 variando entre

-1 e +1. Como pode ser observado pelas respostas do nodo. há duas regiões

de resposta, ou duas classes, claramente definidas, sendo que para unia delas

o nodo responde com y = 0 (região dentro da elipse) e para a outra com y

(região externa à elipse).

32 33

Page 26: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

3.3 Perceptron

Figura 3.5: Resposta da porta quadrática de duas entradas com os parâmetros

W1 = 1, u'2 = 1, W11 = 5, W22 = 5, W12 = W21 = 1 e 9

Como mostrado nos exemplos anteriores, a adição de um número maiorde parâmetros livres confere maior flexibilidade às soluções possíveis obtidasatravés de uma porta de limiar. Portas que possuem termos mais comple-xos para os pesos do que as portas quadráticas são conhecidas como portasde limiar polinomiais [b/ur71] que, segundo Nilsson [Ni165], são mapeadoresuniversais de funções booleanas de n variáveis. A relação entre o número deparâmetros livres e o poder computacional das RNAs, conceito introduzido nasduas últimas seções, é um parâmetro fundamental na definição da topologia derede para a solução de um determinado problema de mapeamento. Uma redecom um número muito reduzido de parâmetros pode não possuir a flexibilidade

necessária para se alcançar a solução desejada. Por outro lado, uma redecom um número muito grande de parâmetros pode estar superdimensionada

e, conseqüentemente, ser excessivamente flexível, resultando em estimativasindesejáveis para pontos fora do conjunto de treinamento.' O equilíbrio entreo desenvolvimento de um modelo que não resulte em generalização pobre devidoao superdimensionamento e que, por outro lado, seja suficientemente flexível

para resolver de maneira fiel o problema de mapeamento é conhecido na lite-

ratura como o dilema entre a polarização e a variância [GBD9212 e tratado em

mais detalhes nos capítulos seguintes.

S a literatura em inglês de RNAs, a generalização pobre devido ao número excessivo deparâmetros é conhecida como overfitting.

2 Bias and variante dilemma.

0 trabalho original de McCulloch e Pitts [MP43] enfocou o modelamento de

um neurônio biológico e sua capacidade computacional com a apresentaçãode vários exemplos de topologias de rede com capacidade de execução defunções booleanas. Naquela época surgiam os primeiros computadores digi-

tais, e entende-se que a associação de um modelo artificial de um neurôniobiológico com funções booleanas estava provavelmente ligada ao pensamentoentão vigente de que era possível construir uma máquina inteligente por meiode operadores lógicos básicos. Foi somente com o trabalho de Frank Rosenblatt,em 1958 [Ros58], que o conceito de aprendizado em RNAs foi introduzido. Omodelo proposto por Rosenblatt, conhecido como perceptron [Ros58], era com-posto por uma estrutura de rede, tendo como unidades básicas nodos 1ICP, epor uma regra de aprendizado. Alguns anos mais tarde, Rosenblatt demons-trou o teorema de convergência do perceptron, que mostra que um nodo I'ICPtreinado com o algoritmo de aprendizado do perceptron sempre converge casoo problema em questão seja linearmente separável [Ros62].

A topologia original descrita por Rosenblatt era composta por unidadesde entrada (retina), por um nível intermediário formado pelas unidades deassociação e por um nível de saída formado pelas unidades de resposta. Emboraesta topologia original possua três níveis, ela é conhecida como perceptron de

uma única camada, já que somente o nível de saída (unidades de resposta)possui propriedades adaptativas. A retina consiste basicamente em unidades

sensoras, e as unidades intermediárias de associação, embora formadas pornodos MCP, possuem pesos fixos, definidos antes do período de treinamento.A Figura 3.6 mostra um esboço da topologia do perceptron.

Apesar de ter causado grande euforia na comunidade científica da época,o perceptron não teve vida muito longa, já que as duras críticas de Minsky e

Papert [MP69] à sua capacidade computacional causaram grande impacto sobreas pesquisas em RNAs, levando a um grande desinteresse pela área durante os

anos 70 e início dos anos 80. Esta visão pessimista da capacidade do perceptrone das RNAs de uma maneira geral mudou com as descrições da rede de Hopfieldem 1982 [Hop82] e do algoritmo back-propagation em 1986. Foi em conseqüênciadestes trabalhos que a área de RNAs ganhou novo impulso, ocorrendo. a partirdo final dos anos 80, uma forte expansão no número de trabalhos de aplicaçãoe teóricos envolvendo RNAs e técnicas correlatas.

34 1 35

Page 27: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Retina Associação Resposta

Figura 3.6: Topologia de uni perceptron simples com uma única saída.

3.3.1 O algoritmo de aprendizado do perceptron

Unia RNA é composta por um conjunto de nodos com capacidade de proces-samento local e independente dos demais e uma topologia definindo a formacomo estes nodos estão conectados e uma regra de aprendizado . Como des-

crito na seção anterior , o perceptron é formado por nodos MCP [MP43] e pelatopologia de rede descrita na Figura 3.6. Nesta seção, será descrita a regra deaprendizado do perceptron , que permite a adaptação dos seus pesos de formaque a rede execute uma determinada tarefa de classificação.

De uma maneira geral, durante o processo de adaptação, ou aprendizado,

o que se deseja obter é o valor do incremento Ow a ser aplicado ao vetor depesos w de tal forma que o seu valor atualizado w(t + 1) = w(t) + Ow esteja

mais próximo da solução desejada do que w(t). Portanto, os algoritmos deaprendizado em RNAs visam ao desenvolvimento de técnicas para a obtençãodo valor de Aw mais apropriado para a obtenção da solução do problema em

questão.

Considerando um nodo arbitrário da camada de resposta de um perceptrone seus vetores de entrada x' e de pesos w', sua ativação é dada por >iw'ix'i =

w' x', onde w' • x' representa o produto interno entre w' e x'. Conseqüente-

mente, a condição crítica de disparo do nodo é w' • x' = 0, ou w' . x' - 0 = 0,

o que é equivalente a se adicionar um peso com valor -0 às entradas do nodo

e conectá-lo a uma entrada com valor fixo xi = 1. A nova condição crítica

de disparo passa então a ser w • x = 0, onde w = {-B, wl, w2, • • • , w„ }T e

x { }T 3= 1 x] X,-) , X,1

Considere agora o par de treinamento {x, d} para um nodo arbitrário da

rede, onde x é o vetor de entrada do nodo e d a saída desejada para a entradax. A saída atual da rede será chamada simplesmente de y, podendo-se então

definir o erro devido à saída atual como sendo e = d - y. Para o caso do per-

ceptron, tem-se sempre que y E {O. 1} e d E {0, 1}, podendo, portanto, haver

apenas duas situações possíveis para as quais e 0: d = 1 e y = 0, ou d = 0 ey = 1.

Para a primeira situação (d = 1 e y = 0), tem-se que e = 1 e w • x < 0,

já que y = 0, o que implica que 1 Jwi 1 • I IxI Icos(w, x) < 0. Conseqüentemente,

tem-se que cos(w. x) < 00 e a(w. x) > 90°, onde a é o ângulo entre os ve-

tores w e x. O diagrama apresentado na Figura 3.7 ilustra melhor a situaçãorelativa dos vetores w e x no espaço. Para esta condição, pode-se observartambém na figura que uma modificação plausível no vetor w em busca da

solução seria soniá-lo a um vetor que estivesse na direção de x como o vetor

nx indicado. Assim, Aw = rqx e w(t + 1) = w(t) + rtx. Porém. como e = 1. a

equação de atualização de w pode ser escrita de uma forma mais conveniente:

w(t+1) = w(t)+i7ex. A constante r/ é uma medida da rapidez com que o vetor

de pesos será atualizado, sendo comumente chamada de taxa de aprendizado.

Para valores pequenos de r), algumas iterações podem ser necessárias para se

chegar à solução indicada na Figura 3.7.

Para a segunda situação em que d = 0 e y = 1, pode-se obter a regra de

atualização do vetor de pesos de maneira análoga à situação anterior. Para

este caso, tem-se então e = -1 e Iw1 • ixlcos(w, x) > 0, o que implica que

a(w,x) < 90. Para que y = d = 0, o vetor de pesos deve ser modificadode forma tal que se obtenha a(w, x) > 90. Conseqüentemente, unia regra

de atualização plausível para este caso seria w(t + 1) = w(t) - r¡x. Como

e = -1 para este caso, a regra de atualização pode ser escrita também na

forma: w(t + 1) = w(t) + i)ex. Para as duas situações possíveis (d = 1 e y = 0

ou d = 0 e y = 1) chegou-se à mesma expressão para a regra de atualização

3A partir deste ponto, considere sempre que w e x correspondem às versões modificadas

dos vetores de pesos e de entrada.

o

h

e

e

01

36 37

Page 28: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

rl = {(xi,1)}?1 1 E C1 e F2 = {(xi, 0)}^? 1 E C2, tal que r = ri U r2 epl + P2 = p. Admite-se então que existe solução w0 tal que:

wo xi <o Vxi E C2

Figura 3.7: Posição relativa dos vetores w e x para a situação d = 1 e y = 0.

dos pesos, que pode então ser escrita como a equação geral para atualizaçãodos pesos de um nodo de um perceptron simples (Equação 3.4). Na próximaseção, será demonstrado o teorema da convergência do perceptron, que mostraque a atualização dos pesos pela Equação 3.4 leva sempre a uma solução caso

as classes em questão sejam linearmente separáveis.

w(t + 1) w(t) + r7ex(t)

3.3.2 Teorema da convergência

Conforme mostrado na seção anterior, a Equação 3.4 define a direção de atua-lização do vetor de pesos em busca da solução para um único vetor de entradax. Porém, quando um número maior de vetores é apresentado à rede e são

feitas atualizações sucessivas para cada um deles, modificações em w para umvetor x` qualquer poderão alterar a resposta da rede para um outro vetor xJ

Em outras palavras, como se procura por um único vetor que seja solução para

o problema de classificação, há dependência entre operações sucessivas de atua-lização de pesos. Nesta seção será demonstrado que, apesar desta dependência,

a atualização dos pesos pela Equação 3.4 sempre leva a uma solução em umtempo finito caso os vetores do conjunto de treinamento pertençam a duas

classes linearmente separáveis.

Considere então, para efeito da demonstração que se segue , que o conjunto

de treinamento para um nodo qualquer da camada de resposta seja divididoem duas classes linearmente separáveis Cl e C2. O conjunto de treinamento

de p elementos r = {(x', yt')}p 1 pode então ser dividido em dois subconjuntos

38

O problema do treinamento se resume então a achar w0 que seja soluçãopara a separação das duas classes Cl e C2. Durante o treinamento, ocorrerãoas atualizações nos pesos apresentadas nas Equações 3.7 e 3.8:

w(t + 1) = w(t ) + 77x(t) se wT (t)x(t) < 0 e x(t) E Cl (3.7)

w(t + 1) = w (t) - 77x(t) se wT (t)x(t) > 0 e x(t) E C2 (3.8)

onde x(t) representa o elemento do conjunto F, pertencente a r1 ou r2, apre-sentado à rede no instante t.

Para efeitos da dedução que se segue, torna-se irrelevante o fato de x(t)pertencer à classe C1 ou C2. Também para fins de simplicidade nas deduções,o teorema será provado para o caso em que r7 = 1 e w(1) = 0, já que os valoresde r7 e w(1) não afetam a separabilidade das classes C1 e C2 e, conseqüente-mente, não alteram o problema de separação. O valor de 77 influencia somenteo tempo de convergência, e não a existência ou não de uma solução, o mesmoocorrendo para a condição inicial w(1).

Suponha agora que w classifique de forma incorreta t1 vetores da classe C1e t2 vetores da classe C2, onde o instante de tempo atual t é equivalente à somade ti e t2 (t = ti + t2). Os vetores da classe Cl são apresentados à rede nosinstantes de tempo Ti = {ti }L! 1 , e os elementos da classe C2, nos instantesde tempo T2 = {t2}i? 1. Segundo as Equações 3.7 e 3.8 e considerando r/ = 1e w(1) = 0, obtém-se a Equação 3.9 mostrada a seguir.

ti t2w(t + 1) _ x(ti) - x(tt) (3.9)

i=1 j=1

Como Cl e C2 são duas classes linearmente separáveis, podemos afirmarque existe uma solução w0 tal que wÇ x(t) > 0 para x(t) E C1 e wÇ x(t) < 0

39

Page 29: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

para x(t) E C2. Multiplicando-se ambos os termos da Equação 3.9 por wTo .obtém-se a Equação 3.10. chegando-se finalmente à Equação 3.11:

wów(t+1)= oi=1

x(tl) - oj=1

(t) (3.10)

w(w(t + 1) = wo x(t) (3.11)

Para uma solução fixa w0. podemos definir uni número a tal que a =

min [wt^ x(t )] . Portanto . tens-se que w0 x(t + 1 ) > ta ou (wó w(t + 1) ) 2 >t2a2. Podemos concluir também , pela inequação de Cauchy-Schwarz [Leo94].que., para os dois vetores w0 e w(t+l ) a inequação IIwoI12IIw(t + 1)112 >

(wó uQ + 1))2 é também válida. o que nos leva às

apresentadas a seguir:

Equações 3.12 e 3.13

lwoll211w(t + 1)112 > t2a2 (3.12)

9 t'IIw(t + 1) 11 ?

a'(3 13)

1Iwo11'-.

Como os termos a22 e l Iwo (12 são constantes, a tradução da Equação 3.13para a dedução corrente é de que a norma ao quadrado do vetor de pesos varia

pelo menos de forma quadrática com o tempo t. Para que haja convergência, é

preciso que a norma de w(t + 1) seja limitada, o que será demonstrado a seguir.

Como i = 1. a equação geral de atualização dos pesos (Equação 3 . 4) podeser escrita então como : w(t + 1) = w(t) + ex(t). Obtendo-se a norma dos doislados desta equação e elevando-se também ambos os lados ao quadrado , tem-seque llw(t + 1)112 = 11w(t) + ex ( t)112, cuja expansão resulta nas Equações 3.14e 3.15:

IIw(t+1)112 = [wl(t)2+w2(t)2+...+wn(t)2]+e[x1(t)2+x2(t)2+...+7i1a(t)2]+

2e [w1(t)x1(t) +W2(t)X2 (t) + - • • + w17 (t)x„ (t)] (3.14)

1lw(t + 1)112 = 1 Iw(t)112 + eI Ix(t)112 + 2ewT (t)x(t) (3.15)

O erro e na Equação 3.15 pode assumir dois valores possíveis, conforme

já discutido anteriormente: e = 1 (para d = 1 e y = 0) ou e = -1 (para

d = 0 e y = 1). Para e = 1 tem-se que wT (t)x(t) < 0, o que implica que

Ilw(t)112 + IIx112 >_ IIw(t)112 + ellx(t)112 + 2ewT (t)x(t), que é também verdadepara a situação em que (e = -1), já que para esta segunda situação tem-se

wT (t)x(t) > 0 . Conseqüentemente podemos concluir as relações descritas nas

Equações 3.16 e 3.17:

IIw(t + 1)112 < IIw(t)112 + IIx(t)112

IIw(t+ 1)112 - Ilw(t)112 < IIx(t)112

(3.16)

(3.17)

Somando os t primeiros termos em ambos os lados da Equação 3.17, pode-

mos escrever então a Equação 3.18:

t

lIw(t +1)112 < Ilx(i)112i=1

(3.18)

Definindo agora /3 como /0 = max llx(i)112, podemos escrever uma se-1=1.2.....t

gunda condição limite para o vetor l lw(t + 1)11 na Equação 3.19:

l Iw(t + 1)112 < /3t (3.19)As duas condições para llw(t + 1)11 descritas pelas Equações 3.13 e 3.19

na verdade implicam a existência de um limite t para as operações de ajuste,

já que a solução destas duas inequações resulta em 0 < t < 31 t . Portanto.z

podemos concluir que o número de iterações é limitado por t = '3^W" o que

implica finalmente que o algoritmo sempre converge em um tempo finito, como

se queria demonstrar.

3.3.3 Implementação do algoritmo de treinamento doperceptron

Como visto na seção anterior, o algoritmo de treinamento do perceptron semprechega a uma solução para o problema de separação de duas classes linearmenteseparáveis em um tempo finito. Nesta seção será apresentado um exemplo deaplicação deste algoritmo a um problema de reconhecimento de padrões. Deuma maneira geral, o algoritmo de treinamento para um nodo de uni perceptron

simples4 pode ser descrito da seguinte forma:

4Observe que o mesmo algoritmo será aplicado a todos os nodos da rede, por isso basta n

sua descrição para apenas um rodo.

o

40 41

Page 30: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Tabela 3.1: Valores sucessivos de wT (t) obtidos após a atualização dos pesos

para x1 e x2. A solução encontrada w [0.050 0.025 0.010 - 0.025 -0.0451T resulta em y = 1 para x1 e y = 0 para x2, como desejado.

Tempo w (t)t=0 0.0000 0.0000 0.0000 0.0000 0.0000t=1 0.0500 -0.0050 -0.0100 0.0150 0.0450t=2 0.0000 -0.0100 0.0100 -0.0200 -0.0450t=3 0.0500 -0.0150 0.0000 -0.0050 0.0000t=4 0.0000 -0.0200 0.0200 -0.0400 -0.0900t=5 0.0500 -0.0250 0.0100 -0.0250 -0.0450

1. Inicializar rl e o vetor de pesos w;

2. Repetir;

3. Para cada par do conjunto de treinamento r = {(x', yd)}i 1

3.1 Atualizar o vetor de pesos para cada um dos nodos da rede se-gundo a regra w(t + 1) = w(t) + rlex(t);

4. Até e = 0 para todos os p elementos do conjunto de treinamento emtodos os nodos da rede.

Suponha, por exemplo, que um único nodo com 4 entradas seja treinadopara separar duas classes representadas pelos vetores x1 = [-1 -0,1 0,4-0, 7 -1, 8]T e x2 = [-1 O. 1 0, 2 -0,3 -0. 9]T. Como se trata de duasclasses representadas por apenas dois vetores, podemos afirmar que as mesmassão linearmente separáveis. e um único nodo será suficiente para resolver oproblema de classificação. Considere, para efeitos de resolução deste problema,que ,g = 0, 05 e w(0) = [0 0 0 0 0]T.5 A aplicação do algoritmo detreinamento do perceptron resulta na seqüência de valores para w(t) indicados

na Tabela 3.1 até a obtenção da solução final w(5) = [0.050 - 0,025 0, 010. 0,025 -0, 045]T.

'Observe que tanto os vetores de entrada x' e x2 são considerados em suas versões au-

mentadas com x(1) = -1 e w(1) = B.

3.4 Adaline

O modelo Adaline [WH60], chamado inicialmente de (ADAptive LINear Ele-ment) e posteriormente de ADAptive LInear NEuron, depois da popularizaçãode sua regra de aprendizado dentro da área de RNAs, surgiu na literaturaquase que simultaneamente com o perceptron [Ros58]. Ambos os modelos sãobaseados na idéia de ter-se elementos de processamento executando operaçõesde soma ponderada e posterior comparação com um valor de limiar, porémesses trabalhos surgiram em áreas diferentes com enfoques diferentes. FrankRosenblatt, por ser psicólogo, divulgou a descrição do perceptron [Ros58] emuma revista de psicologia, enquanto Bernard Widrow enfocou a descrição doAdaline [WH60] dentro do contexto de processamento de sinais em uma con-ferência do então IRE (Institute of Radio Electronics), hoje IEEE (Instituteof Electrical and Electronic Engineers). O algoritmo de treinamento descritopor Widrow e Hoff [WH60] é conhecido como regra delta e tem extrema im-portância na área de RNAs, já que deu origem ao algoritmo back-propagationpara treinamento de perceptrons de múltiplas camadas. O modelo Adaline, quepossui saídas binárias bipolares (y E [-1, +1] ), tem seus pesos adaptados em

função do erro de sua saída linear (y = >i wixi), antes da aplicação da funçãode ativação, daí o nome ADAptive LInear NEuron. Isto leva a uma funçãode custo a ser minimizada que é quadrática nos pesos de entrada wi, o que ébastante conveniente para a minimização pelo método do gradiente, como serávisto na próxima seção. A Figura 3.8 mostra um diagrama esquemático deum nodo Adaline. Como pode ser visto, o ajuste dos pesos é feito em funçãodo erro da saída linear.

3.4.1 Atualização dos pesos pelo método do gradiente

Como visto no algoritmo de treinamento do perceptron, descrito nas seçõesanteriores, somente há ajuste nos pesos quando e 0 -i Aw 0 0. O algoritmo

de treinamento do nodo Adaline trabalha de forma semelhante, tentando mi-nimizar o erro das saídas em relação aos valores desejados d' pertencentes aoconjunto de treinamento 1' = { (xi, d')}1. A função de custo a ser minimizadaé a soma dos erros quadráticos descrita na Equação 3.20:

PJ = 2

>(di

_ yi)2

i=1(3.20)

Para uma condição inicial qualquer w(0) = wi deseja-se obter a direçãodo ajuste a ser aplicado no vetor de pesos de forma a caminhar em direção àsolução ótima. Para a superfície de erro definida pela Equação 3.20, a direção

42 1 43

Page 31: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Figura 3.8: Diagrama esquemático de um nodo Adaline.

do ajuste no tempo t pode ser obtida pelo gradiente da função de custo no

ponto w(t). Segundo esta regra. o ajuste deve ser feito em direção contráriaao vetor gradiente no ponto w(t), ou seja, Aw(t) a -VJ. Os componentes dovetor gradiente podem então ser definidos pelas Equações 3.21. 3.22 e 3.23:

ai _ ai aya wi ay awi

ai

aw i

(3.21)

= -xi (d - (wo + wlxi + w2x2 + • • • + w71xr )) (3.22)

aJawi -xie (3.23)

Portanto , para que se tenha o vetor de pesos ajustado em direção contrária

ao vetor gradiente, chega-se às equações de ajuste descritas - a seguir:

Owi oc exi (3.24)

Awi = mexi (3.25)

onde 77 é uma constante de proporcionalidade que define a rapidez com que ovetor de pesos é modificado, sendo também chamado de taxa de aprendizadoda rede. Finalmente, a Equação genérica 3.26 para ajuste dos pesos de umnodo Adaline, conhecida como regra delta, pode ser obtida (Equação 3.26):

w(t + 1) = WA.(t) + lJex(t) (3.26)

Como pode ser observado nas Equações 3.4 e 3.26, as regras de aprendizado

para o perceptron e para o nodo Adaline são na realidade idênticas. Porém,cabe reforçar que, conforme demonstrado neste capítulo, elas foram obtidaspara nodos com estruturas diferentes e para condições diferentes de ajuste. A

equação de ajuste para o nodo Adaline foi obtida para a saída linear do nodo.

enquanto a equação de ajuste do perceptron foi obtida para a saída do nodo

após a aplicação da função de ativação.

3.4.2 Visão gráfica do processo de aprendizado

Para exemplificar o processo de aprendizado de um nodo Adaline através de umprocesso que possa ser visualizado graficamente, considere um nodo com apenas

uma entrada x associada a um peso w e um único termo de polarização b. Como

os parâmetros da rede são apenas o peso w e o termo de polarização b, a su-perfície de erro pode ser visualizada por meio de uni gráfico em três dimensões,

como será mostrado a seguir. Considere também que o conjunto de treinamen-to. possui apenas dois pares definidos como I' = {(0.2, 0.9), (-1.5.0.3)}. Para

este conjunto de treinamento, a superfície de erro apresentada na Figura 3.9

pode ser obtida.

Figura 3.9: Superfície de erro para o conjunto de treinamento r =

{(0.2, 0.9), (-1.5, 0.3)}. O ponto (wo, bo) está no mínimo da função e define

a solução ótima.

44 45

Page 32: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Portanto, a solução ótima para os parâmetros da rede se encontra nomínimo da superfície apresentada na Figura 3.9. O algoritmo-de treinamentodeve então ajustar os valores de w (peso) e b (termo de polarização) de forma

a caminhar na superfície em busca deste mínimo. Para a condição inicial dew = -1.5 e b = 1.5, a Figura 3.10 apresenta a trajetória aproximada sobre asuperfície de erro projetada sobre o plano contendo as curvas de nível corres-

pondentes. A simulação foi realizada com um valor pequeno de rl (77 = 0.01)com o objetivo de obter uma variação suave no treinamento da rede. A somados erros quadráticos para o conjunto de treinamento I' foi de 1.57 • 10-2 em

200 ciclos de treinamento.6 Se fosse permitido à rede um maior número deiterações (ciclos) para se aproximar mais do mínimo da superfície, certamentea soma dos erros quadráticos teria sido menor.

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

w

Figura 3.10: Variação dos parâmetros do nodo durante o processo de treina-

mento.

3.5 Conclusão

Neste capítulo foram - apresentados os modelos históricos perceptron eAdaline. Após a apresentação , no capítulo anterior , das principais técnicasde aprendizado , os algoritmos de aprendizado do perceptron e a regra deltapara Adaline foram descritos neste capítulo como os primeiros exemplos de

'Um ciclo corresponde à apresentação completa de todos os elementos do conjunto de

treinamento acompanhada dos ajustes de pesos correspondentes.

aprendizado em RNAs. Apesar de estes algoritmos terem sido deduzidos deforma diferente, as expressões para as suas regras de atualização dos pesos sãobastante similares: Ow = rlex. Isto mostra a. equivalência entre os dois mode-los, apesar de o algoritmo do perceptron ter sido descrito baseado no erro dasaída não-linear, e o Adaline, na saída linear. O capítulo seguinte descreveráa extensão destes modelos para redes multicamadas.

3.6 Exercícios

Implementar um discriminador de dois caracteres utilizando um único nodoMCP e regra delta (regra de aprendizado dos perceptrons) por meio de um

programa de computador. O nodo MCP, com n entradas, deverá discriminaros caracteres T e H descritos na forma de uma matriz i por j, onde ij = n.Usar n pelo menos igual a 9 (onde i = j = 3). O nodo deverá ser treinado pararesponder com 1 quando o vetor de entrada for igual a T e 0 quando for iguala H. Fornecer os seguintes resultados:

1. Curva de erro do nodo durante o aprendizado (definir uma função deativação para o nodo usando uma função do tipo ou sigmóide);

2. Respostas do nodo quando a entrada for igual a T e H;

3. Comentar a capacidade de generalização da rede: qual a resposta para'caracteres não-conhecidos? Testar com os caracteres T e H distorcidos.

46 1 47

Page 33: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capítulo 4

Redes MLP

O a

Li Q2 v

Q e %

f_ Ü Conforme discutido no Capítulo 3, as redes de uma só camada resolvem ape-nas problemas linearmente separáveis. A solução de problemas não linearmenteseparáveis passa pelo uso de redes com uma ou mais camadas intermediárias.

- ► C' ou escondidas . Segundo Cybenko [C\b89]. unia rede com uma camada inter-

e

Qtlçt^] [ PQl'l-e &

mediaria pode implementar qualquer função contínua . A utilização de duascamadas intermediárias permite a aproximação de qualquer função [Cyb88].Deve ser observado que permitir a implementação ( aprendizado ) da funçãonão implica , como é o caso da rede perceptron. a garantia de implementaçãoda função . Dependendo da distribuição dos dados . a rede pode convergir paraum mínimo local ou pode demorar demais para encontrar a solução desejada.

O problema passa a ser então como treinar estas redes. Uma possibilidadeseria a divisão da rede em um conjunto de sub-redes, uma sub-rede para cadacamada, com treinamento independente. Em uma rede com uma camada in-termediária, por exemplo, a primeira camada escondida poderia ser formadapor um conjunto de redes perceptron, uma rede para cada grupo de entradas

linearmente separáveis. Na camada de saída, uma outra rede combina as saídas

produzidas pelas redes da primeira camada, gerando a classificação final. Es-ta solução esbarra na dificuldade de dividir um problema em subproblemas.Geralmente esta divisão ou não é possível ou é muito complicada.

Uma outra alternativa seria treinar a rede completa de uma só vez. Oproblema agora se torna como treinar os nodos da camada intermediária desta

rede. Qual seria a resposta desejada para estes nodos? Ou melhor. como seriadefinido o erro destes nodos? O problema passa agora a ser a definição doerro dos nodos das camadas intermediárias. Se uma função de ativação do

49

Page 34: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

tipo limiar (função threshold) for utilizada , a avaliação do erro será bastantecomplexa , uma vez que os nodos das camadas intermediárias e de saída nãosaberão o quão distantes as respostas de seus nodos estão dos valores desejados,um dos problemas da rede perceptron . Uma alternativa seria a utilização defunções de ativação lineares. No entanto , uma rede com mais de uma camadacujos nodos utilizam funções de ativação lineares é equivalente a uma rede deuma só camada . Esta afirmação pode ser facilmente provada:

Seja uma Rede Neural com uma camada intermediária e funçõesde ativação lineares. Sejam x o vetor de entrada e WA e WB asmatrizes de pesos para os nodos da primeira e segunda camadas,respectivamente . O vetor de saída da rede é gerado de acordo coma Equação 4.1:

y = (xwA).wB (4.1)

Utilizando propriedades da álgebra linear [Lay97], tem-se que:

V(WA e WB) 3 wc. 1 wc. = WA.WB (4.2)

Logo:

y = x.wc (4.3)

onde x é o vetor de entrada , y o vetor de saída e wA, WB e wc sãomatrizes de pesos com dimensões 111xN, NxL e MiL, respectiva-mente.

Para treinar as redes com mais de uma camada , foi proposto um métodoque se baseia em gradiente descendente [RHW86]. A fim de que este métodopossa ser utilizado , a função de ativação precisa ser contínua, diferenciável e,de preferência , não-decrescente . A função de ativação deve informar os erroscometidos pela rede para as camadas anteriores com a maior precisão possível.A alternativa utilizada para superar os problemas acima citados foi a utilizaçãode funções de ativação do tipo sigmoidal.

Este capítulo tem por objetivo descrever e explicar o funcionamento dasRNAs do tipo perceptron multicamadas. ou MLP (multilayer perceptron), que

são RNAs que apresentam pelo menos uma camada intermediária ou escondi-da [RHW86]. Inicialmente será apresentada uma introdução às característicasbásicas das redes MLP, mostrando sua motivação e capacidade. Posterior-mente, será apresentado o principal algoritmo utilizado para treinar tais redes,o algoritmo back-propagation , além de algumas variações deste algoritmo nosúltimos anos com o objetivo de melhorar o seu desempenho.

4.1 Arquitetura

Conforme visto anteriormente neste livro, a inexistência ou desconhecimentode algoritmos para treinar redes com uma ou mais camadas intermediárias foiuma das causas da redução das pesquisas em RNAs na década de 70. Talproblema foi primeiro apontado por Minsky e Pappert , no livro Perceptrons[11P69], e, por representar uma sensível redução no universo de aplicações deRNAs, causou uma diminuição drástica tanto do número de pesquisadores quetrabalhavam na área quanto no financiamento de projetos envolvendo RNAs.

Redes MLP apresentam um poder computacional muito maior do que aque-le apresentado pelas redes sem camadas intermediárias . Ao contrário destasredes, MLPs podem tratar com dados que não são linearmente separáveis.Teoricamente , redes com duas camadas intermediárias podem implementarqualquer função, seja ela linearmente separável ou não [Cyb89 ]. A precisãoobtida e a implementação da função objetivo dependem do número de nodosutilizados nas camadas intermediárias . A Figura 4.1 apresenta uma rede MLPtípica.

Conforme já observado , um dos principais aspectos relacionados ao projetode redes MLP diz respeito à função de ativação utilizada. Diversas funçõesde ativação têm sido propostas para redes multicamadas. Estas funções sãonão-lineares e diferenciáveis . No início deste capítulo já foi explicado o porquêda não-linearidade . As funções precisam ser diferenciáveis para que o gradientepossa ser calculado , direcionando o ajuste dos pesos . A maioria delas é tambémnão-decrescente . A função de ativação mais utilizada é sigmoidal logística. Aorientação da sigmoidal é determinada pela direção do vetor de pesos w. Ovalor do termo de polarização . correspondente ao peso zro . determina a locali-zação da função sigmoidal , ou seja, define a posição da função sigmoidal comrelação ao eixo dá ordenada.

A Figura 4.2 ilustra a posição da função sigmoidal no gráfico cartesianocujos eixos são a saída do nodo ao qual a função está sendo aplicada e o valorde seu termo de polarização. Esta figura mostra o deslocamento desta posição,

50 1 51

Page 35: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

quando o valor do termo de polarização é modificado. Pode-se ver nesta figuraque quanto maior o termo de polarização, maior o valor de entrada necessáriopara unia resposta próxima a 1. Finalmente, a inclinação da função sigmoidalé determinada pela norma do vetor de pesos 11w11.

Entrada Camada Camada Camadade entradal intermediária de saída

4.1.1 Funcionalidade

Em uma rede multicamadas, o processamento realizado por cada nodo é definidopela combinação dos processamentos realizados pelos nodos da camada anterior

que estão conectados a ele. Quando se segue da primeira camada intermediária

em direção à camada de saída, as funções implementadas se tornam cada vezmais complexas. Estas funções definem como é realizada a divisão do espaço de

decisão. Para uma rede com pelo menos duas cansadas intermediárias, pode-sedizer que o seguinte processamento ocorre em cada unia das camadas:

Figura 4.1: Esta figura ilustra unia rede NILP típica com uma camada inter- • Primeira camada intermediária : cada nodo traça retas no espaço dedime ária.

Figura 4.2 : Influência do termo de polarização no mapeamento realizado pelafunção sigmoidal . Pode ser visto nesta figura que quanto maior o termo depolarização , maior o valor de entrada necessário para uma resposta próxima a1.

padrões de treinamento.

• Segunda camada intermediária : cada nodo combina as retas traçadaspelos neurônios da camada anterior conectados a ele, formando regiõesconvexas, onde o número de lados é definido pelo número de unidades a

ele conectadas. A Figura 4.3 ilustra possíveis regiões convexas definidaspelos nodos da segunda camada intermediária.

• Camada de saída: cada nodo forma regiões que são combinações das

regiões convexas definidas pelos nodos a ele conectados da camada ante-rior. Os nodos definem, desta maneira, regiões com formatos abstratos.

Possíveis regiões formadas pelos nodos da camada de saída podem servistas na Figura 4.4.

Pode ser dito que as unidades intermediárias de uma rede ^ILP funcionamcomo detectores de características . Elas geram uma codificação interna dospadrões de entrada , que é então utilizada para a definição da saída da rede.Dado um número suficientemente grande de unidades intermediárias , é possívelformar representações internas para qualquer conjunto de padrões de entrada.

Cybenko [Cyb89], além de outros pesquisadores [HSW89, Fun89], inves-tigou o número de camadas intermediárias necessárias para a implementaçãode classes de funções em uma Rede Neural Artificial. Os resultados obtidosindicam que:

52 53

Page 36: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

• Uma camada intermediária é suficiente para aproximar qualquer funçãocontínua [Cyb89 , HKP91].

Wl n classe 1

o Cl~ 2

W2

Figura 4.3: Regiões definidas pelo processamento realizado pela segunda cama-da intermediária . Como pode ser visto, retas definidas pela camada anteriorsão combinadas para a formação de regiões convexas.

Wl n ciasse 1

Figura 4.4: Regiões definidas pelo processamento realizado pela camada desaída de uma rede MLP . Pode-se observar que são formadas regiões com for-matos abstratos.

• Duas camadas intermediárias são suficientes para aproximar qualquerfunção matemática [Cyb88].

Deve ser observado , contudo , que em alguns casos a utilização de duas oumais camadas intermediárias pode facilitar o treinamento da rede. A utilizaçãode um grande número de camadas intermediárias não é recomendada, no en-tanto , pois, cada vez que o erro medido durante o treinamento é propagadopara a camada anterior, ele se torna menos útil ou preciso . A única camadaque tem uma noção precisa do erro cometido pela rede é a camada de saída.A última camada intermediária recebe apenas um estimativa sobre o erro. Apenúltima camada intermediária , uma estimativa da estimativa , e assim pordiante.

Com relação ao número de nodos nas camadas intermediárias , este é emgeral definido empiricamente . Este número depende fortemente da distribuiçãodos padrões de treinamento e validação da rede. Alguns métodos , no entanto,têm sido propostos . Os mais utilizados são:

• Definir o número de unidades em função do número de entradas e saídas.Deve ser observado que este método não pode ser utilizado de formagenérica.

• Utilizar um número de conexões dez vezes menor que o número de exem-plos. Este método apenas reduz a incidência de overfitting. Se o númerode exemplos for muito maior que o número de conexões, overfitting é im-provável , mas pode ocorrer underfitting (a rede não converge durante oseu treinamento).

O número adequado de nodos na camada intermediária depende de váriosfatores, como:

• Número de exemplos de treinamento;

• Quantidade de ruído presente nos exemplos;

• Complexidade da função a ser aprendida;

• Distribuição estatística dos dados de treinamento.

4

54 1 55

Page 37: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Existem problemas que necessitam apenas de unia unidade de entrada e de

uma unidade de saída, e outros que podem precisar de milhares de unidadesintermediárias. O número de unidades intermediárias pode também, em algunscasos. crescer exponencialmente com o número de entradas. A solução neural

mais eficiente é aquela em que o número de unidades cresce apenas polinomial-mente com o aumento do número de unidades de entrada.

Para a solução de problemas práticos de reconhecimento de padrões, aloca-

se para a rede uni número de unidades intermediárias suficientes para a soluçãodo problema. Deve-se ter cuidado para não utilizar nem unidades demais, oque pode levar a rede a memorizar os padrões de treinamento, em vez deextrair as características gerais que permitirão a generalização ou o reconheci-

mento de padrões não vistos durante o treinamento (este problema é chama-do de overfitting). nem uni número muito pequeno, que pode forçar a redea gastar tempo em excesso tentando encontrar uma representação ótima (asunidades utilizadas podem ficar sobrecarregadas, tendo que lidar com uni ele-vado número de restrições).

4.1.2 Otimização da topologia utilizando pruning

Conforme observado nos parágrafos anteriores, uma das maiores dificuldades

em se definir a estrutura de unia RNA é o fiel dimensionamento de sua topolo-gia. Normalmente. o número de camadas e o número de nodos em cada camada

são definidos em função de uma inspeção prévia nos dados e da complexidadedo problema. Uma vez definida a topologia inicial , a estrutura final maisadequada para o modelamento é normalmente obtida através de refinamentossucessivos, que podem levar a um tempo de dimensionamento alto, já que estetem uns grande componente empírico.

O objetivo dessa etapa de ajuste é a obtenção de uma topologia de rede quemodele com precisão os dados do conjunto de treinamento, mas que tambémresulte em unia aproximação com boa capacidade de generalização. Como namaioria dos casos o conjunto de treinamento de uma RNA é composto de da-

dos experimentais, estes contêm implicitamente erros inerentes aos processosde amostragem. Desta forma, a aproximação através de RNAs deve ser feitavisando à obtenção de uma estrutura que seja capaz de modelar os dados semmodelar o ruído contido neles.

Este é um problema no projeto de RNAs conhecido na literatura como bios

and variance dileinrna[GBD92],1 que envolve a obtenção de um modelo que não

seja muito rígido a ponto de não modelar fielmente os dados, mas que também

não seja excessivamente flexível a ponto de modelar também o ruído.

O equilíbrio entre a rigidez e a flexibilidade da rede é obtido por meio

de seu dimensionamento. Quanto maior a sua estrutura, maior o número de

parâmetros livres ajustáveis e, conseqüentemente, maior a sua flexibilidade.

Porém, quando os dados são apresentados à rede, não se tem real conhecimen-

to de sua complexidade, daí a dificuldade do problema de dimensionamento.

Uma forma de se evitar o overfitting é estimar o erro de generalização du-

rante o processo de treinamento [Ree93]. Para isto, o conjunto de dados é

dividido em conjunto de treinamento e conjunto de validação. O conjunto de

treinamento é utilizado na modificação dos pesos, e o conjunto de validação éutilizado para estimar a capacidade de generalização da rede durante o proces-

so de aprendizagem.

O treinamento deve ser interrompido quando o erro do conjunto de vali-

dação começar a subir, ou seja, quando a rede começar a incorporar o ruídopresente nos dados, o que causa degradação na sua capacidade de genera-

lização [Ree93]. Embora esta alternativa possa se mostrar eficiente em algu-

mas situações, sua utilização é limitada para os casos em que um conjuntode treinamento muito grande está disponível, já que os dados do conjunto de

validação não podem ser utilizados para treinamento.

Uma outra solução conhecida é a adoção de técnicas de pruning [Ree93],

que, por sua vez, envolvem a• eliminação de pesos e nodos irrelevantes paraa função executada pela rede. Existem basicamente dois tipos de métodos

de pruning: os métodos baseados na avaliação da sensibilidade da saída e os

métodos que envolvem modificações na função de.custo [Ree93]. A filosofia dos

métodos do primeiro grupo é a retirada de elementos da rede e a subseqüenteverificação da variação do erro de saída [1\IS89, Kar90, LBD+90]. Caso a reti-rada do elemento não cause grande variação no erro de saída, conclui-se que arede é pouco sensível a este e que ele pode ser retirado sem perda da capacidade

da rede de modelar os dados.

'Como não existe tradução conhecida para o português, resolveu-se aqui manter o tenho

conforme é conhecido na literatura internacional.

56 57

Page 38: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

A desvantagem desse método é que a retirada dos elementos não consideraa correlação entre eles . Um exemplo de situação em que este método poderia

falhar seria o caso de dois nodos que anulam as suas saídas em uma camadaintermediária da rede. Como par , eles não causam nenhum efeito na saída derede, mas individualmente podem ter um grande efeito quando a remoção deum deles é analisada [Ree93].

Por sua vez , os métodos que envolvem modificação na função de custo

[HN87, LDS901 utilizam , em uma primeira etapa, temos - de - regularização,

[TA77] adicionados ao termo de erro padrão. A idéia destes algoritmos é aobtenção de soluções com pesos de norma mínima; para isto , as soluções com

valores altos de pesos são penalizadas durante o treinamento . Começa-se com

uma rede com topologia superdimensionada e dela são retirados os pesos irre-levantes.

Como exemplo , a forma geral da função de custo J para o treinamentodo algoritmo weight decay [HN87] é apresentada na Equação 4.4. Pode-seentão observar que se minimiza não somente a soma dos erros quadráticos,mas também a norma do vetor de pesos.

J 2(di- Yi )2 +2aIIWII2 (4.4)

onde k é o número de nodos de saída, di, a saída desejada do nodo i, yj, a saída

gerada pelo nodo i., ew, o vetor de pesos.

Uma vez obtida uma solução com pesos de norma mínima, aqueles com va-lores muito pequenos são então considerados irrelevantes e eliminados. Espera-se então obter uma solução com um fiel equilíbrio entre a rigidez e a flexibilidadeda rede. A contrapartida para esta abordagem, que parece mais elegante, éque a busca de uma boa solução com norma mínima também depende doajuste de forma empírica do parâmetro de regularização A. Quando este énulo, somente a soma dos erros quadráticos é minimizada; quando possui valormuito grande, a solução para o vetor de pesos tende para w = 0. Portanto,um valor satisfatório intermediário deve ser encontrado.

Uma solução para contornar este problema é, obviamente, incluir o parâme-tro A como uma das variáveis a serem ajustadas, porém isto incorpora maiscomplexidade ao processo de treinamento. Outros procedimentos para a cons-

trução de redes com estrutura otimizada é a utilização de redes construtivas,,

que serão tratadas mais adiante. A seguir serão discutidas as técnicas clássicasde treinamento de redes MLP.

4.2 Treinamento de redes MLP

Existem atualmente vários algoritmos para treinar redes MLP [RM86, Fah88,Rie94, Pea92, Bat91, HM94]. Estes algoritmos são geralmente do tipo supervi-sionado. De acordo com os parâmetros que eles atualizam, os algoritmos paratreinamento de redes do tipo MLP podem ser classificados em:

• estáticos;

• dinâmicos.

Enquanto os algoritmos estáticos não alteram a estrutura da rede, variandoapenas os valores de seus pesos, os algoritmos dinâmicos podem tanto reduzirquanto aumentar o tamanho da rede (número de camadas, número de nodosnas camadas intermediárias e número de conexões). Quando o aprendizadoestático é utilizado, a mesma regra de aprendizado é empregada para redes dotipo AILP com diferentes tamanhos e formatos. É interessante observar quetopologias diferentes podem resolver o mesmo problema.

O algoritmo de aprendizado mais conhecido para treinamento destas redes

é o algoritmo back-propagation [RM86]. A maioria dos métodos de aprendizadopara RNAs do tipo MLP utiliza variações deste algoritmo. O algoritmo back-

propagation foi um dos principais responsáveis pelo ressurgimento do interesseem RNAs, por ocasião da publicação, em 1986 [RM86], de Parallel Distribated

Processing, mais conhecido por PDP. Embora a popularização deste algoritmo

tenha surgido a partir de 1986, ele foi proposto muito antes, com diferentespropósitos, por diferentes pesquisadores, como Bryson e Ho [BH69](1969),Werbos [Wer74](1974), Parker [Par85] (1985) e Le Cun [LeC85] (1985).

O algoritmo back-propagation é um algoritmo supervisionado que utilizapares (entrada, saída desejada) para, por meio de um mecanismo de correção

de erros, ajustar os pesos da rede. O treinamento ocorre em duas fases, emque cada fase percorre a rede em um sentido. Estas duas fases são chamadas

de fase forward e fase backward. A fase forward é utilizada para definir a saídada rede para um dado padrão de entrada. A fase backward utiliza a saída de-sejada e a saída fornecida pela rede para atualizar os pesos de suas conexões.

A Figura 4.5 ilustra estas duas fases.

A fase forward envolve os seguintes passos:

58 1 59

Page 39: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Fase forward

Fase backward

Figura 4.5: Fluxo de processamento do algoritmo back-propagation. Os dadosseguem da entrada para a saída no sentido forward, e os erros, da saída para aentrada no sentido backward.

1. A entrada é apresentada à primeira camada da rede. a camada C°.

2. Para cada camada C' a partir da camada de entrada

2.1 Após os nodos da camada C' (i > 0) calcularem seus sinais de

saída, estes servem como entrada para a definição das saídas

produzidas pelos nodos da camada C'+1

3. As saídas produzidas pelos nodos da última cansada são comparadas àssaídas desejadas.

A fase backward envolve as etapas listadas a seguir:

1. A partir da última camada, até chegar na camada de entrada:

1.1 Os nodos da camada atual ajustam seus pesos de forma a reduzir

seus erros.

1.2 O erro de um nodo das camadas intermediárias é calculado uti-

lizando os erros dos nodos da camada seguinte conectados a ele,

ponderados pelos pesos das conexões entre eles.

O algoritmo back-propagation, que faz uso destas duas fases, é apresentadoa seguir.

1. Inicializar pesos e parâmetros.

2. Repetir até o erro ser mínimo ou até a realização de um dado número de

ciclos:

2.1 Para cada padrão de treinamento X

2.1.1 Definir saída da rede através da

fase forward.

2.1.2 Comparar saídas produzidas com as

saídas desejadas.

2.1.3 Atualizar pesos do nodos através da

fase backward.

0 algoritmo back-propagation é baseado na regra delta proposta por \Vidrow

e Hoff [\VH60] (apresentada nos capítulos anteriores), sendo por isto também

chamada de regra delta generalizada. Este algoritmo propõe unia forma dedefinir o erro dos nodos das camadas intermediárias, possibilitando o ajuste

de seus pesos. Os ajustes dos pesos são realizados utilizando-se o método dogradiente. Na literatura de análise numérica, a regra delta generalizada é co-

nhecida como o "método da bola pesada" [Ber95].

A derivação da regra delta generalizada é simples e semelhante à derivação

da regra delta. Também neste caso, a função de custo a ser minimizada éuma função de erro ou energia, definida pela soma dos erros quadráticos e

representada pela Equação 4.5:

tiE= 2(dp

P)2

P i=1

onde E é a medida de erro total, p é o número de padrões, k é o número de

unidades de saída, d- é a i-ésima saída desejada e y; é a i-ésima saída geradapela rede. Esta equação define o erro total cometido pela rede, ou a quantidadeem que, para todos os padrões p de um dado conjunto, as saídas geradas pela

rede diferem das saídas desejadas.

A regra delta generalizada requer que as funções de ativação utilizadas

pelos nodos sejam contínuas, diferenciáveis e, geralmente, não-decrescentes daentrada total recebida pelo nodo. Estas funções são chamadas de funções

semilineares. A Equação 4.6 ilustra o cálculo do valor de ativação.

60 61

Page 40: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Erro referente aos,,. Superfície de erropesos iniciais

Solução desejada

Figura 4.6: Superfície de erro para rede MLP. Considere que as coordenadasw1 e w2 são pesos cujos valores apontam para um ponto da superfície de erro.

onde:

yP = f j (netP) (4.6)

n

netP Ê xPwi

i=1

A constante n representa o número de conexões de entrada do nodo j, ewj;, o peso da conexão entre a entrada xp e o nodo j.

Há garantia de convergência se a superfície de energia for simples. Umaforma de visualizar a influência do treinamento da rede no valor do erro ouenergia é ilustrada pela superfície de erro da Figura 4.6. Esta figura ilustra um

caso simples de uma rede com apenas um nodo e duas conexões. Os valoresdos pesos da rede definem a cordenada de um ponto da superfície de erro. O

erro produzido pela rede para cada combinação de valores de pesos é dado pelaaltura da superfície naquele ponto. Assim, quanto mais alto for o ponto, maioro erro produzido pela rede.

4.2.1 Derivação das fórmulas

Nesta seção serão derivadas as fórmulas utilizadas pelo algoritmo back-propa-gation para atualização dos pesos da rede I\ILP.

Embora o erro total E seja definido pela soma dos erros dos nodos de saídapara todos os padrões, será considerado, sem perda de generalidade, que a mi-nimização do erro para cada padrão individualmente levará à minimização do

erro total. Assim, o erro passa a ser definido pela Equação 4.8:

A regra delta sugere que a variação dos pesos seja definida de acordo como gradiente descendente do erro com relação ao peso, ou seja, que a variação

do peso para um dado padrão seja definida pela Equação 4.9:

1 ti

E= 2(dj -yj)2j=1

Awjt oc -aEOE (4.9)awjj

Agora é necessário definir como cada um dos pesos de cada nodo da rededeve ser ajustado de forma a diminuir o erro total gerado pela rede. Utilizando

a regra da cadeia, tem-se que:

aE _ 0E anetj

awja anetj awji

onde netj = xZwjiOnet

A segunda derivada , , é simples de calcular:J

'1

a xtwj1anet = l=1

= xrwj i wj i

(4.10)

(4.11)

A primeira derivada, aquela do lado direito da igualdade da Equação 4.10,

mede o erro do nodo j, e geralmente é abreviada para 6j.

aEb^ -

anet j(4.12)

O cálculo desta derivada também pode ser definido pela regra da cadeia:

_ aE _ aE ayjE^ anetj ayj anetj

A segunda derivada da Equação 4.13, .^et , é facilmente definida:J

agi _ af (netj) = f.(netj)

anet j anet j

(4.13)

(4.14)

62 1 63

Page 41: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Já o cálculo da primeira derivada, y , que utiliza o erro. vai depender da

camada onde o nodo j se encontra. Se o nodo estiver na última camada. o seuerro pode ser facilmente definido utilizando a Equação 4.8. Assim.

tiDE 0(1 r_ (dl - yl )2

i = (d.i - yi) (4.15)_ C9 yi __ ayi

que é a mesma fórmula da regra delta original . Substituindo os dois termos dolado direito da Equação 4.13. obtém-se:

SJ = (d1 - yi).f-(neta) (4.16)

Caso o nodo j não seja uni nodo de saída. a regra da cadeia é utilizadapara escrever:

Mínimos locais

Platôs

Figura 4.7: Exemplo de mínimos locais e platôs em unia superfície de erro.

OE V- DE Onetl

Dy, áneti Dyj

onde:

DEó

i=lwilyi at DE

ónetl Dy ónet w•^1 (4.17)1

Ai DEC^net1 wj1 = 6iw^1 (4.18)

1=i 1=t

Substituindo mais uma vez os dois termos do lado direito da Equação 4.13.obtém-se que, para os nodos das camadas intermediárias , o erro é definido por:

õj = f*(netj )E81w1j1

(4.19)

Pode-se assim generalizar a fórmula de ajuste de pesos proposta na Equação4.9 para:

ou:

Owii = 71sixi (4.20)

w,i(t + 1) = w,i (t) + r)ô; (t)xi(t) (4.21)Se o nodo for de saída, o erro 6, será definido pela Equação 4.16, caso

contrário, bj será dado pela Equação 4.19.

Para unia melhor compreensão do processo de aprendizado. pode-se su-

por. por exemplo, que cada combinação de pesos e limiares corresponda a umponto na superfície de solução. Considerando que a altura de uni ponto é dire-

tamente proporcional ao erro associado a este ponto, a solução está nos pontos

mais baixos da superfície.

O algoritmo back-propagation procura minimizar o erro obtido pela rede

ajustando pesos e limiares para que eles correspondam às coordenadas dospontos mais baixos da superfície de erro. Para isto, ele utiliza um método de

gradiente descendente.

O gradiente de uma função está na direção e sentido em que a funçãotem taxa de variação máxima. Isto garante que a rede caminha na superfície

na direção que vai reduzir mais o erro obtido. Para superfícies simples. estemétodo certamente encontra a solução com erro mínimo. Para superfícies maiscomplexas. esta garantia não mais existe, podendo levar o algoritmo a convergir

para mínimos locais. O algoritmo back-propagation fornece uma aproximação

da trajetória no espaço de pesos calculado pelo método do gradiente descen-dente. Estes pontos ou áreas podem incluir platôs, mínimos locais ou arestas.

A Figura 4.7 ilustra mínimos locais e platôs.

Um dos problemas enfrentados no treinamento de redes MLP diz respeito àdefinição de seus parâmetros. A seleção dos parâmetros de treinamento do al-

goritmo back-propagation é um processo tão pouco compreendido que é muitas

64 65

Page 42: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

vezes chamado de "magia negra". Pequenas diferenças nestes parâmetros po-

dem levar a grandes diferenças tanto no tempo de treinamento quanto na gene-ralização obtida. Não é raro encontrar na literatura, para um mesmo problema,utilizando o mesmo método de treinamento, tempos de treinamento que difer-

em em uma ou mais ordens de magnitude.

Uma dúvida que surge naturalmente diz respeito a quando parar de treinara rede. Existem vários métodos para a determinação do momento em que o

treinamento deve ser encerrado. Estes métodos são chamados de critérios de

parada. Os critérios de parada mais utilizados são:

1. encerrar o treinamento após N ciclos;

2. encerrar o treinamento após o erro quadrático médio ficar abaixo de uma

constante a;

3. encerrar o treinamento quando a porcentagem de classificações corretasestiver acima de uma constante a (mais indicado para saídas binárias);

4. combinação dos métodos acima.

Outro aspecto que precisa ser observado é a freqüência de atualização dos

pesos. A freqüência de ajuste dos pesos influencia o desempenho obtido du-rante o treinamento. Duas abordagens diferentes têm sido utilizadas quan-

to à freqüência (periodicidade) para o ajuste de pesos pelo algoritmo back-

propagation:

• por padrão (on-line);

• por ciclo (batch).

Existem vantagens e desvantagens em cada uma destas abordagens. Naabordagem por padrão, os pesos são atualizados após a apresentação de cada

padrão de treinamento. Esta abordagem é estável se a taxa de aprendizado forpequena (é aconselhável reduzir progressivamente esta taxa). Quando taxaselevadas são utilizadas, a rede geralmente se torna instável. A abordagem porpadrão é geralmente mais rápida, sobretudo se o conjunto de treinamento forgrande e redundante. Uma outra vantagem desta técnica é que ela requer

menos memória.

Na abordagem por ciclo, por sua vez, os pesos são atualizados após todos

os padrões terem sido apresentados. Esta técnica é geralmente mais estável,

mas pode ser lenta se o conjunto de treinamento for grande e redundante.Esta abordagem apresenta uma estimativa mais precisa do vetor gradiente, à

custa da necessidade de mais memória. A escolha da abordagem a ser utilizadadepende da aplicação e da distribuição estatística dos dados.

4.2.2 Dificuldades no treinamento

Embora as seções anteriores possam sugerir o contrário, o algoritmo back-propagation apresenta uma série de dificuldades ou deficiências que desestimu-lam uma maior disseminação de seu uso. O principal problema diz respeito àlentidão do algoritmo para superfícies mais complexas. Uma forma de mini-mizar este problema é considerar efeitos de segunda ordem para o gradientedescendente. Não é raro o algoritmo convergir para mínimos locais.

Mínimos locais são pontos na superfície de erro que apresentam uma soluçãoestável, embora não sejam a saída correta. Algumas técnicas são utilizadas tan-to para acelerar o algoritmo back-propagation quanto para reduzir a incidênciade mínimos locais:

• utilizar taxa de aprendizado decrescente;

• adicionar nós intermediários;

• utilizar um termo momentum;

• adicionar ruído aos dados.

Entre as várias técnicas utilizadas para acelerar o processo de treinamentoe evitar mínimos locais, a adição de um termo momentum [RN1861 é uma dasmais freqüentes. Sua grande utilização é influenciada por ser ela uma técnicasimples e efetiva. O termo momentum é representado pela Equação 4.22.

v = a(wi;(t) - wii(t - 1)) (4.22)

A fórmula completa de ajuste de pesos utilizando o termo momentum passaentão a ser:

wj; (t + 1) = wj; (t) + i7Si (t)xi(t) + a(wij(t) - wlj(t - 1)) (4.23)

A inclusão do termo momentum na fórmula de ajuste dos pesos aumentaa velocidade de aprendizado (aceleração), reduzindo o perigo de instabilidade.

66 1 67

Page 43: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Solução desejada

Figura 4.8: Influência do termo m,omentum..

O termo momentuin pode acelerar o treinamento em regiões muito planas dasuperfície de erro. Além disso. ele suprime a oscilação de pesos em vales eravinas. A Figura 4.8 ilustra o efeito da utilização do termo momentum nocaminho seguido pela rede durante seu aprendizado

Outro problema que ocorre durante o treinamento de redes '-^1LP é a possívelocorrência de overfitting. Conforme já discutido anteriormente, o overfittingocorre quando, após um certo ciclo do treinamento. a rede. em vez de melho-rar, começa a piorar a sua taxa de acertos para padrões diferentes daqueles

utilizados para o ajuste dos pesos. Diz-se então que a rede memorizou ospadrões de treinamento, gravando suas peculiaridades e ruídos. Isto tem co-mo resultado uma piora na capacidade de generalização da rede. Assim como

para os problemas de lentidão e mínimos locais, existem alternativas para lidarcom o problema de overfitting. As alternativas mais utilizadas para reduzir aocorrência de overfitting são:

• encerrar o treinamento mais cedo (quando o erro de validação começa asubir);

• podar (pruning) os pesos da rede.

Entretanto, um dos principais problemas do algoritmo back-propagationpadrão é conhecido como superfície plana (flat spot [Fah88]), quando a deriva-da da função sigmoidal de uma unidade se aproxima de zero durante o treina-

mento. A derivada da função sigmoidal é igual a oJ (1-oj). Quando a saída da

unidade se aproxima de 0.0 ou 1.0. a derivada da função sigmoidal se aproxini}ade zero. Isto ocorre mesmo quando o erro é o maior possível. Como o ajuste de

pesos utiliza o valor da derivada. a unidade pode não ter seus pesos ajustadosou ajustá-los com um valor muito pequeno. Existem algumas propostas para

superar este problema, entre elas:

• utilizar uma medida de erro que tenda para infinito quando a derivada

da sigmoidal tender para zero [Fra87]:

• adicionar uma constante à derivada , evitando que o erro seja igual a zero[AG94];

• utilizar unia função de erro não-linear [AG94].

Em [PNH86] é apresentada a utilização de taxas de aprendizados diferentes

para os pesos de unia rede MLP. Os autores sugerem que a taxa de aprendizado

associada a cada peso de um nodo j seja inversamente proporcional ao fan-in

(número de conexões de entrada) de j. Esta técnica tem se mostrado adequa-

da quando a variação no fan-in é muito grande. Os autores também sugerem

que o termo momentum seja variado durante o treinamento: muito pequeno

no início, devendo ser aumentado após a rede estabilizar sua taxa de erro. Al-guns artigos também sugerem que a taxa de aprendizado seja variada duranteo treinamento: inicialmente grande, a taxa deve ser reduzida quando a rede

parar de diminuir o erro quadrático médio.

Outro problema enfrentado por RNAs de um modo geral é o problema do

"esquecimento catastrófico-, quando , ao aprender novas informações, a redeesquece informações previamente aprendidas.

Conforme afirmado anteriormente, uma rede apresenta capacidade de gene-ralização quando classifica corretamente padrões não-utilizados no treinamentoou com ruído. A generalização ocorre através da detecção de característicasrelevantes do padrão de entrada. Assim, padrões desconhecidos são atribuídosa classes cujos padrões apresentam características semelhantes. A genera-lização também permite a tolerância a falhas. A seguir serão apresentadas

duas variações do algoritmo back-propagation.

6968

Page 44: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

4.3 Variações do back-propagation

Conforme exposto anteriormente, o algoritmo back-propagation padrão é muito

lento para várias aplicações, e seu desempenho piora sensivelmente para pro-blemas maiores e mais complexos. Mesmo para problemas relativamente sim-

ples, o algoritmo back-propagation geralmente requer que todos os padrões de

treinamento sejam apresentados centenas ou até mesmo milhares de vezes. Istolimita a utilização prática deste algoritmo, permitindo apenas o treinamentode pequenas redes, com poucos milhares de pesos ajustáveis. Embora algunsproblemas do mundo real (problemas práticos) possam ser tratados utilizan-do redes deste tamanho, a maioria dos problemas em que a tecnologia neural

poderia apresentar uma solução adequada demandaria redes maiores e maiscomplexas.

Desde a sua criação, várias alterações do algoritmo back-propagation têm

sido propostas visando tanto a acelerar seu tempo de treinamento como amelhorar seu desempenho na classificação de padrões. Destas variações, as mais

utilizadas são back-propagation com momentum [RM86], Quickprop [Fah88],

Levenberó Marquardt [HM94], momentum de segunda ordem [Pea92], Newton

[Bat91] e Rprop [Rie94].

4.3.1 Algoritmo Quickprop

O algoritmo back-propagation utiliza a primeira derivada parcial do erro to-

tal referente a cada peso para ajustar cada um dos pesos. Esta informaçãopossibilita realizar um gradiente descendente no espaço de pesos. A descidado gradiente utilizando passos infinitesimais garante a chegada a um mínimolocal que, para vários problemas, pode ser um mínimo global ou uma soluçãoaceitável. O problema é o tempo que o treinamento pode levar para convergir.

O treinamento de uma rede MLP pode ser acelerado se for utilizada in-

formação sobre a curvatura da superfície de erro. O algoritmo Quickprop,

que foi desenvolvido por Scott Fahlman [Fah88], é um método de segunda

ordem que utiliza uma heurística baseada no método de Newton [Bat91]. Aprincipal diferença em relação ao back-propagation padrão é que, para cada

peso, independentemente, são utilizadas as inclinações anterior e atual do erro.Quickprop considera que a superfície de erro é localmente quadrática (formandouma parábola) e procura saltar da posição atual na superfície para o ponto demínimo da parábola. A equação para ajuste dos pesos é ilustrada na Equação4.24

Sw(t) = S(t) SSt(t 1) bw(t - 1) (4.24)

onde S(t) e S(t - 1) são os valores atuais e passados de 7jj , respectivamente.Como pode ser observado, o cálculo é muito simples e precisa apenas da infor-mação local do peso a ser reajustado. Embora o valor calculado seja apenas

uma aproximação para o valor ótimo do peso, segundo [Fah88]. este algoritmofunciona bem.

Utilizando a Equação 4.24, se a inclinação atual for menor que a inclinaçãoanterior, mas na mesma direção, o peso será ajustado na mesma direção. Otamanho do ajuste depende de quanto a inclinação foi reduzida no ajuste ante-rior. Se a inclinação atual for na direção oposta à inclinação associada ao ajusteanterior, isto significa que o aprendizado passou por um ponto de mínimo eque o aprendizado está no lado oposto do vale. Neste caso, o próximo ajusteserá para uma posição entre a posição anterior e a posição atual. Para o últimocaso, quando a inclinação atual estiver na mesma direção que a inclinação doajuste anterior, mas com uma inclinação maior ou igual à inclinação anteri-or, Fahlman sugere a utilização de um limite para o ajuste de pesos. Assim,ajuste o de um dado peso não pode ser maior que o seu último ajuste multi-plicado por uma constante. Maiores detalhes do algoritmo Quickprop podemser encontrados em [Fah88].

4.3.2 Algoritmo Rprop

O algoritmo Rprop, de resilient back-propagation, é um algoritmo de adap-tação global que realiza treinamento supervisionado batch em redes do tipoMLP [Rie94]. Este algoritmo procura eliminar a influência negativa do valorda derivada parcial na definição do ajuste dos pesos. Esta influência negativaocorre porque, quando a saída de um nodo for próxima de 0 (ou 1) e a saídadesejada for 1 (ou 0), a derivada será próxima de 0, fazendo com que os pesosdeste nodo recebam um ajuste mínimo. quase igual a O.

O algoritmo Rprop elimina este problema utilizando apenas o sinal daderivada, e não o seu valor. O sinal indica a direção do ajuste dos pesos (au-mentar ou diminuir o peso anterior). O tamanho do ajuste dos pesos é dadopor um "valor de atualização' A,. conforme indicado pela Equação 4.25.

70 1 71

Page 45: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

4.5 Conclusão

íAu^^; _ +^ii . se - < 0

0 , caso contrário

(4.25) Foi apresentado neste capítulo o modelo de redes perceptron multicamadas.ou redes MLP. Foram descritas suas características principais e discutidos seus

problemas, principalmente no que diz respeito ao seu treinamento com o al-

goritmo back-propagatión. Foram também apresentadas duas variações deste

algoritmo, os algoritmos Quickprop e Rprop.O valor de atualização Oji é definido por um processo de adaptação que

depende do sinal da derivada do erro com relação ao peso a ser ajustado:

rl+Oji (t - 1) . se OE(1-1) DE(i) > 0Oiv,

JE(t- rJE'Oii(t) .ii(t - 1) . se 1)

1 ) < 0 (4.26)ll^

Dii(t - 1) , caso contrário

onde 0 < g- < 1 < rl+.

Segundo a regra de adaptação utilizada por Rprop, quando a derivadaparcial do erro em relação a uni peso wii mantém o seu sinal, o que indicaque seu último ajuste reduziu o erro cometido, o valor de atualização Dii éaumentado pelo fator rl+, acelerando a convergência do treinamento. Quandoa derivada parcial muda de sinal, o que indica que o seu último ajuste foigrande demais, o valor de atualização JJi é reduzido pelo fator 7l-, mudandoa direção do ajuste.

4.4 Aplicações

Redes perceptron multicamadas são as redes mais utilizadas em aplicações deRNAs, parte por sua facilidade de implementação, parte por sua simplicidade.Estas redes têm sido utilizadas para uma grande variedade de aplicações, comopor exemplo:

• reconhecimento de caracteres [D+96];

• previsão do comportamento de ações na bolsa [Yod94];

• verificação de assinaturas [MWG88];

• segurança em transações com cartões de crédito [RC94];

• diagnóstico médico [BRG95].

No início deste capítulo foi comentado que uma das principais dificuldades

encontradas para treinar redes com mais de uma camada está na geração das"representações internas para as camadas intermediárias. O algoritmo back-

propagation treina redes do tipo XILP, gerando estas representações de forma

automática.

Existe um equilíbrio entre precisão e rapidez. Em algumas aplicações. é

preferível ter unia classificação errada do que nenhuma classificação. Eni ou-tras, quando a rede neural está em dúvida entre mais de urna classe, é preferívelque a rede rejeite o padrão de entrada, não o classificando em nenhuma das

classes.

Nos últimos anos tem havido um crescente interesse no desenvolvimento

de RNAs construtivas, em que a estrutura da rede é definida dinamicamentedurante o seu treinamento. Esta mudança pode envolver a eliminação de nodos

e/ou conexões da rede, acréscimo de nodos e/ou conexões à rede ou unia com-binação destes dois processos. Uma rede construtiva que tem sido amplamente

utilizada é a rede Cascade Correlation [FL88]. Redes Construtivas e técnicas

de pruning serão discutidas nos capítulos seguintes.

4.6 Exercícios

1. Imagine que você treinou uma rede do tipo MLP para reconhecerum conjunto de figuras. Cada nodo da última camada foi treina-

do para reconhecer figuras de urna dada classe. Como você podedescobrir quais subfiguras são reconhecidas pelos nodos da camada

intermediária?

2. Quando se justifica utilizar uma camada, duas camadas (1 inter-mediária) e três camadas (2 intermediárias), e que tipos de funçõespodem ser implementadas em cada caso?

72 73

Page 46: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

3. Como pode ser definido o número indicado de nodos para as camadas

intermediárias de uma rede MLP?

4. Desenhe uma rede MLP com apenas um nodo na camada interme-

diária que resolva o problema do OU-EXCLUSIVO.

5. Entre 0.8 e 0.2, que taxa de aprendizado você utilizaria para treinaruma rede MLP quando os padrões de uma mesma classe são seme-

lhantes a alguns padrões de outras classes? E se eles forem bastantediferentes?

6. O que são mínimos locais? Como sair deles?

7. Por que back-propagation é chamado de regra delta generalizada?

8. Por que se utiliza gradiente descendente para treinar redes do tipoMLP?

9. Qual a diferença entre aprendizado batch e on-line quando back-

propagation é utilizado e qual a situação ideal para cada uma destas

abordagens?

10. Desenhar uma rede do tipo MLP completamente conectada comduas camadas de nodos, sendo 2 nodos na primeira camada e 1 naúltima. Admitir taxa de aprendizado igual a: 0.4; pesos iniciais

iguais a: 0.3, -0.4, 0.1, 0.3, 0.0, 0.5, -0.6 e 0.1, na primeira camadae 0.7, -0.4, -0.2 e 0.2, na segunda camada; função de ativação iguala: função sigmoidal com limiar de 0.6.

a. Ensinar a rede utilizando no máximo três apresentações doconjunto de treinamento e gerar a resposta desejada indicada paraos padrões abaixo (saída desejada = 0: classe 0 e saída desejada =1: classe 1), mostrando os pesos finais da rede.

entrada = 0011 saída desejada = 0

entrada = 1110 saída desejada = 1

b. Enumerar três modificações que melhorariam o desempenhoda rede.

c. Definir a classe dos padrões:

entrada = 0010

entrada = 1111

entrada = 0111

entrada = 0101

11. O que aconteceria se você inicializasse todos os pesos da rede MLP

da questão anterior com o valor 0.0?

12. Considerando que os padrões de entrada têm apenas três elementos,quantas e quais funções booleanas podem ser implementadas poruma rede MLP com uma camada intermediária?

13. Projetar e treinar uma Rede Neural para resolver o problema doOU-EXCLUSIVO.

74 1 75

Page 47: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capítulo 5

Memórias Matriciais

5.1 Introdução

Veste capítulo serão abordados os principais modelos de memórias matri-ciais conhecidos na literatura: modelo não-linear de Willshaw [W\'BLH69].

modelo linear de Kohonen e Anderson [Koh74, And68, And701, memória li-near ótima (Optimal Linear Associative Memory-OLAM) [Koh89], modelo deHopfield [Hop82, Hop84].

Descreveremos inicialmente o modelo não - linear de Willshaw [W BLH69] de-vido à sua grande importância histórica . Neste modelo , os pesos são bináriose os neurônios executam funções de ativação não-lineares. Seguindo a ordemcronológica , será apresentado o modelo linear descrito por Kohonen e Ander-son [Koh72 , And68, And70]. A idéia básica deste modelo é semelhante à domodelo de Willshaw , porém nos trabalhos de Kohonen e Anderson os rodosexecutam funções de ativação lineares. Tanto no modelo de Willshaw quantono modelo linear de Kohonen e Anderson , o armazenamento se dá pela apli-cação da regra de Hebb [Heb49 ]. Uma forma alternativa de armazenamento foitambém descrita por Kohonen, sendo conhecida como OLAM ( Optim. al LinearAssociative Memory) [Koh89], a qual será também descrita neste capítulo.

Uma vez descritos os modelos básicos de memórias matriciais, é possívelentão promover uma mudança gradual para a descrição do modelo de Hopfield[Hop82, Hop84]. Neste, as saídas dos nodos são ligadas às entradas por meio deum atraso de tempo, o que dá ao mesmo características temporais. Em algunscasos na literatura, este modelo é classificado juntamente com outros modelosdinâmicos. Porém, devido às suas semelhanças com os modelos descritos ante-

77

Page 48: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

riorinente, resolveu-se, por questões didáticas, descrevê-lo juntamente com asoutras memórias matriciais.

5.2 Modelo não-linear de Willshaw

As idéias propostas por Willshaw em sua tese de doutorado [Wi171] na Uni-versidade de Edimburgo, Escócia, publicadas parcialmente dois anos antes narevista Nature [WBLH69]. foram influenciadas pelos trabalhos de Gabor so-bre memórias associativas óticas [Wi171]. A idéia de Willshaw era constru-ir memórias associativas com estruturas de uma única camada de neurôniosnão-lineares com conexões sinápticas binarias. Em outras palavras, os pesosbinários indicam a existência ou não de conexão. Embora o modelo de Will-shaw tenha uma boa capacidade de armazenamento para vetores de entrada esaída devidamente codificados, sua capacidade de generalização é limitada, co-mo será visto mais adiante. De uma maneira genérica, uma memória matricialenvolve a geração de um padrão de ativação no conjunto de nodos de saída emfunção do aparecimento de um determinado padrão de ativação de entrada. Omapeamento entre o padrão de ativação de entrada e o de saída é feito atravésde uma transformação matricial, que pode ou não ser acompanhada de umaoperação não-linear, como é o caso do modelo de Willshaw. A Figura 5.1mostra a estrutura genérica de uma memória matricial, onde podem ser iden-tificados o grupo de neurônios de entrada A e o grupo de neurônios de saída

B conectados através da matriz de pesos W. A matriz de pesos faz então atransformação entre o padrão de ativação dos neurônios A e B.

Conforme citado anteriormente, a matriz de pesos do modelo de Willshaw éobtida através da regra de Hebb [Heb49] acompanhada de uma transformaçãonão-linear para a obtenção de uma matriz de pesos binária. A regra básicapara a obtenção dos elementos da matriz W através do armazenamento deum conjunto de associações p na forma [x', yi], onde xi representa o vetor deentrada e y' o vetor de saída, é mostrada a seguir na Equação 5.1.

wij = 9(E yi`x^) (5.1)u

onde u identifica uma associação e a função g(x) é definida pela Equação 5.2.

g(x) { 0 x < 1 (5.2)

A recuperação do vetor yµ, dados o vetor de entrada xM e a matriz de

pesos W, é obtida através da aplicação de uma função de limiar c(x) sobre o

Figura 5.1: Estrutura genérica de uma memória matricial. Os neurônios A

correspondem ao padrão de ativação de entrada, e os neurônios B, ao padrãode ativação de saída.

produto Wxt`, conforme indicado na Equação 5.3. Segundo Willshaw [Wi171],o limiar da função 4)(x) deve ser igual ao número de elementos ativos em xµ,já que este é o valor máximo de cada elemento do vetor Wx# quando não háinterferência na sua recuperação.

(Y`)F = D((Wx"))

Quando não há interferência no armazenamento, tem-se a situação ótima(y")' = yP. Esta interferência será tanto maior quanto maior for o número deassociações armazenadas e quanto maior for a atividade' dos vetores de entrada

e saída, o que leva a uma maior saturação da matriz de pesos. Para evitar estasaturação e uma capacidade de armazenamento e recuperação de informaçãopobre, Golomb, Rubin e Sompolinsky, propuseram a utilização de vetores es-

parsos de entrada e saída [GRS90]. Desta forma, é possível armazenar umnúmero maior de associações com uma menor saturação da matriz de pesos.É também conhecido na literatura o modelo ADAM, que propõe uma modifi-cação no modelo de Willshaw com o objetivo de aumentar a sua capacidade degeneralização [AS87].

'Por atividade aqui entende-se a relação entre o número de '-Is" e "Os" nos vetores deentrada e saída.

78 1 79

Page 49: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

5.2.1 Um exemplo de utilização da memória de Willshaw

Considere os vetores indicados a seguir para gerem armazenados em unia me-mória de \Willshaw. As associações a serem armazenadas são [xl.yl] e [x2.y2].

xl = y1 9x- _ y- =

A matriz de pesos obtida aplicando-se a regra descrita nas Equações 5.1 e5.2 é apresentada a seguir.

0 0 1 1 1 0 0 0\1 0 1 0 1 0 .0 .00 0 1 1 1 0 0 0

w =0 0 0 0 0 0 0 01 0 1 0 1 0 0 01 0 1 0 1 0 0 00 0 1 1 1 0 0 00 0 0 0 0 0 0 0

Suponha que agora se deseja recuperar a associação [x2. y2]. ou seja, dadoo vetor x2, espera-se obter o vetor y2 na saída da rede na situação ideal.,sem interferência no armazenamento. A aplicação da regra apresentada naEquação 5.3 resulta inicialmente em (Wx2) = (3 2 3 0 2- 2 3 0)T e

então em (y2)' = (1 0 1 0 0 0 1 0)T após aplicação da função (D(x) comlimiar igual a 3. O vetor obtido é exatamente igual ao vetor que se desejava

recuperar, ou seja, a informação armazenada foi recuperada sem erro para este

caso. O mesmo ocorre para a recuperação da associação [xl. y'], como o leitorpoderá verificar.

5.2.2 Capacidade de recuperação de informação

A saturação da matriz de pesos W leva então a uma deterioração da ca-pacidade de armazenamento e à recuperação de informação da memória de

80

\\'illshaw. Isto pode ser facilmente observado ao se considerar o armazena-incuto de uni terceiro par [x3 . y3]. onde x^1 = (1 1 1 1 1 1 1 1)T e

y3 = (1 1 1 1 1 1 1 1)^ . Após a adição desta terceira associação.a aplicação da regra de aprendizado descrita em 5.1 leva a matriz W a tertodos os seus elementos em 1. Desta forma, a rede perde a sua capacidadede recuperar as associações [x'. y'] e [x2. ys]. O armazenamento da associação[x3. y3] causa então unia interferência destrutiva na recuperação das associações

[x3 . Y'] e [x2 . y']. Portanto . o Nível de atividade dos vetores armazenados deve

ser baixo . de forma a manter uni baixo nível de saturação da matriz de pe-sos e conseqüentemente unia boa capacidade de recuperação de informação[GRS90]. Como se pode ver nos resultados experimentais mostrados no gráficoda Figura 5.2. quanto maior a saturação da matriz W. menor a capacidade derecuperação de informação. Isto sugere que a predição da saturação da matriz

de pesos ou . em outras palavras. da conectividade da rede é uma boa medida da

capacidade de recuperação de informação da memória de Willshaw. Equaçõespara prever a saturação da matriz W como função do nível de atividade dosvetores de entrada e saída foram apresentadas por Braga et al. [BAPT97].Com as equações apresentadas. é possível prever qual deve ser o nível de ativi-dade dos vetores de entrada e saída de fornia a manter a conectividade da rededentro de determinados limites preestabelecidos , de forma a manter uma boa

capacidade de recuperação de informação . Considerações sobre a capacidadede armazenamento considerando-se as distribuições dos vetores de entrada e

saída foram feitas por Graham e «•illshaw [GW95].

5.3 Modelo matricial linear

De maneira similar a outros modelos de memória matricial, a estratégia de

treinamento para a memória matricial linear [Koh72. And68, And70] tambémse baseia na regra de Hebb [Heb49] para a geração da matrix de pesos W. Estemodelo se diferencia daquele proposto por Willshaw, descrito na seção anterior,

pelo fato de que não são aplicadas não-linearidades na matriz de pesos nem nas

saídas dos nodos. A regra geral para a obtenção da matriz de pesos W para oarmazenamento de p associações na forma [x', y'] é descrita na Equação 5.4.

que nada mais é do que a Equação 5.1 escrita na forma de produto dos vetores

y' e (xI')T e sem a não-linearidade g(x).

PW= E y'(x/')T

{i=1

onde (xP')T é a transposta do vetor de entrada x1'.

81

v

Page 50: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

0.1 0.2 0 .3 0.4 0 .5 0.6 0 .7 0.8 0.9 1.0

a

Figura 5 .2: Relação entre a conectividade da rede e a capacidade de recu-

peração de informação da memória"de Willshaw para n = 16. Como se pode

observar , quanto maior a conectividade , menor a capacidade de recuperação

de informação . O fatora corresponde ao percentual de elementos ativos nos

vetores de entrada e saída (caso auto-associativo).

O elemento w2j da matriz de pesos é portanto a soma dos produtos de

todos os elementos yµ e x^ , onde p = 1, 2, • , p. A Equação 5.4 pode

também ser escrita, de maneira equivalente, na forma matricial W =- YXT,

onde Y = [y', y2, • • • , yP] e X = [xl, x2, • • • , xP]. A recuperação de uma asso-

ciação arbitrária [xt`, y!`] dado xF` é obtida através do produto de W por xF', de

maneira análoga ao modelo de Willshaw, porém sem a aplicação da função de

ativação 1(x). Na seção seguinte será apresentado um exemplo de utilização

da memória matricial linear.

5.4 Exemplo de utilização da memória matricial

linear

Como exemplo, considere os três pares de vetores indicados a seguir para seremarmazenados em uma memória matricial linear. De maneira análoga ao exem-plo dado para a memória de Willshaw na seção anterior, as associações a serem

armazenadas são [xl, y1] e [x2, y2].

xl =

0.00-0.15-0.29

0.88-0.29-0.15

0.000.000.000.00

y1

1.001.000.001.000.000.001.000.000.000.00

x2 =

0.000.00

-0.06-0.09-0.40

0.000.890.00

-0.30-0.15

y2 =

0.000.000.001.001.001.000.000.000.000.00

A matriz de pesos resultante, segundo a Equação 5.4, pode então serobtida pela soma- de produtos cruzados dos elementos dos vetores de entra-da e saída: W = yl (xl )T + y2(X2 )T. Uma vez obtida a matriz de pesos,pode-se então recuperar uma determinada associação dado apenas o vetor de

entrada. Considere, como exemplo, a recuperação do vetor y1, dado o ve-tor x1, que pode ser obtida através da regra (y1)' = Wx1. O vetor obtido(y')' _ (0.988 0.988 0.000 1.042 0.054 0.054 0.988 0 0 0)T se aproximabastante do vetor desejado y1. A mesma operação realizada para o par [x2, y2]

resulta em (y2)' = (0.054 0.054 0 1.131 1.076 1.076 0.054 0 0 0)T, quetambém é bastante próximo do vetor desejado y2. Como pode ser observadopara ambos os casos, existe um termo residual para cada elemento do vetorobtido que parece deslocar o resultado da solução ótima. Este resíduo, queé inerente ao processo de armazenamento de informação pela regra de Hebb[Heb49], é função das representações vetoriais dos elementos nos espaços de

entrada e saída. Como será visto na seção seguinte, este termo somente seránulo, resultando em recuperação ótima dos vetores de saída, quando os vetoresx' forem ortogonais entre si.

5.4.1 O termo de crosstalk e sua influência na capacidade derecuperação de informação

Conforme mostrado na seção anterior, a recuperação de informação no modelolinear depende de um termo residual, que é uma medida da forma de represen-

tação dos vetores de entrada e de quão ortogonais estes vetores são entre si.Este termo é conhecido como termo de crosstalk e está presente em quase todosos modelos de memórias matriciais. Uma expressão para o termo de crosstalkpode ser facilmente obtida das equações de armazenamento e recuperação deinformação descritas na seção anterior. Considere que sejam armazenadas p

associações na forma [x', y'], onde i = 1, 2, • • • , p. Conforme descrito anterior-

82 1 83

Page 51: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

mente, a recuperação de uni vetor arbitrário y' pode ser obtida através daEquação 5.5:

(Y') = Wx'

Substituindo-se o valor de W resultante da Equação 5.4. obtém-se a Equação5.6:

v(y') _ Y'' (X,,) T xi

1i=1

Retirando do somatório acima o termo em que p = i, obténs-se a Equação5.7, que representa a expressão genérica para recuperação de informação emmemórias matriciais treinadas com a regra de Hebb.

utiliza produtos cruzados no armazenamento. Unia solução para anular o ter-

mo de cr•os.stalk é ortogonalizar os vetores de entrada. conforme mostrado de

maneira esquemática na Figura 5.3 [BAP-97]. Embora esta solução propor-

cione unia capacidade de recuperação de informação ótima. o modelo assimobtido resulta em capacidade de generalização pobre [BAP+97]. Em modelos

não-lineares, como é o caso de redes de Hopfield [Hop82], pode haver recu-

peração ótima. mesmo havendo termo de crosstalk não-nulo, como será visto

mais adiante.

Ortogonalização

1)

(Y') = Y' (x')TX ' + Ê yr' (xr' )Txi

=1

Para se obter recuperação ótima do vetor y'. ou seja, para que (yi)' = yi.deve-se ter (x')Tx' = 1 e o segundo termo da Equação 5.7 nulo. A primeiracondição pode ser facilmente preenchida com a normalização dos vetores deentrada x', já que (xi)Txi = (X1)2 + (X)2 + + x„ = 11X'112. Porém, a se-

gunda condição depende sempre dos produtos vetoriais entre todos os vetoresde entrada x1' e o vetor chave x'. daí este ser chamado de termo de inter-ferência cruzada ou termo de crosstalk. Portanto, este segundo termo dependeda representação dos vetores de entrada e, obviamente, do número de vetores

armazenado, já que se trata de uni somatório. Para que seja nulo, deve-seter uma das duas condições satisfeitas: situação trivial em que somente uma

associação é armazenada ou os vetores de entrada ortogonais entre si. Para

o caso em que mais de uma associação é armazenada, que é a. situação alme-jada em RNAs, tem-se a expressão geral para recuperação de informação emmemórias matriciais lineares com vetores de entrada normalizados apresentadana Equação 5.8.

(y') = y' + y11(X )Tx,P1t=1

Portanto, o ruído na recuperação de informação neste modelo de RNA éinerente ao processo de armazenamento de informação por regra de Hebb, que

oMemóriamatricial

Figura 5.3: Ortogonalização como forma de melhorar a capacidade de ar-

mazenanlento de memórias matriciais lineares.

5.5 OLAM

Posteriormente à descrição da memória matricial linear [Ko1172, And68, And70]na literatura, Kohonen e Ruohonen mostraram que há uma solução ótima paraa matriz de pesos [KR73]. Apesar de não ter o mesmo apelo neurofisiológico da

regra de Hebb [Heb49], esta solução, conhecida como OLAM (Optimal Linear

Associative Meniory) [KR73, Koh89], permite o armazenamento da informação

sem armazenar também o termo de crosstalk, que, como já visto, causa degra-

dação na capacidade de armazenamento das memórias matriciais. O princípiobásico da OLAM é a utilização de técnicas de inversão de matrizes para a

solução da equação WX = Y, onde Y = [y1, y2, . • • , y1'] e X = [x1, X2,—. xr'].e p é o número de associações. Como se deseja obter os parâmetros W. uniavez conhecidos X e Y, a solução ótima para a matriz de pesos é apresenta-da na Equação 5.9, supondo a matriz X quadrada (n = p) e seus elementosxr' linearmente independentes. Obedecidas estas restrições, a recuperação de

informação é ótima, ou seja, (y')' = yi

84 85

Page 52: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

W = YX_1 (5.9)

onde X-1 representa a inversa de X.

Para a situação em que p < n e a independência linear entre os vetores deentrada é preservada, a solução ótima existe conforme Equação 5.10.

W = y(XTX)-1XT (5.10)

onde X* = (XTX)-1XT é a pseudo-inversa de X [KR73].

A pseudo-inversa minimiza a soma dos erros quadráticos HWX - Y112,proporcionando então solução ótima para a matriz de pesos W. Porém, ca-so haja dependência linear entre os vetores de entrada {xµ; u = 1, 2, • • • , p}, a

pseudo-inversa não existirá, já que X terá rank incompleto [Leo94], e a equaçãoWX = Y terá infinitas soluções. Neste caso, poderá ainda haver soluçãoatravés da teoria de regularização [TA77], que visa à eliminação da singulari-dade que surge na obtenção da inversa (XTX)-1 da Equação 5.9.

5.5.1 Exemplo de utilização da OLAM

Suponha, por exemplo , que se deseja armazenar em uma memória matri-cial linear com duas entradas e apenas uma saída as associações (x1, y1) e(x2,y2) considerando-se x1 = (0.1 - 0.2)T, y1 = 0.9, x2 = (0.7 0.3)T ey2 = 0.5. Como pode ser observado, os vetores de entrada x1 e x2 são li-nearmente independentes, o que implica a existência da inversa da matriz deentrada X = [x1, x2]. A aplicação imediata da regra de Hebb para o ar-mazenamento com os vetores de entrada normalizados resulta na solução W =(0.8621 -0.6080) e conseqüentemente em W_" Ì = 0.9294 e W TiJ = 0.5528,

que diferem um pouco das soluções exatas 0.9000 e 0.5000. Conforme des-crito anteriormente, este erro é devido ao termo de crosstalk. Por sua vez,a solução segundo a OLAM resulta em W = (0.8031 - 0.6047), que im-

plica W1-11 = 0.9000 e W Ti = 0.5000, que, por sua vez, correspondem

às soluções desejadas. Mesmo sem a normalização dos vetores de entrada, asolução por OLAM resulta na solução ótima.

Considere agora os vetores de entrada x1 = (0.3 -0.2)T e x2 = (-0.2 0.3)Tque, como pode ser verificado, são ortogonais, e os mesmos vetores de saída

y1 = 0.9 e y2 = 0.5. Para este caso, como tem-se x11x2, o crosstalk se anula

e a solução encontrada por Hebb é a mesma da solução ótima encontrada pelaOLAl\1: W = (1.0262 -0.0832). A dificuldade para se obter uma solução para

1.5

Figura 5.4: Visão esquemática das soluções encontradas pela OLAM e porregra de Hebb. Apesar de próximas nas superfícies de contorno, a solução porHebb gera resultados distorcidos devido ao crosstalk que aparece durante a

recuperação.

a matriz W surge quando há dependência linear entre os vetores de entrada.

Por exemplo . considere agora os vetores de entrada x1 = (-0.4 - 0.6)T ex2 = (0.2 0.3)T. Como pode ser verificado , os dois vetores são linearmente de-

pendentes , já que x1 = -2x2. Nesta situação , a pseudo-inversa não é definida,e a matriz W admite infinitas soluções, como pode ser observado no gráfico da

Figura 5.5 . Para que haja solução através da pseudo - inversa, uma alternativaé a eliminação da singularidade que aparece na inversão da matriz X por meioda teoria da regularização [TA77]. Desta forma, seria possível calcular a inver-sa e obter uma solução para a matriz W através da Equação 5.10 acrescida

do termo de regularização.

5.6 Modelo de Hopfield

0 modelo recorrente de Hopfield [Hop82], descrito em 1982, constituiu umgrande avanço na fronteira do conhecimento em RNAs e deu o passo inicial

86 1 87

Page 53: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Com isto. Hopfield associou o seu modelo recorrente a sistemas físicos e abriucaminho para que as teorias correntes da Física sejam aplicadas diretamente

para estudar as características do seu modelo.

O armazenamento e recuperação da informação consistem então na criação

de pontos fixos e em unia regra de atualização que defina a dinâmica (Ia rede. O

modelo de Hopfield é inerentemente auto-associativo. ou seja, para que sejam

criados pontos fixos através da recorrência. uni vetor é associado a ele mesmo.

Os pares de treinamento estão organizados então na forma r = {x'. x }1,=1.onde p é o número de associações. Unia outra característica do modelo de

Hopfield é que, na forma como foi descrito originalmente [Hop82], as saídas dos

nodos são discretizadas (do tipo MCP) e somente podem assumir valores -1 ou+1, já que suas funções de ativação são do tipo degrau com saturação nestesvalores. Posteriormente à descrição inicial. Hopfield mostrou que o modelocom saídas contínuas preserva as características do modelo discreto original[Hop84]. A Figura 5.6 mostra um diagrama esquemático da rede de Hopfield.

Figura 5.5: Superfície de erro para o caso em que os vetores de entrada são

linearmente dependentes. Como pode ser observado. há infinitos mínimos e,conseqüentemente, infinitas soluções para o problema.

para o ressurgimento do interesse pela área, que ficou adormecido por um

período de mais de 10 anos. O modelo descrito por Hopfield nada mais é doque um modelo matricial não-linear recorrente, ou seja. as saídas estão ligadas

às entradas por um atraso de tempo. De maneira análoga ao modelo de \Vill-shaw [NVBLH69], não-linearidades são aplicadas às saídas de cada uni dos no-

dos. A recorrência dá ao modelo características temporais que implicam que a

resposta da rede dependa sempre do seu estado no intervalo de tempo anterior.

O grande avanço proporcionado pelo trabalho de Hopfield foi, na verdade,o fato de ter mostrado que um valor de energia pode ser associado a cada es-tado da rede e que esta energia decresce de maneira monotônica à medida queunia trajetória é descrita no espaço de estados em direção a uni ponto fixo.Estes pontos fixos são, portanto, pontos estáveis de energia mínima criados

através do processo de treinamento. Cada um dos pontos fixos corresponde aum atrator, e os pontos do espaço ao seu redor que resultem na estabilização darede nestes atratores em tempo finito correspondem às suas bacias de atração.

X1

X2(Y-1 L -'

X3Q-1)^

)Ç-1

Afraso -^ '

Figura 5.6: Diagrama esquemático de uma rede de Hopfield.

O estado de uma saída arbitrária i no instante de tempo t + 1 é obtido

através da soma ponderada das entradas menos o limiar, conforme descrito naEquação 5.11. Para manter a estabilidade da rede, evitando realimentações

positivas, os elementos da diagonal da matriz de pesos wjj são nulos, ou seja.

não existe conexão de um nodo para si mesmo. Desta forma, o próximo estado

- X1 R)

X3(r)

88 89

Page 54: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

da saída i é função da soma ponderada das saídas dos outros nodos no instante

de tempo atual.

Pxi(t + l) = sgn E wijxj(t) - Bi

j=t

(5.11)

onde Oi é o limiar da unidade i, xi o seu estado, e a função sgn(.) é definida

pela expressão

sgn(x)= +1

-1se x>O

se x<0

A atualização das saídas é feita de forma assíncrona, ou seja, as saídas sãoatualizadas em tempos diferentes. Uma maneira prática de implementar estetipo de atualização é através da escolha aleatória de um dos k nodos a cadainstante de tempo diferente. O nodo selecionado deverá atualizar a sua saída

de acordo com a regra descrita na Equação 5.11.

Dada uma matriz de pesos qualquer , a condição de estabilidade de um vetor

x para esta matriz é sgn (> wjixj) = xi para todo i. Uma forma de satisfazerj

esta condição é fazer wij oc xixj , o que equivale a se fazer o treinamento por

regra de Hebb . Considere , por conveniência , a constante de proporcionalidade

para esta equação como sendo , o que leva a wij = -xixj, onde k . é o número

de nodos da rede. Assim, a condição de estabilidade é plenamente satisfeita,

já que a expressão se transforma em sgn(- xixjxj) = xi, que é verdadeiraj

para todo xi (observe que xi E {-1,+1} e xj E {-1,+1}).

A divisão do vetor de pesos por k é equivalente a se normalizar os ve-

tores de entrada x, que, conforme descrito nas seções anteriores, elimina partedo ruído na recuperação de informação em memórias matriciais com treina-mento por regra de Hebb, que é o caso do modelo de Hopfield. Neste caso,considerou-se apenas um único vetor a ser armazenado, e a regra de armazena-mento wij = -xixj para este vetor x garante a sua estabilidade. Nas seçõesseguintes será visto que esta regra pode ser facilmente extrapolada para o caso

de armazenamento de p vetores.

5.6.1 Exemplo de operação da rede de Hopfield

Considere como exemplo o armazenamento do vetor x = (-1 1 -1)T em umarede de Hopfield. A matriz de pesos obtida é apresentada na Equação 5.12.

(5.12)

Pode-se observar facilmente que o vetor x é estável , já que a aplicação da regrade atualização sgn(> wjixj) é igual a xi para todo i. Por outro lado, pode-se

jobservar também que o inverso de x é também estável , já que a aplicação daregra acima para o vetor x = ( 1 - 1 1)T também faz com que todos osseus elementos sejam estáveis quando a rede é inicializada em R. Esta é naverdade uma característica inerente ao processo de armazenamento em redesde Hopfield . Tendo a rede sido iniciada em quaisquer um dos pontos x ou x,ela permanecerá nestes pontos indefinidamente. Estes são então os dois pontosfixos criados no espaço de estados através do armazenamento do vetor x. Oespaço de estados da rede descrita acima ficará então dividido em duas regiõesdefinidas pelas bacias de atração dos vetores x e R.

Para verificar o processo de recuperação de informação, suponha. por e-xemplo, que a rede seja inicializada no estado inicial x(O) = (-1 - 1 - 1)T.

Como a atualização dos nodos é assíncrona, os nodos a terem suas saídasatualizadas são escolhidos um de cada vez de maneira aleatória. Suponha, paraefeito de ilustração do processo de recuperação de informação, que o primeironodo escolhido seja o nodo 2. A aplicação da regra de atualização descritaacima resulta em x(1) = (-1 1 - 1)T como sendo o próximo estado. no qualpermaneceria indefinidamente, já que este é um dos pontos fixos no espaço deestados. Suponha agora que o primeiro nodo a ter sua saída atualizada sejao nodo número 1. Nesta situação, após a aplicação da regra de atualização, opróximo estado da rede passa a ser x(1) _ (1 - 1 - 1)T. Supondo agora que

o próximo nodo a ser atualizado seja o nodo 2, o próximo estado da rede seráx(2) _ (1 1 -1)T. Escolhendo agora o nodo número 3, tem-se que o próximoestado da rede será x(3) = (1 1 1)T. Finalmente. caso o nodo 2 seja agoraescolhido, o estado final da rede será x(4) = (1 - 1 1)T, no qual permaneceráindefinidamente, já que este corresponde ao estado inverso x. que é tambémestável (Figura 5.7).

Como pode ser observado nos dois exemplos anteriores, a trajetória des-crita pela rede depende não somente do estado inicial x(0). mas também da

seqüência de atualização dos nodos. Para o mesmo estado inicial, chegou-sea estados finais diferentes devido a seqüências de atualização diferentes. A

90 1 91

Page 55: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

seqüência de atualização e. conseqüentemente, a trajetória descrita e o estado

final da rede dependem da forma como os rodos são selecionados, ou melhor.da função de densidade de probabilidade adotada nesta seleção. Tem-se, assim.probabilidades associadas a cada uma das possíveis transições. sendo que a rede

descreve. portanto. uma máquina de estados probabilística, tendo os estados

x e x como pontos finais das possíveis trajetórias. Durante esta trajetória.conforme mostrado por Hopfield [Hop82], a energia associada aos estados da

rede estará sempre descrescendo monotonicamente. conforme será descrito maisadiante.

O diagrama de estados com as respectivas probabilidades de transição para

a máquina de estados formada para o exemplo anterior é apresentado na Figura5.7 para o estado inicial x(O) = (-1 - 1 - 1)T. Como pode ser observado.

dado o estado inicial x(0). a rede sempre se estabilizará em uni dos pontosfixos x ou X, que são também atratores no espaço de estados.

1 /3

1,3

Figura 5.7: Máquinas de estados formada após o armazenamento de x =(-1 1 - 1)T a partir do estado inicial x(O) = (-1 - 1 - 1)T.

5.6.2 Minimização de energia

Conforme mostrado por Hopfield em seu trabalho original [Hop82]. é possível

associar uni valor de energia para cada estado da rede. Esta energia varia

de forma monotonicamente decrescente à medida que a rede evolui segundo a

regra de atualização de suas saídas, conforme será descrito a seguir. Para aresolução do problema de memória associativa descrito nas seções anteriores,

a função de energia associada aos estados da rede é apresentada na Equação

5.13:

Wi.ix;x.i (5.13)

Para verificar a forma da função de energia descrita pela Equação 5.13,

considere unia rede com apenas dois nodos em que o vetor x = (-1 + 1)T é

armazenado. Neste caso. conforme já descrito, o vetor x = (-1 +1)T também

será estável. Espera-se. portanto, que a função de energia obtida através doarmazenamento de x tenha dois mínimos: uni em x e o outro em R. A funçãode energia resultante do armazenamento de x segundo Equação 5.13 é apre-sentada na Figura 5.8, onde podem ser observados os dois mínimos referentes

a x e R. A descrição de unia trajetória no espaço de estados limitado pelos

pontos (-1. -1). (-1. +1). (+1. +1), (+1, -1) descreve também uma trajetóriacorrespondente sobre a superfície de energia. Como a variação desta superfície

de energia é monotonicamente descrescente, a rede se estabilizará em uni tem-

po finito em um dos dois mínimos.

Para unia rede de dimensão arbitrária k, é fácil mostrar que a energiavaria sempre de forma monotonicamente decrescente. Para o caso genérico.

considere agora que um nodo da rede 1 mude a sua saída do valor atual .rj para

o novo valor xl', onde .rj e xi' somente podem assumir os valores +1 ou -1. A

variação de energia resultante desta mudança de estado pode ser descrita de

forma genérica pela Equação 5.14.

AE=Et' - E,•, (5.14)

onde Et ^ representa a energia da rede para o valor atualizado x1 e EX, para o

valor corrente XI.

A Equação 5.14 pode então ser reescrita na forma apresentada pela Equação

5.15 e então simplificada para a forma da Equação 5.1.6.

92 93

Page 56: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

trário a xt, o que implica que para qualquer transição xt --> xít tem-se DE < 0,o que completa a nossa demonstração . Assim, -tem-se que a função de energiasempre diminui quando xt = x'1 e permanece constante quanto xt = xt, ouseja, a função de energia varia de forma monotonicamente decrescente, comose queria demonstrar.

Figura 5.8: Superfície de energia resultante do armazenamento do vetor x =(-1 1)T em uma rede de Hopfield com dois nodos. Os mínimos de energiacorrespondem ao ponto x = (-1 1)T e seu inverso x = (1 - 1)T

AE_ -2 (W12XIX2 +...+W1kxlxk.+W21x2x1 +...+w2kx2xk +...

u'tlxtxl + ... + wtkxtxk + ... + wklxkxl + ... + Wk(k-1)xkxk-1)+

1 (ZV12x1x2 + ... + Wlkxlxk + W21x2x1 + ... + w2kx2xk + ...

WI1xtxl + ... + wtkXtxk + ... + wklxkxl + ... +Wk(k_1)xkxk-1)

(5.15)

1DE=-2xiwlixi+ 2xt^wtixi (5.16)

Considerando-se agora que xj = -xt , a Equação 5 . 16 pode ser reescritaconforme apresentado na Equação 5.17.

AE = xi E 2l)1ixi

Sabe-se no entanto que xt = sgn wtixi ou seja, E wlixi tem sinal con-

5.6.3 Capacidade de armazenamento

Conforme mostrado anteriormente, a condição de estabilidade do bit i do vetorxt é representada pela Equação 5.18, que, conforme Equação 5.8, se reduz àEquação 5.19:1.0

xi = sgn wi.l xtj . (5.18)

xi = sgn xi + N xmx7 xi (5.19)

m#1

Para que haja instabilidade de x^1, é preciso que o termo de crosstalk C.2da Equação 5.19 tenha sinal contrário de x^ e que seja maior do que este emmódulo. Isto pode ocorrer em uma das duas situações seguintes : xt = -1 eCr > 1 ou x; = +1 e Cr < - 1. Portanto , a probabilidade de haver erro nonodo x^, pode ser descrita de forma genérica pela Equação 5.20

Perro = P(x^ = -1)P(Cr > +1) + P(xI = 1 )P(Cr. < -1) (5.20)

Considerando vetores x escolhidos de maneira aleatória, tem-se queP(xi = -1) = P(x = 1) = 12. Portanto , a Equação 5.20 pode ser escritana forma apresentada na Equação 5.21.

Perro = 1 P(Cr > 1) + 1 P(Cr < -1)2 2

(5.21)

Torna-se necessário, portanto, determinar a função de densidade de proba-bilidade de Cr para que as probabilidades P(Cr > 1) e P(C,. < -1) possam serestimadas. Considerando-se que no somatório que define Cr na Equação 5.21(5.17)

2Conforme mostrado pela Equação 5.8, o termo de crosstalk corresponde ao segundotermo dentro da função sgn(.) da Equação 5.19.

94 1 95

Page 57: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

1' seja o número de ocorrèncias de ls e kp seja o número total de termos do

somatório para A• nodos e p vetores armazenados, teia-se que a expressão paraC,. pode ser reescrita na forma apresentada na Equação 5.22:

Cr = Y- (h•P - Y)] = k [2Y - kp] (5.22)

Considerando-se que os vetores armazenados são escolhidos de maneiraaleatória . tens-se que P(Y) pode ser definido pela distribuição binomial [Fe150]descrita pela Equação 5.23:

_ ^•p 1 ^'^'P())-(1

A distribuição binomial definida por 5.23 pode ser aproximada por tiniadistribuição normal com média E[Y: = 1 e variância Q-(1') _ [Fel50].Então. a média do termo de cros.sta11 pode ser obtida pela Equação 5.22 epelas expressões para E[YI e O valor médio de C, pode ser entãodescrito pela Equação 5.2-1:

E[C i21' - kh)] = 0 (5.24)

De maneira análoga, a variância de C, pode ser também obtida conformemostrado nas equações seguintes.

or 2.C1] = E'(Cr)2] - E2[C,.]

o2[C.] = E [(2Y - kp)) 2] - 0

Q'[C,.] _ , {4E[1''] - 4kpE[Y] + kp2} ( 5.27)

Tem-se porém que E [y2 ] a2 + E2 Y 1 (^N)= (1'] [ ] _ 4 + d que nos leva àexpressão final para a variância de Cr apresentada na Equação 5.28:

01 2[x]=P

Temi-se , finalmente . que C, é uma variável aleatória distribuída conformeuma distribuição normal com média 0 e variância 2 . Como se trata de umadistribuição normal . tem-se que a mesma é simétrica em relação ao seu pontomédio, o que leva a P(Cr > 1) = P(Cr < -1) na Equação 5.21. Portanto, aEquação 5 . 21 pode ser reescrita na forma apresentada na Equação 5.29, onde

a função dentro cia integral foi obtida através da função de densidade de pro-babilidade padrão para unia distribuição normal com média Er X] e variância

+x 1 f C, ,

P^rró = P(C,r > 1) _ e 2,2 ^ du+ 27ra'(C,_)

(5.29)

Pela lei dos grandes números [Fe150], o valor de Pr,.,.,, obtido na Equação

5.29 representa o percentual do total de k nodos que deverão ter suas saídas

instáveis. Desta forma, é possível estimar o número máximo P,,,,,,,. de vetoresque podem ser armazenados de forma tal que o erro total na rede seja baixo.

ou seja. que o número total de nodos instáveis esteja abaixo de uni determi-

nado limite preestabelecido. Este efeito pode ser obtido ajustando-se o valorde na Equação 5.29. o que, obviamente. afeta o valor de P,,.,.,, e consegiien-

temente o número de nodos instáveis. Pode-se. assim. estimar o percentualdo número de nodos k de vetores que podem ser armazenados. Por exemplo.

para P,,.,.,, < 0. 01 o valor percentual máximo de vetores que podem ser ar-

mazenados em relação ao número de nodos é de aproximadamente 13.8W. Emoutras palavras. para unia rede de, por exemplo. 100 nodos, deve-se armazenar

no máximo 13 vetores para garantir uni percentual de erro menor que 1%.Existem vários trabalhos na literatura que tratam da capacidade de armazena-

mento de redes de Hopfield [\IPRV87. Per88, PGD85. Gar87]. Estes trabalhosutilizam diferentes técnicas para estimar a capacidade de armazenamento. en-

contrando também valores estimados diferentes para a mesma.

(5.23)

(5.25)

5.7 Conclusão

(5.26)

Este capítulo apresentou os principais modelos de memórias matriciais. des-de o modelo histórico de Willshaw até o modelo recorrente de Hopfield. Porutilizarem basicamente conceitos de álgebra linear para definir suas matrizes

de pesos e por terem somente urna camada de nodos, estes modelos são re-lativamente fáceis de serem entendidos. Após a apresentação de RNAs comaprendizado supervisionado nos capítulos anteriores, este capítulo apresen-tou exemplos de modelos de RNAs em que o aprendizado é do tipo não-

supervisionado, e cujos conceitos básicos servirão de base para o estudo dasredes auto-organizativas no próximo capítulo.

(5.28)

96 97

Page 58: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

5.8 Exercícios

Para os dois exercícios que se seguem, implementar em programa de computa-

dor as rotinas para as soluções das questões propostas.

1. Implementar uma rede para o reconhecimento de caracteres utilizandomemória matricial não-linear de Willshaw (objetivo: verificar o desem-penho do modelo de Willshaw no reconhecimento de caracteres), percor-

rendo os seguintes passos:

a. implementar rotina de multiplicação de matrizes;

b. definir matrizes de caracteres de entrada e saída (treinar no modo

auto-associativo, ou seja, vetor de saída = vetor de entrada);

c. armazenar o conjunto de caracteres e verificar a sua recuperação;

d. análise dos resultados em termos de capacidade de recuperação egeneralização (recuperação de versões ruidosas dos caracteres originais);

e. sugerir estratégias para melhorar o desempenho deste modelo (vide

método de ortogonalização para memórias lineares).

2. Ortogonalizar dados em memórias matriciais lineares (objetivo: verificar

a melhoria na capacidade de armazenamento através do método de or-

togonalização de Gram-Schmidt). percorrendo os seguintes passos:

a. implementar rotina de multiplicação de matrizes;

b. definir vetores de entrada e saída de forma randômica;

c. normalizar vetores de entrada e saída e armazená-los;

d. ortogonalizar os vetores armazenados acima e armazenar numa

nova matriz;

e. comparar capacidade de recuperação e generalização.

Capítulo 6

Redes Self-Organizing

Este capítulo será dedicado a uma classe de RNAs que possuem a capaci-dade de auto-organização, sendo por isto chamadas de redes self-organizingou auto-organizativas. Após apresentar as principais características destas re-des, duas representantes desta classe, as redes SOM [Koh89] e as redes ART

[CG88, CG87a, CG90], serão analisadas em detalhes. Ao longo deste capítulo,serão discutidas as principais aplicações que foram desenvolvidas utilizandoestes modelos.

Uma das principais características das RNAs é a sua capacidade de apren-

der através de exemplos, sem a necessidade de serem explicitamente progra-madas. Redes que utilizam o paradigma de aprendizado supervisionado, emque um supervisor externo fornece informações sobre respostas desejadas para

os padrões de entrada, limitam o seu campo de aplicação àqueles onde estesdados são conhecidos. Existem várias aplicações em que é necessário que arede seja treinada sem um supervisor externo ou punição/recompensa. Nestescasos, a única informação fornecida está no conjunto de padrões de entrada.Desta forma, estas redes definem seus parâmetros por si próprias, sem auxílioexterno. Esta é a idéia central dos modelos self-organizing, os quais utilizam oparadigma de aprendizado não-supervisionado. Estes algoritmos utilizam umconjunto de regras de natureza local para o ajuste dos pesos.

As redes self-organizing são mais semelhantes às estruturas neurobiológicasque as redes supervisionadas. A estrutura básica de modelos self-organizing éformada por uma camada de entrada, fonte, e uma camada de saída, repre-sentação. Existem também estruturas com várias camadas, em que o processoself-organizing segue de camada em camada [Fuk75, Fuk80]. Estes modelos

98 1 99

Page 59: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

utilizam conexões feedforumrd entre cada camada e a camada seguinte, alémde. em vários casos, conexões inibitórias entre nodos da camada de saída.

RNAs self-organizing possuem uni amplo leque de aplicações potenciais.principalmente em problemas de reconhecimento de padrões e categorizaçãode dados em que as classes não são conhecidas a priori.

Uni dos princípios da utilização de modelos self-organ :ing para problemasde reconhecimento de padrões é o de que padrões que compartilham carac-terísticas comuns devem ser agrupados. com cada grupo de padrões represen-tando unia e apenas unia classe (embora unia mesma classe possa ser repre-

sentada por mais de um agrupamento). Para realizar este agrupamento. umalgoritmo self-organizing precisa encontrar características ou padrões significa-tivos nos dados de entrada. sem o auxílio de uni professor ou crítico externo.

Isto é possível apenas se Houver redundância nos dados de entrada. Enquanto a

redundância fornece conhecimentos à rede sobre similaridades e diferenças en-

tre estes dados, a ausência de redundância torna impossível encontrar padrõesou características nos padrões. A ausência de redundância torna os dadossemelhantes a ruídos aleatórios.

Existem vários modelos de R\As self-organizing. cada uni com suas pecu-liaridades e propósitos. Com relação ao algoritmo de treinamento utilizado.eles podem ser divididos em dois grandes grupos:

• aprendizado competitivo:

• aprendizado hebbiano.

Quando o aprendizado competitivo é utilizado, os nodos competem en-tre si pelo direito de atualizar seus pesos. Estes algoritmos de aprendizado

têm sido mais utilizados em problemas de classificação, de extração de carac-terísticas, compressão de dados e formação de clusters (agrupamentos). Ex-emplos de redes que utilizam aprendizado competitivo são os modelos ART[CG88, CG87a. CG90] e SOM [Koh89].

O aprendizado hebbiano, por outro lado, é baseado no princípio para atu-alização dos pesos proposto pelo neurofisiologista Hebb em The Organizationof Behaviour [Heb49]. As principais áreas onde este algoritmo tem sido uti-lizado são extração de características, análise de dados e memória associativa.Exemplos de Redes que utilizam esta forma de aprendizado são os modelos

de Hopfield [HopS2]. Linsker [Lin86c, Lin86a. Lin86b] e redes PCA (Principal

Co m.ponent Analysis) [BH89].

De acordo com von der l\Ialsburg [d.\I73]. os algoritmos self-organizing

acompanham os seguintes princípios:

• Modificações dos pesos associados às conexões tendem a atunentar estes

pesos.

• Limitações de recursos levam à competição entre as sinapses e à seleção

das mais aptas em detrimento das outras.

• Diferentes modificações nos pesos tendem a cooperar entre si.

Os três princípios expostos acima referem-se à rede. Para que seja desen-volvida unia função de processamento útil durante o processo de aprendizagem,

é necessário que haja redundância nos padrões de entrada. Segundo Barlow

[Bar89]:

• A redundância dos padrões de entrada fornece o conhecimento incorpo-

rado à rede.

• Parte deste conhecimento pode ser obtida por meio da observação deparâmetros estatísticos (média, variância e matriz de correlação do vetor

de entrada).

• Ao incorporar este tipo de conhecimento, a rede aprende a distinguir

padrões nos dados de entrada.

• Este conhecimento é necessário para o aprendizado não-supervisionado.

Diversas redes têm sido desenvolvidas obedecendo os princípios apresenta-

dos acima, podendo assim ser caracterizadas como redes self-organizing. Um

dos primeiros modelos de rede self-organizing foi proposto por von der Mals-

burg [dM73]. Von der Malsburg propôs uma simples RNA self-organizing que,

treinada com um algoritmo de treinamento muito simples, reproduz as pro-

priedades funcionais de algumas células encontradas no córtex visual.

Os modelos de redes self-organizing analisados neste capítulo são os mapas

self-organizing de Kohonen [Koh89], baseados em aspectos neurofisiológicos.

e a família de redes ART de Grossberg e Carpenter, baseadas na Teoria de

Ressonância Adaptativa [CG88, CG87a, CG90].

100 101

Page 60: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Os mapas self-organizing de Kohonen [Koh89], também conhecidos como

redes de Kohonen ou redes SOM, utilizam o aprendizado competitivo e as-sumem uma estrutura topológica entre seus nodos. Esta propriedade, embo-

ra observada no cérebro, praticamente não é utilizada em outros modelos deRNAs. A família de redes ART possui forte inspiração biológica e cognitiva.

A primeira rede ART proposta, a rede ART 1 [CG87b], trabalha apenas com

valores binários. Posteriormente foi desenvolvida a rede ART 2 [CG87a], quese diferencia da ART 1 por permitir também valores de entrada contínuos. Ou-

tros modelos da família ART são as redes ART 3 [CG90], ARTMAP [CGR91a],

Fuzzy-ART [CGR91c] e Fuzzy-ARTMAP [CGM+91].

Redes self-organizing têm sido utilizadas para problemas tão diversos como:

• Mapeamento da voz para comandos de datilografia [Koh88];

• Reconhecimento de padrões [CG88];

• Previsão [LK89];

• Monitoramento de qualidade de água [MDC95].

Detalharemos nas seções que se seguem cada um dos modelos apresentados

acima.

6.1 Redes ART

Uma das mais importantes características das RNAs é a sua habilidade de

generalização, ou seja, produzir respostas para padrões de entrada que sãosimilares, mas não idênticos, aos padrões apresentados à rede durante o seutreinamento [Fau94]. Quando uma rede multicamadas é treinada com o algo-

ritmo back-propagation, por exemplo, espera-se que ela forneça como resposta

a classificação correta correspondente ao padrão de entrada, e que ela conti-nue a responder satisfatoriamente a quaisquer padrões de entrada apresentadosfuturamente. Entretanto, o conhecimento a respeito de determinado domíniodo mundo real pode se modificar ao longo do tempo. O mesmo acontece comos padrões de entrada de uma RNA, que podem se modificar com o tempopara acomodar mudanças ocorridas. Assim, para um número de aplicações, o

desempenho da rede pode decair gradativamente à medida que o tempo passa,uma vez que os pesos definidos na fase de treinamento não refletem as novassituações. Para adaptar novos padrões de entrada indefinidamente, um algo-

ritmo de aprendizado de RNAs deve ser plástico [HKP91].

Uma alternativa para solucionar este problema seria retreinar a rede com osnovos padrões. de entrada. Entretanto, isto pode levar à perda de informaçõesaprendidas anteriormente. Para preservar o conhecimento previamente aprendido, um algoritmo de aprendizado de RNAs deve ser não somente plástico, mastambém estável [HKP91]. Uma outra solução seria retreinar a rede freqüente-mente com os novos e os antigos padrões. Isto resolveria o problema, mas estálonge de representar uma solução viável. Este conflito é conhecido como dilemaestabilidade-plasticidade [Gro76b, Gro76a], e envolve as seguintes questões:

• Como um sistema de aprendizado pode ser projetado para se adaptarindefinidamente em resposta a padrões significativos e ainda assim con-tinuar indiferente a padrões irrelevantes?

• Como pode um sistema de aprendizado preservar conhecimento previa-mente adquirido enquanto continua a aprender conhecimentos novos?

• O que evita que um novo conhecimento se superponha a conhecimentosprévios?

Como foi dito antes, em aplicações do mundo real é comum ocorrerem mu-danças inesperadas nos padrões de entrada. É necessário então um modelo

de RNA incremental, que não precise recomeçar seu treinamento do pontoinicial a cada vez que aparecem novos padrões de entrada e que preserve o co-nhecimento adquirido antes. Uma família de RNAs denominada ART (Adap-tive Resonance Theory) foi desenvolvida para solucionar o dilema estabilidade-plasticidade [Gro76b, Gro76a]. No decorrer deste capítulo, os principais aspec-tos das redes ART são descritos a seguir, enfatizando a rede ART 1 [CG87b],primeiro modelo desenvolvido.

6.1.1 Arquitetura básica da rede ART 1

A arquitetura básica de ART 1 envolve duas camadas de nodos. Uma camada

de entrada, F1, que processa os dados de entrada, e uma camada de saída,F2, que agrupa os padrões de treinamento em clusters (ver Figura 6.1). Estasduas camadas estão conectadas por meio de dois conjuntos de conexões que

conectam cada nodo de uma camada a todos os nodos da outra. O primeiroconjunto, representado por conexões feedforward, w, assume valores reais esegue da camada de entrada para a camada de saída. O segundo conjunto,que contém as conexões de feedback, b, assume valores binários e conecta osnodos da camada de saída aos nodos de entrada. Assim, o nodo i da camadade entrada está conectado ao nodo j da camada de saída através do peso wj».

102 1 103

Page 61: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Controle lCamada de

W T

o o e o o

Controle 2^

o o 0'0 0 Õ Entrada

Figura 6.1: Arquitetura básica da rede ART. que possui duas camadas, umade entrada e a outra de saída. duas unidades de controle e uni mecanismo dereset.

Igualmente. o nodo j da camada de saída está conectado ao nodo i da camadade entrada através do peso b;, Existem também, entre os nodos da camadade saída, pesos que atuam como inibidores laterais.

Os pesos feedforward e feedback são também conhecidos como filtros adap-tativos por adaptarem dinamicamente seus valores para possibilitar o apren-dizado de novos padrões. O vetor de pesos feedback associado a cada rodo dacamada de saída pode ser visto como um protótipo ou exemplo dos padrõespertencentes ao cluster representado por este nodo.

A rede também possui um conjunto de pesos bipolares não-adaptáveis entreos nodos da camada de saída. O peso entre dois nodos da camada de saída é-1 se este liga dois nodos distintos e +1 se ele liga sua saída a si mesmo. Paracada camada da rede ART 1 há uma unidade externa de controle , unidade Clpara a camada de entrada e unidade C2 para a camada de saída. A unidadeCl determina o fluxo de dados para a camada de entrada . Assume o valor 1se uma entrada estiver sendo apresentada à rede e o valor 0 se algum nodo dacamada de saída está ativo. A unidade C2 tem duas funções:

• Determinar o fluxo de dados para a camada de saída.

• Habilitar ou desabilitar nodos da camada de saída.

104

A unidade de controle C, assume o valor 1 se tuna entrada válida for apre-sentada à rede e 0 após desabilitar os rodos da camada de saída e ressetar

seus estados de ativação para 0. Entre a camada de entrada e a camada de

saída existe um mecanismo de reset. responsável por verificar a semelhança

entre um vetor de entrada e um dado vetor protótipo. utilizando um limiar de

vigilância (p). Este limiar de vigilância determina se um padrão de entrada

pode ser incluído em um dos clusters existentes. A próxima seção apresenta o

treinamento da rede ART 1.

6.1.2 Treinamento

O algoritmo de aprendizado da rede ART 1 é não-supervisionado e pode serativado a qualquer momento. permitindo que a rede aprenda novos padrões con-

tinuamente. Esta característica resolve o problema plasticidade-estabilidade.

Há dois tipos de treinamento para a rede ART 1: aprendizado rápido e apren-

dizado lento. No aprendizado rápido. os pesos feedforua•d são setados para seus

valores ótimos em poucos ciclos. geralmente em apenas uni ciclo de treinanien-to. No aprendizado lento, os pesos são ajustados lentamente em vários ciclos

de treinamento, possibilitando uni ajuste melhor dos pesos da rede aos padrões

de treinamento.

A rede ART 1 é muito sensível a variações em seus parâmetros durante o

treinamento. O parâmetro mais crítico é o limiar de vigilância (p) que controla

a resolução do processo de classificação. Se p assume um valor baixo (< 0.4).a rede permite que padrões não muito semelhantes sejam agrupados no mesmo

cluster, criando poucas classes. Se a p for atribuído um valor alto, pequenas

variações nos padrões de entrada levarão à criação de novas classes. Antes dea rede ART 1 ser treinada, seus pesos e parâmetros precisam ser inicializados.

Todos os pesos de feedback (b) são inicializados com o valor 1, indicando quetodo nodo da camada de saída está inicialmente conectado a todo nodo de

entrada através de uma conexão feedback. Os valores iniciais do vetor de pesos

feedforward (w) são determinados pela Equação 6.1:

1wji(0 )

_1+ndi.i

onde n é o número de nodos de entrada da rede. O limiar de vigilância (p) é

também inicializado. assumindo um valor dentro do intervalo 0 < p < 1.

O processo de aprendizado em ART 1 envolve algumas fases, tais como

reconhecimento , comparação e busca.

105

Page 62: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Reconhecimento

Cada nodo da camada de entrada pode receber três sinais: um sinal do vetor

de entrada, um sinal de feedback da camada de saída e um sinal da unidade de

Controle Cl. Um nodo da camada de entrada somente será ativado se receberpelo menos dois sinais excitatórios; caso contrário, a ativação não ocorre. Esta

regra é denominada regra dos dois terços (2/3). Na fase de reconhecimento, o

vetor de entrada e o sinal de controle Cl são enviados à camada de entrada,onde será aplicada, a cada nodo, a regra dos 2/3. O vetor resultante é com-

parado com todos os vetores de pesos feedforward, w, para encontrar o mais

semelhante. Esta comparação é realizada calculando o produto interno entre

o vetor d resultante e o vetor de pesos feedforward para cada nodo da camada

de saída, como indica a Equação 6.2.

yj = wjixi (6.2)

i

onde yj é a ativação do nodo de saída j, definido pelo produto interno entre

seu vetor de pesos wj e seu vetor de entrada x.

O nodo da camada de saída com maior valor de ativação é selecionado como

provável cluster para armazenar o novo padrão. A inibição lateral faz com quesomente o nodo vencedor da camada de saída fique ativo. O nodo selecionado

envia à camada de entrada seu protótipo, ou seja, seu vetor de pesos b.

Comparação

Conforme descrito anteriormente, cada nodo da camada de entrada pode re-ceber três sinais: do vetorlde entrada; do vetor do protótipo do nodo de saídaselecionado na fase de reconhecimento, e da unidade de Controle Cl, que nesteinstante é igual a 0, uma/vez que um nodo foi ativado na fase de reconheci-mento. A regra dos 2/3 é aplicada novamente, resultando na ativação ou nãode cada nodo da camada ide entrada. Como o sinal da unidade de Controle

Cl é igual a 0, ocorre uma operação AND entre o vetor protótipo do nodo

selecionado e o vetor de entrada, produzindo um novo vetor,. chamado vetor

de comparação, z. Este vetor é enviado para o mecanismo de reset juntamente

com o vetor de entrada.

O mecanismo de reset é responsável por testar a similaridade entre o vetor

de entrada e o vetor de comparação. O teste é feito calculando a razão P,por meio da Equação 6.3, entre o número de valores iguais a 1 de ambos os

vetores e comparando o resultado desta razão com o limiar de vigilância p. SeP for maior que p, então o padrão de entrada é incluído no cluster do nododa camada de saída ativado. Caso contrário, outro nodo da camada de saídadeverá ser encontrado para armazenar o vetor de entrada, e a rede entra nafase de busca.

P= xizi,jll

Exi11

Busca

Durante esta fase, a rede procura selecionar um novo nodo da camada de saídapara representar.o vetor de entrada corrente. O nodo da camada de saída re-

jeitado na fase de comparação anterior é impedido de participar desta seleção.Para isto, este nodo é desabilitado, levando seu valor de saída para 0. O vetorde entrada é reapresentado, e a rede entra novamente na fase de comparação,

que termina com o teste no mecanismo de reset para determinar a similaridadeentre o novo protótipo escolhido e o padrão de entrada atual. Este processo érepetido, desabilitando nodos da camada de saída, até encontrar um nodo de

saída que melhor se assemelhe ao vetor de entrada corrente, dentro dos limitesdo limiar de vigilância p. Se nenhum nodo de saída for encontrado, o vetorde entrada é então considerado de uma classe desconhecida, sendo alotado umnodo de saída "livre' (que não esteja associado ainda a nenhum cluster) pararepresentá-lo.

O algoritmo de aprendizado lento do modelo ART 1 é resumido a seguir.

1. Inicializar pesos e parâmetros

2. Repetir

2.1 Para cada padrão de treinamento x faça

2.1.1 Definir nodo vencedor

2.1.2 Comparar protótipo do vencedor com a entrada

2.1.3 Se comparação > limiar-de vigilância

Então atualizar os pesos do nodo vencedor

Senão desabilitar nodo

Se ainda existir nodo habilitado

Então voltar a 2.1.1

Senão alocar novo nodo

ao padrão de entrada e

106 1 107

Page 63: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Padrões originais Padrões transformados

1,01!1 1 101 1 o 1 0 o o

0 1 0 i 1 0 01 0 1 1

e1 ee e

1 0!1 11 o 1 0I 01 1

Figura 6.2: Transformação dos padrões de entrada. Enquanto a primeirametade do padrão transformado corresponde ao padrão original, a segundametade é obtida complementando os valores da segunda metade.

atualizar seus pesos

2.1.4 Habilitar nodos desabilitados

3. Até o mapa de características não mudar

Para o melhor funcionamento da rede ART 1. aconselha-se que os padrões

de entrada tenham a mesma quantidade de valores iguais a 1. Isto ocorre devidoao mecanismo de comparação utilizado, em que o número de bits iguais a 1

no vetor de entrada influencia o resultado da comparação. Uma forma simplesde obter esta igualdade, proposta em [Fau94], consiste em dobrar o número de

elementos dos vetores de entrada, onde o valor de cada novo elemento do vetortransformado seria o complemento dos valores do elemento correspondente nametade original. A Figura 6.2 ilustra este procedimento.

Exemplo

Uni exemplo será apresentado a seguir para auxiliar a compreensão do apren-

dizado da rede ART 1. Neste exemplo, a rede possui quatro nodos na camadade entrada e, inicialmente, um nodo na camada de saída, C1 e C2 são iguaisa 0, o parâmetro de vigilância é igual a 0.6, os pesos feedback para o nodo desaída possuem os valores [0, 1, 1, 1], e os pesos feedforward são todos iguais a0.25.

F2

Controle 1

Io

1

1

Saída

1 o

Figura 6.3: Passo 1.

Entrada

O vetor de entrada x é aplicado à camada de entrada (Fi), conto pode ser

visto na Figura 6.3. A regra dos 2/3 determina a resposta da camada de entra-

.da para o padrão de entrada. Neste ponto. cada nodo da camada de entrada

recebe dois sinais excitatórios: uni sinal do vetor de entrada x e um sinal deQ, significando que há uma entrada válida para a rede. Os sinais excitatórioscorrespondem ao valor 1, e os sinais inibitórios correspondem ao valor 0. Na

Tabela 6.1 é mostrado o resultado, vetor x', definido após a aplicação da regra

dos 2/3.

O vetor x' é comparado com os pesos feedforward de cada nodo da cansada

de saída. Isto é feito calculando o produto interno entre estes vetores utilizando

a Equação 6.2.

Tabela 6.1: Resultado da primeira aplicação da regra dos 2/3.

Entrada (x') C1 Resultado (B)

0 1 01 1

1 1

0 0

O nodo selecionado como vencedor (nodo com maior produto interno) en-via seu protótipo para a camada de entrada F1 e inibe C1, setando seu valorpara 0. A camada de entrada recebe três sinais: do vetor de entrada, do rodo

108 109

Page 64: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

F2

Controle 1F1-1 o 1

Saída

o

o 1 o

Figura 6.4: Passo 2.

Entrada

vencedor da camada de saída e de C1 , como pode ser visto na Figura 6.4. O

resultado , após aplicada a regra dos 2/3, pode ser visto na Tabela 6.2.

Tabela 6.2: Resultado da segunda aplicação da regra dos 2/3.

Entrada (x) Pesos Feedback Cl Resultado (B)

o o o o1 1 0 1

1 1 0 1

o 1 0 o

O vetor de comparação z e o vetor de entrada x são enviados ao mecanismo

de reset para o teste de vigilância. A razão (P) entre estes dois vetores é

calculada pela Equação 6.3, produzindo o valor 1. Esta razão é comparada aolimiar de vigilância (p). Como 1 é maior que 0.6, o vetor de entrada pode ser

armazenado no cluster associado ao nodo vencedor. Em seguida, os vetores

de pesos do nodo vencedor são ajustados para incorporar as características do

vetor de entrada corrente. Isto é feito pelas Equações 6.4 e 6.5:

bij(t + 1) = bij (t) Axi(t) (6.4)

w (t -1- 1) _L * xi(t)

J` L - 1 + E bij (t) A xi (t)

Controle 1

F2

o

o

1 Saída

1111 o

1 1 1 o Entrada

Figura 6.5: Passo 3.

onde A é o operador lógico E e L é um parâmetro (L > 1) utilizado na atua-lização dos pesos feedforward. Quando a razão (P) é menor que p, R dispara einibe o nodo ativado da camada de saída, como pode ser visto na Figura 6.5.

Neste caso, o padrão de entrada será atribuído a outro nodo da camadade saída. Após a aplicação do próximo vetor de entrada à rede, a unidade deControle C2 habilita todos os nodos desabilitados da camada de saída para que.eles voltem a competir entre si.

6.1.3 Outros modelos ART

O primeiro modelo da família ART a ser desenvolvido foi a rede ART 1 [CG87b].Conforme já visto, esta rede trabalha apenas com padrões de entrada binários.Entretanto , vários problemas do mundo real utilizam dados contínuos. Emvista disto, foi desenvolvida a rede ART 2 [CG87a]. Esta rede também aceitapadrões de entrada com valores contínuos . A diferença entre as redes ART 1e ART 2 está na camada F1, que precisa ser mais complexa para realizar opré-processamento necessário para acomodar os padrões de entrada de valorescontínuos.

A rede ARTMAP [CGR91a] é uma rede mais sofisticada que permite oaprendizado incremental supervisionado . Este modelo é composto por duassub-redes ART 1: ARTQ e ARTb. Durante o treinamento de ARTMAP, omódulo ARTQ recebe um padrão de entrada a(P) e o módulo ARTb recebe umpadrão de entrada b(P ) que é a resposta desejada para o padrão a(p). Estes

110 1 111

Page 65: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

dois módulos são conectados através de uni mapeamento entre as camadasde saída F2 de ART„ e .-IRTI,. A primeira rede ARTMAP foi utilizada paraclassificar vetores de entradas binários, cada elemento do vetor indicando apresença ou ausência de unia dada característica . Unia rede ARTAIAP maisgeral foi proposta para classificar vetores de entrada cujos elementos assuntemvalores fu.:y. entre 0 e 1. indicando o nível de presença de cada característica.Esta generalização é realizada substituindo os nódulos de ART 1 de ARTMAPpor módulos de outra rede baseada em ART. a rede Fuzzy- ART [CGR91c]. Anova rede é conhecida como rede Fuzzv- ARTMAP [CG\I+91].

Existem outras variações . não tão conhecidas . baseadas na rede ART:CAL\I [\IP\\'s9]. ART 3 ;CG90]. ART 2a [CGR911-)]. SMART [Bar94] e HART[Bar95].

6.1.4 Aplicações

As redes ART têm sido utilizadas em várias aplicações, como:

• reconhecimento automático de alvos [GE\\"95]:

• reconhecimento de caracteres [FB90]:

• robótica ,ZGLC95":

• diagnóstico médico 'CM961:

• sensoreamento remoto [CG93];

• processamento de voz [CGG\V96].

A seguir apresentamos uni outro modelo de RNAs self-organizing: as redesSO\1.

6.2 Redes SOM

As redes mapas self-organizing. SOM (Self-organizing Alaps), também chamadasde mapas de características self-organizing, SOFRI (Self-organizing FeatureAlaps). foram desenvolvidas por Teuvo Kohonen [Koh89] na década de 80.Em vários trabalhos, estas redes são chamadas de redes de Kohonen, o que

pode provocar certa confusão. uma vez que Kohonen também propôs outrosmodelos de RNAs. Neste capítulo, estas redes serão chamadas simplesmentede redes SOM.

112

Em contraste com outros modelos apresentados nos capítulos anteriores,

estas redes possuem uma forte inspiração neurofisiológica. Elas são baseadas no

mapa topológico presente no córtex cerebral. Sabe-se que o cérebro dos animaismais sofisticados possui áreas que são responsáveis por funções específicas.

Existem áreas, por exemplo, dedicadas à fala, à visão, ao controle motor, àsensibilidade ao toque etc. Cada unia destas áreas contém subáreas. Cada

subárea mapeia internamente respostas do órgão sensorial representado por

ela. Por exemplo:

• Córtex auditivo: o mapeamento reflete as diferentes freqüências sonoras.

• Córtex visual: o mapeamento é definido pelas características visuais pri-mitivas, como intensidade de luz, orientação e curvatura de linhas.

Observa-se que esses neurônios estão espacialmente ordenados dentro destas

áreas, e, assim neurônios topologicamente próximos tendem a responder a

padrões ou estímulos semelhantes. Sabe-se também que esta ordenação topo-

lógica é resultado do uso de feedback lateral entre as células do córtex cerebral.

Este feedback lateral é geralmente modelado em RNAs por unia função con-

hecida como "chapéu mexicano". Segundo a função chapéu mexicano, cada

neurônio influencia o estado de ativação de seus neurônios vizinhos de três

formas possíveis (ver também Figura 6.6):

• Excitatória, se os vizinhos estão próximos a ele (por exemplo, dentro de

uma área de raio RI )

• Inibitória, se os vizinhos estão fora da área anterior mas dentro de unia

segunda área (por exemplo, dentro de uma área de raio R2. mas fora da

área de raio RI, onde R2 > RI)

• Levemente excitatória, se os vizinhos estão fora das áreas anteriores mas

dentro de uma terceira área (por exemplo, dentro de unia área de raio

R3, mas fora das áreas de raios RI e R2, onde R3 > R2 > RI )

A rede SOM funciona basicamente da seguinte forma: quando um padrão

de entrada p é apresentado , a rede procura a unidade mais parecida com p.

Durante o seu treinamento , a rede aumenta a semelhança do nodo escolhi-do e de seus vizinhos ao padrão p. Desta forma, a rede constrói uni mapa

topológico onde nodos que estão topologicamente próximos respondem de for-

ma semelhante a padrões de entrada semelhantes . A rede SOAI é unia rede

biologicamente plausível , ou seja, apresenta respaldo biológico. Assim como no

Page 66: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Figura 6.6: Tipos de estímulos produzidos de acordo com a função chapéu

mexicano.

córtex cerebral, nodos ativos apresentam conexões mais fortes com nodos queestão fisicamente mais próximos. A rede SOM se apresenta como um modelo

do córtex cerebral, uma vez que:

seus nodos estão localmente interconectados

• o processo de adaptação está restrito ao nodo vencedor e seus vizinhos.

A rede SOM utiliza um algoritmo de aprendizado competitivo, em que osnodos da camada de saída competem entre si para se tornarem ativos, ou se-

ja, para ver quem gera o maior valor de saída. Assim, para cada padrão deentrada, apenas um nodo de saída ou nodo por grupo se torna ativo. Esta com-

petição é chamada de winner-takes-all, o vencedor leva tudo. Uma maneira de

implementar esta competição é a utilização de conexões laterais inibitórias en-

tre nodos de saída. Através da introdução do conceito de vizinhos topológicosdos nodos vencedores, o algoritmo de treinamento utilizado pelas redes SOMsimula o efeito da função chapéu mexicano. Segundo este conceito, quando um

nodo vence uma competição, produzindo a maior saída para uma dada entra-da, não apenas ele mas também os nodos localizados na sua vizinhança têmseus pesos ajustados. Com isso, Kohonen consegue um resultado semelhante

àquele obtido com a utilização da função chapéu mexicano, a um menor custocomputacional.

o 1

o

o

Figura 6.7: Rede SOM típica. Pode ser observado que os nodos da camada desaída formam um reticulado.

6.2.1 Arquitetura

Na rede SOM, os nodos se organizam em uma grade ou reticulado, geralmentebidimensional, podendo algumas vezes ser unidimensional. Também são en-contradas, embora raramente, grades com três ou mais dimensões. A grade

bidimensional tem a forma de uma superfície plana, onde os nodos de saídaestão organizados em linhas e colunas. A Figura 6.7 ilustra uma rede SOMtípica.

Embora a rede SOM apresente geralmente apenas uma camada bidimen-sional, uma hierarquia de camadas bidimensionais pode ser também utilizada[Hay94]. Cada nodo da rede SOM recebe todas as entradas e funciona comoum discriminador ou extrator de características. Quanto mais semelhante aentrada for do vetor de pesos de um nodo, maior o valor de sua saída. Asaída da rede é formada pela saída de todos os seus nodos. Durante a fasede aprendizado, os nodos se especializam para a detecção de um conjunto de

padrões de entrada. Os nodos se organizam topologicamente, fazendo com que

os padrões detectados por um dado nodo estejam relacionados com as coor-denadas da posição do nodo dentro do reticulado. Desta forma, um mapa decaracterísticas self-organizing forma mapas topológicos dos padrões de entrada.onde padrões semelhantes são detectados por nodos próximos dentro do reticu-

lado. Assim, as localizações espaciais dos nodos correspondem a característicasdos padrões de entrada, daí o nome mapa de características self-organizing.

114 1 115

Page 67: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Como se pode ver na Equação 6.6. o estado de ativação de um nodo édeterminado pela distância entre seu peso e o vetor de entrada. A função de

ativação da rede SOM é baseada na medida de distância euclidiana:

Yj -^^.ri-u'ji I^i=1

6.2.2 Melhorando o desempenho da rede

A utilização de vetores de peso com magnitudes diferentes prejudica a com-petição entre os rodos. por desviar a atenção da rede para a magnitude. em

vez da orientação dos vetores de peso. que é o que interessa. O algoritmo fun-

ciona melhor quando os vetores de pesos são normalizados, geralmente para

unia norma unitária. Normalizando também os vetores de entrada, o estado

de ativação de um nodo pode assumir qualquer valor real no intervalo [0. NI.onde N é o número de entradas.

Os pesos iniciais de unia rede do tipo SO\1 _sãó definidos aleatoriamente.Por causa disso, muitos rodos podem apresentar vetores de pesos muito dife-rentes dos padrões de entrada. Dessa forma. pode ser que não haja o número

necessário de nodos utilizáveis (que possam vencer as competições) para definiros clusters adequadamente. Em resultado, a rede pode ou não convergir ouapresentar ciclos muito lentos. Diversas alternativas foram propostas pararesolver ou minimizar este problema:

• utilização de vetores de pesos iniciais iguais;

• utilização de um limiar para cada nó (consciência):

• modificação dinâmica de raio de vizinhança.

A primeira alternativa seria inicializar todos os pesos com o mesmo valor.

Para garantir a atualização do maior número possível de nodos, os padrões detreinamento seriam, no início, tornados semelhantes entre si. A semelhançaseria gradativamente reduzida nos primeiros ciclos de treinamento por meio daadição de ruídos aos vetores de entrada.

A segunda opção propõe a utilização de um limiar para cada nó. Estelimiar seria a consciência do nodo [DeS88], por isto esta técnica também é

chamada de consciência. De acordo com esta técnica, nodos que fossem regu-larmente selecionados nas competições teriam seu limiar aumentado. Assim,

este mecanismo reduz a chance de este nodo ser selecionado novamente, per-

mitindo a utilização de outros nodos.

A terceira alternativa, que é utilizada por Kohonen, reduz a vizinhança dos

nodos vencedores durante o treinamento. A vizinhança define quantos nodosem torno do vencedor terão seus pesos ajustados. ou seja, define a área de

influência do nó vencedor. Quando a solução de reduzir a vizinhança é empre-

gada. utiliza-se inicialmente uma vizinhança grande. Durante o treinamento,a região de vizinhança é progressivamente reduzida até uni limite pré-definido.

Geralmente. a taxa de redução é uma função linear do número de ciclos. Pode

ocorrer também uma combinação das alternativas anteriores.

Em unia rede SOIM, a vizinhança pode assumir vários formatos diferentes.Embora o formato quadrado seja o mais comum, a região de vizinhança pode

apresentar também , como se vê na Figura 6.8, a forma de uni hexágono ou

círculo ( gaussiana ). A definição do formato mais adequado depende do pro-

blema atacado e da distribuição de seus dados. Geralmente o formato davizinhança é definido por tentativa e erro. Recentemente , Halgamuge [Ha1971,

propôs a utilização de uma abordagem construtiva para a definição do formato

da região . Neste caso, a região pode apresentar um formato arbitrário. nãonecessariamente o de uma figura geométrica regular. A seguir será discutido o

processo de treinamento das redes SOM.

6.2.3 Treinamento

O treinamento de uma rede SOM é competitivo e não-supervisionado (embora

possa utilizar uma fase supervisionada para rotular os nodos). O algoritmo de

treinamento original organiza os nodos em vizinhanças locais. Cada vez queum novo padrão de treinamento é apresentado à rede, os nodos competem entresi para ver quem gera a maior saída. Definido o nodo vencedor, tem início o

processo de atualização de pesos. Neste processo, apenas o nodo vencedor eseus vizinhos dentro de um certo raio ou área de vizinhança atualizam seuspesos. Durante o treinamento, a taxa de aprendizado e o raio de vizinhançasão continuamente decrementados. A Equação 6.7 ilustra como são atualizadosos pesos da unidade vencedora e daquelas situadas na sua vizinhança:

wji(t + 1) u j,( t), caso) (o (t )ário(t)), se j E A(t) (6.7)

116 117

Page 68: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

o Nodo vencedor

é Nodos vizinhos ao vencedor

Figura 6.8: Formatos para a região de vizinhança utilizados pelas redes SOM.

onde wji(t) é o peso da conexão entre o elemento de entrada xi(t) e o nodo

j, rj(t) é a taxa de aprendizado e A é a vizinhança do nodo vencedor, tudo

no instante de tempo t. É interessante observar que, através deste processode treinamento, a rede cria regiões que respondem a grupos de entradas seme-lhantes. O algoritmo de treinamento para redes do tipo SOM é resumido a

seguir.

1. Inicializar pesos e parâmetros

2. Repetir

2.1 Para cada padrão de treinamento x faça

2.1.1 Definir nodo vencedor

2.1.2 Atualizar os pesos deste nodo e de seus vizinhos

2.1.3 Se o número do ciclo for múltiplo de N

Então reduzir taxa de aprendizado

e área de vizinhança

3. Até o mapa de características não mudar

Conforme pode ser visto no algoritmo de treinamento, os pesos iniciaisdevem ser escolhidos aleatoriamente. De preferência, todos os pesos devem ser

diferentes [Hay94]. Após várias apresentações do conjunto de treinamento, osvetores de pesos tendem a seguir as distribuições dos vetores de entrada.

•• • ••• •1•• •

O Nodo vencedor

• Nodos vizinhos ao vencedor

E Vizinhança 1

Vizinhança 2

Vizinhança 3

Figura 6.9: Redução da região de vizinhança.

O treinamento da rede SOM ocorre em duas fases: fase de ordenação e fasede convergência. Durante a fase de ordenação, ocorre a ordenação topológicados vetores de pesos, que são inicialmente orientados de forma aleatória (com

pesos iniciais aleatórios). Esta fase dura em torno de 1000 ciclos ou iterações.Nesta fase, o treinamento busca agrupar os nodos do mapa topológico em

clusters ou agrupamentos,. de modo a refletir a distribuição dos padrões deentrada. Desta forma, a rede descobre quantos clusters ela deve identificar esuas posições relativas no mapa. O mapeamento realizado neste estágio é ummapeamento grosseiro dos padrões de entrada. Durante esta fase, a taxa deaprendizado é inicialmente alta, próxima de 1, sendo gradualmente reduzidaaté um valor próximo de 0.1. Assim, nesta fase ocorrem grandes mudanças nospesos. Também durante esta fase, a vizinhança é reduzida. Inicialmente envol-

vendo todos os nodos da rede, a vizinhança é reduzida, em geral linearmente,até atingir um raio de um ou dois vizinhos.

A segunda fase faz uni ajuste mais fino do mapa. Durante esta fase, querequer 100 a 1000 vezes mais ciclos que a fase anterior, é utilizada uma taxa

de aprendizado baixa, da ordem de 0,01 ou menos, e o raio da vizinhançaenvolve um ou nenhum vizinho. Esta fase sofistica o mapeamento realizadono estágio anterior, aprimorando o agrupamento realizado. A Figura 6.9 ilus-

tra a redução da região de vizinhança durante o treinamento de uma rede SOM.

118 1 119

Page 69: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Como resultado do que foi visto até o momento. pode-se dizer que o treina-mento da rede SOM é afetado:

• pela taxa de aprendizado;

• pela taxa de redução da região de vizinhança;

• pelo formato da região de vizinhança.

Após o treinamento, a rede SOM agrupa os padrões de entrada em clus-ters ou agrupamentos. Em algumas aplicações, pode ser necessário rotularos nodos de saída para indicar os clusters (ou classes) que representam. Estarotulação vai permitir posteriormente a classificação de padrões desconhecidos.

De acordo com [Koh89], a rede SOM não foi criada para Reconhecimentode Padrões , mas para agrupamento , visualização e abstração . Ainda assim, asredes SOM podem ser utilizadas para o reconhecimento ou a classificação depadrões. Neste caso , aconselha-se que a rede seja utilizada junto com um mo-delo de aprendizado supervisionado . Pode ser utilizada na saída, por exemplo,uma rede Adaline ou um MLP. Esta rede receberia como entrada a saída geradapela rede SOM. Uma outra possibilidade , mais comum , é a utilização da técnicade aprendizado de quantização de vetor , LVQ (Learning Vector Qua.ntization)[Koh86], que é discutida na próxima seção.

6.2.4 Exemplo de categorização de dados com SOM

Um exemplo de categorização (clustering) a partir de dados experimentais éapresentado a seguir. O problema aqui consiste em determinar as classes emque os dados de entrada estão distribuídos sem conhecer de antemão as suas ca-racterísticas estatísticas. Para o presente exemplo foram selecionadas duas clas-

ses distintas cujos vetores representativos foram amostrados de distribuições

gaussianas bidimensionais. Assim, temos vetores de entrada bidimensionaisx' = [xi x2 ]T que formam o conjunto de treinamento r = {xl, x2 ... , xP}.As variáveis de entrada xl e x2 são genéricas e poderiam estar representan-do características quaisquer de um sistema hipotético. Estas poderiam estarrepresentando, por exemplo, altura e idade de alunos da primeira e quarta

séries de um colégio qualquer. Se fosse este o caso real, as amostragens cor-responderiam a valores de idade e altura amostrados em ambas as séries eapresentados misturados para a rede sem identificação de qual par de entradacorresponderia a cada classe. Uma vez tendo estes dados amostrados, o pro-blema se resumiria a determinar como estes estão distribuídos em categorias

120

Figura 6.10: Funções de densidade para as duas classes do exemplo com médias

xl = [4 4] e x, = [12 12].

sem nenhum conhecimento prévio sobre suas distribuições. Para não restringir

o problema ao caso acima. considera-se aqui que as variáveis xl e :r•2 repre-sentam grandezas hipotéticas, podendo o exemplo ser extrapolado para outrassituações. Para este exemplo, considere então a distribuição gaussiana repre-

sentada pela Equação 6.8:

1IIX XII2f (x) = 2,rv2 (6.8)

onde xo representa o vetor bidimensional correspondente à média da dis-tribuição, a2 a sua variância, e 11x - kII a distância euclidiana entre x e R.

Considere que os dados para o exemplo foram amostrados de duas gaus-

sianas conforme a Equação 6.8, com variâncias 1 e médias xl = [4 4] ex2 = [12 12], resultando nas funções de densidade apresentadas na Figu-

ra 6.10. Amostragens de 1000 pontos com igual probabilidade de ambas asdistribuições resultaram nos pares de treinamento apresentados na Figura 6.11.

Uma vez selecionados os vetores de treinamento para serem apresentados

para a rede, é necessário então definir uma topologia de SOM para resolvero problema de categorização. Como se trata de um problema bidimensionalpelo próprio enunciado, a opção mais natural foi escolher um SOM também

121

oh

o

11

o

o

ie

Page 70: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

15

10

5

Figura 6.11: Amostragens das distribuições gaussianas para a formação doconjunto de treinamento.

com estrutura topológica bidimensional. Isto resulta em um mapa em quecada nodo possui 4 outros vizinhos, distribuídos na forma de uma rede, ondeo vetor de pesos de cada um dos nodos corresponde a um dos vértices destarede. A estrutura topológica define a quais outros nodos cada nodo deve estarconectado para formar a estrutura topológica bidimensional. O treinamentoresultou então em apresentar os dados de entrada para a rede e observar a for-ma resultante do mapa. Espera-se que o mapa resulte então em uma topologiaem que as características estatísticas dos dados sejam preservadas. Em outraspalavras, a inspeção visual do mapa deve nos dar informação de como estes

dados estão distribuídos.

A Figura 6.12 mostra a condição inicial do mapa em que todos os pesosforam iniciados com os mesmos valores' para dar a todos as mesmas condiçõesde competir pela representação de uma das classes. A Figura 6.13 mostra

a situação do mapa após 50 iterações, quando este já começa a tender paraassumir a topologia dos dados. Na Figura 6.14 pode-se ver o mapa após 300iterações, quando este já possui uma forma mais semelhante às distribuições

'Como pode ser observado , o valor inicial escolhido para os pesos foi um valor médio entreas duas classes , o que faz também com que se evite polarização em relação a uma delas.

0L0 5

WI10 15

Figura 6.12: Condição inicial: todos os vetores de pesos foram iniciados com omesmo valor.

das duas classes. Finalmente, a Figura 6.15 mostra a situação final da simu-lação após 4500 iterações, onde se pode observar que realmente o mapa assumiuuma forma representativa das distribuições dos dados. A observação do mapa

nos leva a concluir que os dados estão distribuídos em duas classes concentradaspróximas aos pontos [12 12] e [4 4], que corresponde aos dados gerados apartir da Equação 6.8.

122 1 123

Page 71: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Figura 6.13: Situação após 50 iterações.

15

ro

Figura 6.14: Situação após 300 iterações.

Figura 6.15: Situação final após 4500 iterações.

6.2.5 Algoritmo LVQ

Urna vez que a rede SOM tenha sido treinada e rotulada. pode ser necessário

ensinar novos padrões. Esta inclusão pode buscar, por exemplo. a melhoria

do desempenho da rede para certos clusters. Um algoritmo de aprendizado.

conhecido como algoritmo LVQ, permite a inclusão de novos padrões em uma

rede SOM já treinada.

LVQ é uma técnica de aprendizado supervisionada que utiliza informações

sobre as classes para mover levemente os vetores de peso. de modo a melhorara qualidade das regiões de decisão do classificador. LVQ procura ajustar o ma-pa de características para melhorar o desempenho da rede em circunstãncias

modificáveis. Por ser supervisionado, o algoritmo LVQ pode, após o treina-mento da rede SOM, avaliar a classificação gerada pela rede para cada padrão.Nesta avaliação, o algoritmo LVQ ajusta os pesos para melhorar a classifi-

cação obtida. Os pesos do nodo vencedor e de seus vizinhos são ajustados pela

Equação 6.9:

( uai(t) + r)(xi(t) - wji(t)), classe correta(6 . 9)w^i(t+ 1) - t wji(t) - rl(xi(t) - wji(t)), classe incorreta

onde r} é a taxa de aprendizado.

124125

Page 72: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

6.3 Conclusão

Os passos para treinamento com algoritmo ' LVQ são apresentados' a seguir:

1. Inicializar pesos e parâmetros

2. Repetir

2.1 Para cada padrão de treinamento x faça

2.1.1 Definir nodo vencedor

2.1.2 Atualizar os pesos do nodo vencedor e seus vizinhos

2.1.3 Reduzir taxa de aprendizado

3. Até o erro ser menor que um dado valor

Este capítulo abordou redes cujo treinamento não conta com uma supervisão

externa, sendo por isto chamadas redes self-organizing. Foram apresentadosem detalhes dois modelos de redes que seguem este princípio: as redes ART e

o modelo SOM.

Os modelos da "família" ART procuram resolver o dilema estabilidade-plasticidade, permitindo que as redes aprendam continuamente sem perderconhecimentos adquiridos previamente. Foi discutido em detalhes o modelo

ART 1, que trabalha com vetores de entrada cujos elementos assumem apenasvalores binários. Foram também citadas diversas variações de redes baseadas

no modelo ART 1.

Para o ajuste dos pesos , este algoritmo utiliza a Equação 6.9, que compara,para cada padrão de entrada, a saída produzida com a saída desejada . Pode serobservado que ele não mexe com o raio de vizinhança . Como LVQ pode calcularo erro, ele pode utilizar esta medida como critério de parada do algoritmo.

6.2.6 Aplicações

A rede de Kohonen tem sido utilizada em diversas aplicações práticas. Talveza mais popular seja uma aplicação desenvolvida pelo próprio Kohonen: odatilógrafo fonético [Koh88], um sistema que converte linguagem falada emtexto escrito. A rede é utilizada para extrair fonemas da fala do usuário. Ou-tras aplicações em que a rede SOM tem sido utilizada são:

• problema do caixeiro viajante [AVT88];

• exploração de bases de dados [HKLK96];

• análise da distribuição de renda no mundo [KK96];

• diagnóstico financeiro [SC96];

• controle de processos químicos [TG91};

• garimpagem de dados [BSV96];

• controle de qualidade de água [MDC95].

A rede SOM, desenvolvida por Teuvo Kohonen, utiliza algoritmos de apren-

dizado baseados em conceitos biologicamente plausíveis. Estas redes são inspi-radas no mapeamento realizado pelo cérebro. Assim como o cérebro, as redes

SOM permitem a representação de dados N-dimensionais em um espaço ÀI-

dimensional, onde RI « N.

6.4 Exercícios

1. Qual a vantagem de normalizar os pesos de um nodo para a rede

SOM?

2. Explique o porquê do mecanismo utilizado para definir dinamica-mente o número de nodos treinados pela rede SOM.

3. Por que é aconselhável utilizar um limiar diferente para cada nodo

de unia rede de Kohonen?

4. Explique o R de ART.

5. Qual a vantagem de ART 2 em relação a ART 1?

6. Qual o papel do parâmetro de vigilância em ART?

7. O que aconteceria se todos os pesos da rede SOI 1 fossem inicializados

com o mesmo valor?

8. Como o mecanismo de consciência pode levar a um melhor desem-

penho da rede SOM?

9. Como a rede SOM implementa o conceito de chapéu mexicano?

126 1 127

Page 73: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capítulo 7

Sistemas Neurais Híbridos

Neste capítulo será abordado uni dos temas de pesquisa mais recentes de RNAs.que é o desenvolvimento de Sistemas Neurais Híbridos [GK95, SB95 ] (SNHs).Após caracterizar o que vêm a ser e quais as características de SNHs, serãobrevemente discutidas diferentes abordagens utilizadas para o desenvolvimentode tais sistemas.

Embora RNAs tenham se mostrado uma técnica eficiente para a solução

de uni grande número de problemas. é um grave erro afirmar que elas são su-ficientes para resolver qualquer problema de Inteligência Artificial, IA. RNAs

apresentam vários problemas e limitações que não permitem seu uso exclu-sivo para a solução de uma quantidade significativa de problemas. O termo

híbrido, segundo o Dicionário Aurélio da Língua Portuguesa [Fer77]. signifi-ca originário do cruzamento de espécies diferentes. SNHs combinam dois oumais tipos diferentes de subsistemas, sendo uni deles uma RNA, para formarum sistema heterogêneo com características inteligentes.

A principal idéia por trás do desenvolvimento de Sistemas Híbridos é a de

que uma única técnica, devido às suas limitações e/ou deficiências, pode nãoser capaz, por si só, de resolver um dado problema. Neste caso, a combinaçãode duas ou mais técnicas pode levar a uma solução mais robusta e eficiente.

Acredita-se que um modelo de computação verdadeiramente inteligente temmaiores chances de ser desenvolvido se conseguir aglutinar potenciais de di-ferentes paradigmas de IA. É importante ressaltar, porém, que a utilizaçãode Sistemas Híbridos não leva necessariamente a uma melhora do desempe-

nho do sistema como um todo sobre aquela obtida pelas técnicas que foramcombinadas quando utilizadas isoladamente. Pelo contrário, muitas vezes os

129

Page 74: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

resultados obtidos por um SNH são inferiores ao desempenho das técnicas queo compõem. SNHs podem ser muito eficientes, desde que justificados, desen-

volvidos e utilizados corretamente.

O principal foco de pesquisas em SNHs tem sido, em geral, o de combinartécnicas fortemente baseadas em dados (RNAs, por exemplo) com técnicasque se utilizam de conhecimento (um exemplo seria Lógica Fuzzy) [Zad71].

Algumas abordagens têm sido propostas para integrar RNAs com:

• Estatística;

• Lógica Fuzzy;

• Sistemas Baseados em Conhecimento;

• Algoritmos Genéticos;

• Raciocínio Baseado em Casos;

• Lógica Matemática;

• Linguagens Formais;

• Agentes Inteligentes;

Sistemas Tutores;

• Linguagem Natural.

Existem várias semelhanças entre estatística e RNAs. Muitas das técnicasutilizadas em RNAs possuem um paralelo em estatística. Esta combinaçãotem sido muito utilizada para a combinação de estimadores [XJH95] e parapré-processamento de dados [BH95b]. As combinações de RNAs com LógicaFuzzy geralmente procuram simular Lógica Fuzzy utilizando RNAs. Nestes

casos. a rede neural é empregada para adaptar um conjunto de parâmetros deum sistema fuzzy, ou seja, a rede é utilizada no lugar do sistema de inferência[SG87, GK951.

Um número crescente de pesquisadores tem se dedicado à integração de

RNAs com Sistemas Baseados em Conhecimento (SBC) [SB95, Hay91, Ga193].A maioria destas pesquisas procura combinar a facilidade das RNAs para lidar

com dados com a manipulação de conhecimento realizada por SBC. A inte-gração de Raciocínio Baseado em Casos (RBC) com RNA também tem sido

investigada por diversos pesquisadores [Ma195, RCB95, KW93]. A maioria das

propostas de integração tem. sido sugerida para indexação e recuperação de.

casos.

A combinação de RNAs com Algoritmos Genéticos (AGs) também tem si-do bastante empregada, e sua principal utilização tem sido na otimização de

parâmetros de RNAs [GK95, BBM92]. Estes parâmetros podem incluir, en-tre outros, número de camadas, funções de ativação, taxas de aprendizado enúmero de neurônios nas camadas intermediárias.

Três dessas integraçóes de técnicas diferentes formando Sistemas NeuraisHíbridos, SNH, serão discutidas em maiores detalhes neste capítulo. A próximaseção vai apresentar como RNAs podem ser combinadas com AGs. A seçãoseguinte discutirá a integração de RNAs com Raciocínio Baseado em Casos. Aúltima seção vai mostrar como regras simbólicas podem ser extraídas de RNAs.

7.1 RNAs e Algoritmos Genéticos

Antes de analisar como RNAs e AGs podem ser integrados, esta seção apre-senta, de forma sucinta , os principais conceitos. referentes a AGs.

7.1.1 Algoritmos genéticos

Algoritmos Genéticos são algoritmos de otimização e busca baseados nos meca-nismos de seleção natural e genética [Go189]. Enquanto os métodos de otimiza-ção e busca convencionais trabalham geralmente de forma seqüencial, avaliandoa cada instante uma possível solução, os AGs trabalham com uni conjunto depossíveis soluções simultaneamente. As técnicas de busca e otimização geral-mente apresentam:

• Um espaço de busca, onde estão todas as possíveis soluções.para o pro-blema.

• Uma função de avaliação ou custo que avalia, geralmente através de umanota, cada possível solução presente no espaço de busca.

De acordo com Goldberg [Go189], os AGs diferem dos métodos tradicionaisde busca e otimização em quatro aspectos principais:

1. Trabalham com uma codificação do conjunto de parâmetros e não comos próprios parâmetros.

130 1 131

Page 75: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

2. Trabalham com uma população de soluções candidatas simultaneamente,e não com unia única solução.

3. Utilizam informações de custo ou recompensa, e não derivadas de funções.

4. Utilizam regras de transição probabilísticas, e não determinísticas.

Na terminologia de AGs. Tuna solução candidata é chamada de indivíduo

ou cromossomo. Ao conjunto de indivíduos simultaneamente avaliados é dadoo nome de população. A cada indivíduo é associado uni grau de adaptação ouaptidão, que mede a capacidade da solução, representada pelo indivíduo pararesolver uni dado problema. AGs não garantem unia solução ótima, mas geral-

mente encontram soluções quase ótimas em um tempo aceitável. Esta técnicaemprega uma estratégia de busca paralela e estruturada. embora com uni forte

componente aleatório, que é voltada em direção à busca de pontos de "maior

aptidão", ou seja, pontos nos quais a função a ser minimizada (ou maximizada)tem valores relativamente baixos (ou altos).

Apesar de aleatórios. eles não definem caminhos desordenados em direção

a uma solução ótima, uma vez que utilizam informações históricas para definirnovos pontos de busca, onde são esperados melhores desempenhos. Isto érealizado através de processos iterativos, em que cada iteração é chamada de

geração. Durante cada geração, princípios de seleção e reprodução são apli-

cados a uma população de candidatos. A população pode variar de tama-

nho, dependendo da complexidade do problema e dos recursos computacionaisdisponíveis. Espera-se que ao final de um número de gerações o algoritmo ve-nha a convergir para soluções ótimas ou quase ótimas.

AGs são baseados na teoria da evolução natural. proposta por CharlesDarwin em The Origin of Species. publicado em 1859 [Dar59]. Segundo estateoria, a evolução das populações naturais por várias gerações ocorre de acordo

com os princípios de seleção natural e sobrevivência dos mais aptos. É interes-sante observar que a teoria da evolução e a computação nasceram praticamente

na mesma época: Charles Babbage, um dos fundadores da computação mo-derna e amigo pessoal de Darwin, desenvolveu sua máquina analítica em 1833.

Para a utilização de AGs em problemas de otimização e busca, uma seqüênciade passos deve ser observada, conforme descrevemos a seguir.

O primeiro passo é a geração da população inicial. Em seguida deve serdeterminado como os indivíduos serão codificados, permitindo a sua posterior

132

manipulação pelos operadores genéticos. A este processo dá-se o nome codifi-

cação ou representação. Durante o processo evolutivo, a população é avaliada:para cada indivíduo é dada unia nota, ou índice, refletindo sua habilidade de

adaptação a um determinado ambiente.

Uma porcentagem dos mais aptos é mantida, enquanto os outros são descar-tados (darwinismo). Os membros mantidos pela seleção podem sofrer mo-

dificações em suas características fundamentais através de mecanismos como

mutações e crossovers, gerando descendentes para a próxima geração. Este

processo, chamado de reprodução, é repetido até que uma solução satisfatória

seja encontrada. Como defende Goldberg [Gol89], embora possam parecer

simplistas do ponto de vista biológico, estes algoritmos são suficientementecomplexos para fornecerem mecanismos eficientes e robustos de busca adapta-

tiva. A seguir. cada uma destas fases será detalhada. Para tornar mais claros

os conceitos apresentados, será utilizado um exemplo de otimização através deAlgoritmos Genéticos. O exemplo envolve a otimização de ingredientes para o

preparo de um bolo. Os ingredientes a serem otimizados são:

• número de colheres de açúcar (ingrediente A);

• número de colheres de sal (ingrediente B);

• número de colheres de farinha de trigo (ingrediente C

• número de ovos (ingrediente D).

7.1.2 Representação

O primeiro aspecto a ser considerado para a utilização de AGs como ferramen-tas para a solução de problemas é a representação destes problemas em uma

estrutura na qual estes algoritmos possam trabalhar adequadamente. Dá-se

o nome genótipo ou cromossomo ao indivíduo codificado de acordo com esta

estrutura. O indivíduo antes de ser codificado é chamado de fenótipo. Para

avaliação de um cromossomo, é preciso decodificá-lo para o fenótipo correspon-dente. Para o exemplo do preparo de bolo, o genótipo poderia ser um vetor dequatro elementos, cada elemento definindo a quantidade de cada uni dos ingre-dientes. O fenótipo seria o bolo preparado com a quantidade de ingredientesestabelecida pelo genótipo correspondente. A quantidade de cada ingredientepoderia ser codificada por um número decimal ou binário. A aptidão ou notade cada indivíduo poderia ser determinada por um provador, por exemplo.

133

Page 76: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Tradicionalmente, os indivíduos são representados por vetores binários, em

que cada elemento de um vetor denota a presença (1) ou ausência (0) de umadeterminada característica. Os elementos de um genótipo são combinados paraa definição das características reais do indivíduo, ou seja, o seu fenótipo. Teori-camente, a representação binária é independente do problema, pois, uma vez

encontrada a representação em vetores binários, as operações-padrão podemser utilizadas, facilitando a sua utilização em diferentes tipos de problemas.A utilização de representações em níveis de abstração mais altos também temsido investigada. Como estas representações estão mais ligadas aos fenótipos,

elas são mais adequadas para problemas em que a transformação "fenótipo-genótipo" é mais complexa. Neste caso, podem ser necessários operadoresespecíficos para utilizar estas representações.

7.1.3 Seleção

O processo de seleção determina quais indivíduos da população podem par-ticipar da fase de reprodução. Os indivíduos são selecionados de acordo comuma probabilidade dada pelo seus índices ou notas de aptidão. Assim, os in-divíduos com maior adaptação relativa têm maiores chances de participar dareprodução. O princípio básico do funcionamento dos Algoritmos Genéticos éque uni critério de seleção faz com que, após várias gerações, o conjunto inicialde indivíduos produza indivíduos mais aptos. A maioria dos métodos de se-leção é definida para escolher preferencialmente indivíduos com maiores notasde aptidão. embora não exclusivamente (em alguns casos é também desejávelmanter a diversidade da população).

Um método de seleção muito utilizado é o método da roleta, em quecada indivíduo ocupa, em uma roleta, uma área proporcional ao seu índicede aptidão. Desta forma, aos indivíduos com maior aptidão é associada umafatia maior da roleta, e vice-versa. Para a definição da área relativa de cadaindivíduo na roleta, a nota de cada indivíduo é normalizada pela Equação 7.1:

not normalizada notaoriginali

originalnotai

i=1

A Figura 7.1 ilustra a definição das áreas da roleta para um conjunto de

indivíduos cujas notas são mostradas na Tabela 7.1.

Figura 7.1: Seleção utilizando o método da roleta.

Tabela 7.1: Notas dos cinco indivíduos de uma população.

Indivíduo Nota original Nota normalizada

11 0.15 0.0512 0.75 0.2513 0.3 0.1

14 0.45 0.1515 1.35 0.45

Durante a seleção, a roleta é girada N vezes, selecionando N indivíduospara participarem da fase de reprodução. Indivíduos com maiores notas, porpossuírem áreas maiores, têm maior probabilidade de serem selecionados. A

utilização do resultado da função de avaliação para escolher os tamanhos dasfatias nem sempre é o método mais adequado. Se a função de avaliação atribuirum valor muito alto a um indivíduo, então este indivíduo pode monopolizar a

seleção, levando a uma convergência prematura do Algoritmo Genético.

Pode ocorrer também de a função de avaliação atribuir valores de aptidãomuito próximos aos indivíduos, tornando suas fatias na roleta aproximada-mente iguais. Com isto, a seleção pode não favorecer os indivíduos mais aptos.Uma possível solução para estes problemas é a utilização da técnica de ranking.

Na técnica de ranking, a fatia é definida não pela nota relativa de cadaindivíduo, mas pela posição que eles ocupam no ranking de todas as notas.Esta técnica define a fatia de cada indivíduo por meio da escolha de um valor

real entre 0.0 e 1.0. Cada indivíduo, em ordem decrescente de ranking, ocupa,

134 1 135

Page 77: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

da área total da roleta que ainda não foi ocupada, uma fatia proporcional aeste valor. Por exemplo. se o valor escolhido for 0.6. o indivíduo de maiorranking ocupará 60% da roleta. O segundo indivíduo ocupará 60% dos 40c

que sobraram, que é igual a 24%. O terceiro indivíduo ocupará 60% de 167cque sobraram, que é igual a 9.6%. O indivíduo de menor ranking ocupará aárea que sobrou da roleta. A Tabela 7.2 ilustra o ranking dos indivíduos deacordo com suas notas. Vários casos nos quais esta alternativa é melhor que asimples utilização das notas são apresentados em [«,'hi89].

Tabela 7.2: Ranking dos cinco indivíduos de uma população.

Indivíduo Nota original Nota normalizada Ranking11 0.15 0.05 512 0.75 0.25 213 0.3 0.1 4

14 0.45 0.15 31,5 1.35 0.45 1

A função de avaliação define a nota ou índice de aptidão de cada indivíduoda população. A função utilizada depende do problema atacado. Esta funçãorecebe como entrada um genótipo e retorna sua aptidão ou grau de adap-

tação. Em problemas em que se busca o ponto máximo de unia função F. porexemplo, a função de avaliação é a própria função F. Para casos mais com-plexos, a função se torna mais sofisticada. Como exemplo, para o problema de

otimização do projeto de uma ponte, a função de avaliação poderia incluir acarga máxima suportada, o custo da construção e o tempo da construção. Aseção seguinte descreve como ocorre o processo de reprodução.

7.1.4 Reprodução

Os indivíduos escolhidos na fase de seleção participam da fase de reprodução.em que podem ser combinados ou modificados, produzindo os indivíduos da

próxima geração. Estas combinações e modificações são realizadas por um con-junto de operadores chamados operadores genéticos. Os operadores genéticossão utilizados para transformar uma população através de sucessivas gerações.estendendo a busca até a obtenção de um resultado satisfatório.

Os principais operadores de reprodução são: crossover (ou cruzamento)e mutação. Eles são utilizados para assegurar que a nova geração apresente

novos indivíduos (soluções), mantendo características desejáveis adquiridas emgerações anteriores. Para prevenir a eliminação dos melhores indivíduos pelamanipulação dos operadores genéticos, estes indivíduos podem ser automati-

camente colocados na próxima geração através do operador de elitismo.

O crossover é o operador responsável pela recombinação de características

genéticas dos pais durante a reprodução. permitindo que elas sejam herdadaspelas próximas gerações. Ele é considerado o operador genético predominante,

por isso é aplicado com uma probabilidade, chamada taxa de crossover. maior

que a taxa de mutação. Este operador pode ser utilizado de várias maneiras.

As mais freqüentes são:

• Crossover de uni ponto:

• Crossover multipontos:

• Crossover uniforme.

Para o primeiro caso. crossover de uni ponto . uni ponto de cruzamento. que

é um ponto entre dois genes de um cromossomo, é escolhido , e. a partir deste

ponto, as informações genéticas dos pais são trocadas . Um dos filhos herda

as informações anteriores a este ponto de um dos pais e as informações após

este ponto do outro pai . O outro filho herda os genes restantes . Esta operação

é ilustrada pela Figura 7.2. O crossover multipontos é uma generalização da

operação anterior, onde, em vez de uni único ponto , podem ser utilizados vários

pontos de cruzamento . O outro tipo de crossover, o crossover uniforme. não

utiliza pontos de cruzamento , mas determina , por meio de uma máscara, que

genes de cada pai serão herdados por cada um dos filhos . Se o i-ésinio elementoda máscara apresentar o valor 1. o valor do i-ésimo gene do filho 1 será igual aovalor do i-ésimo gene do pai 1. Se o i-ésinio elemento da máscara apresentar ovalor 0, o valor do i-ésimo gene do filho 1 será igual ao valor do i-ésinio gene ciopai 2. O inverso ocorre na definição do valor dos genes do filho 2. O crossover

uniforme é apresentado na Figura 7.3.

O operador de mutação é responsável pela introdução e manutenção da di-versidade genética na população, alterando arbitrariamente um ou mais genesde um cromossomo escolhido aleatoriamente. Este operador fornece meios

para a introdução de novos elementos na população. A operação de mutação

é ilustrada pela Figura 7.4.

136 137

Page 78: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Pai 1

1

A mutação assegura que a probabilidade de se chegar a qualquer ponto do

espaço de busca nunca será zero, além de contornar 'o problema de mínimoslocais, por permitir a alteração da direção da busca. O_ operador de mutação

é aplicado aos indivíduos com uma probabilidade dada pela taxa de mutação,que é geralmente pequena. Na maioria das vezes, a mutação é aplicada após aoperação de crossover. Com base nos conceitos expostos, são apresentados aseguir os passos a serem seguidos por um Algoritmo Genético.

1. Escolher um conjunto de cromossomos iniciais

1 o

Filho 1

Figura 7.2: Operação de crossover um ponto.

Máscara

0

t

Pai 1

lio

Filho 1

1 0é,1

1

Pai 2

ÕJ i 1o1

Filho 2

o

Pai 20 o

lio

Filho 2

Figura 7.3: Operação de crossover uniforme.

Pai

o FO

1

11 1

Filho

o 1

1o

Figura 7.4: Operação de mutação.

2. Repetir

2.1 Definir nota de cada cromossomo

2.2 Selecionar os cromossomos mais aptos

2.3 Aplicar operadores de reprodução sobre cromossomos seleciona-

dos

1

3. Até cromossomo adequado ser obtido ou serem realizadas N gerações

O processo evolucionário termina quando o algoritmo convergir, for obtidoum indivíduo adequado ou for realizado um determinado número de gerações.O algoritmo converge quando pelo menos X% dos genes possuem o mesmovalor em pelo menos Y% dos indivíduos. Os valores de X e Y são definidospelo usuário de acordo com o problema sendo tratado. Na próxima seção, serãodiscutidos os diferentes parâmetros a serem definidos para a utilização de AGse como estes parâmetros influem no comportamento obtido.

7.1.5 Parâmetros genéticos

Ao utilizar AGs para a solução de um problema, é importante analisar como aescolha dos parâmetros utilizados pode influir no seu comportamento para quese possa estabelecê-los conforme as necessidades do problema e dos recursosdisponíveis. Segundo [Jon80I, os principais parâmetros e suas influências sãoos seguintes:

• Tamanho da população. O tamanho da população afeta o desempenhoglobal e a eficiência dos AGs. Com uma população pequena, o desempe-nho pode cair, pois a população pode cobrir apenas uma pequena parte

do espaço de busca. Uma grande população geralmente fornece unia

138 1 139

Page 79: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

cobertura representativa do domínio do problema. além de prevenir con-

vergências prematuras para soluções locais, em vez de globais. No entan-

to, para se trabalhar com grandes populações, são necessários maiores re-cursos computacionais, ou que o algoritmo trabalhe por um longo períodode tempo.

• Taxa de cruzamento. Quanto maior for esta taxa, mais rápida a intro-dução de novas estruturas na população. Se esta taxa for muito alta,

indivíduos com bons índices de aptidão poderão ser retirados a uma ve-

locidade que supere a capacidade de gerar melhores indivíduos. Se estataxa for muito baixa, a busca pode estagnar.

• Taxa de mutação. Uma baixa taxa de mutação previne que unia dadaposição fique estagnada em um valor, além de possibilitar que se chegue

em qualquer ponto do espaço de busca. Com uma taxa muito alta, abusca se torna essencialmente aleatória.

• Intervalo de geração. Controla a porcentagem da população que serásubstituída para a próxima geração. Com uni valor alto, a maior parteda população é substituída, o que pode levar à perda de indivíduos de

alta aptidão. Com um valor baixo, o algoritmo pode se tornar muitolento, pois o número de gerações necessárias pode ser muito grande.

Embora algumas heurísticas tenham sido propostas, a escolha destes parâ-metros geralmente ocorre por meio de um processo de tentativa e erro.

7.1.6 Aplicações

Um sistema que necessite de bom desempenho em um ambiente dinâmico geral-mente exige soluções adaptativas ou evolutivas. Sistemas evolutivos tentamresolver problemas acumulando conhecimento sobre o problema e utilizandoeste conhecimento para gerar soluções aceitáveis . Como mostra [Aus90], estesproblemas são encontrados nas áreas de: configuração de sistemas complexos,alocação de tarefas, seleção de rotas e outros problemas de otimização e apren-dizado de máquina . Seguem-se alguns exemplos de sistemas que podem utilizarAGs:

• controle de sistemas dinâmicos;

• indução e otimização de bases de regras;

• definição de arquiteturas neurais;

140

• simulação de sistemas biológicos:

• evolução interativa de imagens;

• composição musical.

A seção seguinte vai discutir como AGs podem ser utilizados para otimizar

o projeto de RNAs.

7.1.7 Projeto evolucionário de RNAs

O desempenho obtido por RNAs. principalmente de redes MLP, depende da

topologia destas redes (tamanho. estrutura e conexões), assim como dos parâme-tros de seu algoritmo de treinamento (taxa de aprendizado. termo momentum

etc.). A determinação da rede (o que inclui a arquitetura e os parâmetros de

aprendizado) afeta a velocidade e a eficiência do processo de aprendizado, a

tolerância a falhas e ruídos e a capacidade de generalização.A determinação de unia rede adequada não é uma tarefa simples. O espaço

de busca entre as RNAs válidas é muito grande. Além disso. ele é decepti-

vo e multimodal, como pode ser observado em [MTH89]: deceptivo pois duas

arquiteturas similares podem apresentar desempenhos muito diferentes: mul-timodal, porque duas arquiteturas muito distintas podem ter desempenhos

semelhantes.

Existem técnicas que utilizam conhecimentos empíricos para o projeto darede [Cau91]. Em [BT90] é sugerida uma abordagem muito utilizada na prática.

que é a construção de redes a partir de redes padronizadas ou redes previa-

mente utilizadas. Uma vez escolhidas. estas redes são testadas para a funçãodesejada e alteradas até se mostrarem adequadas para a aplicação pretendida.

Entretanto, esse tipo de abordagem demanda muito tempo, tem um custo ele-vado e não apresenta resultados confiáveis. Além disso, não é possível garantir

a otimização da solução. pois o critério de desempenho é baseado em uma com-

binação complexa de fatores.

Visando a resolver este problema de otimização de arquiteturas, várias

técnicas para automação do projeto de RNAs para classes particulares de pro-blemas vêm sendo pesquisadas. Uma destas técnicas envolve a utilização deAlgoritmos Genéticos (abordagem evolucionária). Murrav, em [Mur94]. de-fende que os AGs proporcionam a abordagem mais natural para a solução

deste problema, especialmente porque o cérebro humano também é resultado

da evolução biológica.

141

e

e

Page 80: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Existem outras possibilidades de utilização da abordagem evolucionáriaem RNAs, tais como a sua utilização como algoritmo de treinamento, con-

forme mostrado em [b4D89a, PFF951 e para encontrar regras de aprendizadoeficientes para redes perceptron [Cha90]. Outras possibilidades promissorassão: a escolha de pesos iniciais da rede, a determinação de conjuntos de. dadospara treinamento, a validação e teste dos atributos a serem utilizados nestesconjuntos, e a determinação de janelas de dados de entrada para a previsão deséries temporais.

Nesta seção será discutido o projeto evolucionário de RNAs, com ênfaseem abordagens de representação, critérios de avaliação de desempenho, es-tratégias de reprodução, mecanismos de seleção e funcionamento dos opera-dores genéticos.

Principais aspectos

Para a aplicação de AGs no projeto de RNAs, os seguintes aspectos devem serlevados em conta:

• Representação: é necessária uma representação apropriada (genótipo)das possíveis soluções, normalmente na forma de vetores. Deve ser forneci-da uma representação adequada das redes e uma função que transformeesta representação genotípica em soluções fenotípicas: arquiteturas deredes.

• Desempenho: é preciso que seja fornecida uma função que associe umanota de aptidão a cada solução, isto é, ao desempenho de cada uma dasredes da população. Este valor deve refletir o desempenho destas redesna solução do problema considerado.

• Reprodução: devem ser especificados os operadores genéticos que permi-tam a criação de novas redes. A especificação destes operadores dependeda representação utilizada. Em alguns casos pode ser necessária a satis-fação de restrições que assegurem a validade das redes geradas.

No projeto evolucionário de RNAs, cada indivíduo pode ser visto como umponto ou estado do espaço de possíveis redes. Iniciando o processo com uma

população de redes válidas, geradas aleatoriamente, um gerador reconstrói es-tas redes (fenótipos) a partir de sua representação (genótipos) de acordo coma função de transformação (codificação) utilizada. Em seguida, um simulador

treina todas as redes com um mesmo conjunto de dados de treinamento e

142

validação, avaliando seus desempenhos. Os desempenhos obtidos permitem a.avaliação da população, com a atribuição de uma nota de aptidão a cada rede,de acordo com o seu desempenho em relação às outras redes. Por meio de

um método como o método da roleta, são selecionadas N redes, onde N é onúmero de indivíduos da população para a fase de reprodução. Nesta fase,

os operadores genéticos são aplicados aos indivíduos selecionados, produzindouma nova geração de redes.

Para evitar que as melhores redes desapareçam rapidamente da população,pode ser utilizada uma política elitista, que faz com que estas redes sejam dire-

tamente enviadas para a próxima geração. Esse ciclo é repetido, e, a cada novageração, a população idealmente evolui rumo a genótipos que correspondam afenótipos, redes, com melhores desempenhos. Este processo termina quandoé encontrada uma rede adequada, ocorre uma convergência para uma soluçãoúnica ou é atingido o número máximo de gerações.

7.1.8 Representação das redes

A questão de como uma arquitetura neural é representada é crítica no projetode um sistema evolucionário. Balakrishnan e Honavar [BH95a] afirmam quea representação ou codificação utilizada determina não apenas as classes deRNAs que podem ser geradas mas também o funcionamento dos processos. decodificação, de decodificação e dos operadores de reprodução. A representaçãoda estrutura de uma Rede Neural não pode ser uma tarefa complexa. Váriosfatores devem ser considerados para a escolha da representação:

• se a representação permite que soluções ótimas ou aproximadamenteótimas sejam representadas;

• como estruturas inválidas podem ser excluídas;

• como devem atuar os operadores de reprodução, de forma que a novageração possua somente redes válidas;

• como a representação suporta o crescimento em tamanho das redes.

De acordo com [Bra95], o ideal seria que o espaço genético das RNAs não

contivesse genótipos de redes inviáveis e que fosse possível a expansão desteespaço a todos os genótipos de redes potencialmente úteis. Segundo [Wei90],existem dois paradigmas principais de representação de RNAs: a representação

direta, ou de baixo nível, e a representação indireta, ou de alto nível. Existe

143

Page 81: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

urna clara distinção entre estes dois paradigmas. A seguir, são apresentadas asprincipais características de cada uni deles.

Representação direta

Unia representação direta especifica exatamente cada parâmetro da rede. Ela

requer pouco esforço de decodificação, devido à simplicidade da transformação

genótipo-fenótipo. Uni exemplo de representação direta é a codificação de urna

RNA em uma matriz de conexões, que especifica, de maneira direta e precisa.as conexões da rede. Deve ser observado, entretanto, que este tipo de codifi-

cação pode tornar o espaço de busca muito grande, levando à necessidade de

um maior número de iterações, sendo assim útil apenas para topologias neuraisrelativamente pequenas.

Uni método de representação direta muito utilizado foi apresentado por[-'\ITH89]. Para uma rede com N unidades, este método utiliza matrizes deconexões binárias N(N + 1). onde cada elemento C, da matriz determina aexistência ou não de unia conexão entre as unidades j e i. A coluna N + 1 re-presenta a existência ou não do termo de polarização. Claramente, este métodoé voltado para a escolha das conexões. visto que outros parâmetros da rede de-vem ser previamente estabelecidos. Os problemas principais dessa abordagem

são o tamanho dos códigos e a possibilidade de geração de estruturas incorretas.Existe também a necessidade de códigos muito grandes para a representaçãode redes com um grande número de camadas e conexões. Outro problema éque, mesmo trabalhando com redes feedforward, podem ser geradas conexõesde feedback. O problema de geração de estruturas incorretas foi tratado com ainclusão de um operador específico para eliminá-las.

Este método foi um dos primeiros apresentados na literatura. Outrosmétodos foram posteriormente propostos com base neste tipo de representação.

No método proposto em [WSE92], os valores dos pesos das conexões são in-cluídos, fazendo com que o método possa ser utilizado como um algoritmo detreinamento ou de escolha dos pesos iniciais. Em um outro trabalho, [SJW91],as redes são codificadas através de listas de unidades e de conexões.

Representação indireta

Diversos métodos de representação não codificam diretamente as arquiteturasneurais em genótipos, mas utilizam descrições abstratas para a caracterizaçãodas redes, ou ainda codificações gramaticais. As abordagens que utilizam re-

presentações indiretas podem exigir um esforço considerável para a decodifi-cação dos cromossomos em fenótipos. No entanto. as redes podem ser pré-

estruturadas. utilizando restrições que evitem arquiteturas indesejáveis. re-duzindo assim o espaço de busca. Deste modo, as buscas podem ser focalizadas

na procura das melhores redes.

Uma das primeiras abordagens de representação indireta foi proposta por

[Kit90], que codifica topologias neurais através de regras, em unia gramática

livre de contexto. Neste método, os símbolos não-terminais correspondem amatrizes 2 x 2 de símbolos terminais. Os símbolos terminais devem ser substi-

tuídos por matrizes 2 x 2 de valores binários.

Nos problemas onde foi utilizado, este método apresentou uni desempe-nho superior ao obtido pelo método de codificação direta, pois encontrou as

topologias mais rapidamente e com menores taxas de erro. A vantagem deste

método fica mais evidente quando o número de unidades intermediárias das re-des é aumentado. Este método também é voltado para a escolha das conexões.

e, como utiliza matrizes de conectividade, precisa de códigos grandes para a

representação de grandes topologias.

Métodos mais sofisticados, apresentados por [HSG89, hlan93 . trabalham

com representações indiretas através de descrições de redes em termos de uniconjunto de parâmetros como: número de camadas, número de nodos porcamada e conexões entre camadas. Este método possibilita a aplicação de res-

trições sobre as redes geradas, reduzindo ainda mais o número de estruturasincorretas. Com isso, o número de estruturas a serem treinadas e avaliadas.

assim como o número de gerações necessárias para obter boas redes, são dras-

ticamente reduzidos.

0 método proposto por [AIan93], basicamente um aperfeiçoamento do méto-

do apresentado por [HSG89], é voltado para a escolha da estrutura e dasconexões. Ele utiliza urna representação que descreve os principais compo-nentes das redes em duas áreas: área de parâmetros e área de camadas. A área

de parâmetros especifica a taxa de aprendizado e o termo momenturn para

todas as conexões da rede. Cada camada tem sua própria área de camada.

especificando o número de unidades e as conexões para as outras camadas.

Na área de camadas, as conexões são separadas em projetivas (conexões comcamadas posteriores) e receptivas (conexões com camadas anteriores). Elas são

145144

Page 82: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

especificadas através dos parâmetros raio e densidade. O parâmetro raio es-pecifica o raio de conexão de cada rodo da camada atual, sendo dado por uma

porcentagem do tamanho da camada de destino. O parâmetro densidade, porsua vez, especifica a densidade de conexões de uma unidade receptiva, sendodefinido pela porcentagem de unidades que estão conectadas a esta unidade.Uni problema deste método é que sua decodificação é inexata. Os parâmetros

raio e densidade são definidos como porcentagens relativas ao tamanho dascamadas a serem conectadas. Durante a decodificação, as conexões são esta-belecidas aleatoriamente seguindo estes parâmetros. Assim, um mesmo códigopode produzir diferentes redes. Uma simplificação deste método que resolve assuas limitações foi proposta por [FC97].

As formas de representação discutidas anteriormente são geralmente uti-lizadas para redes MLP. Também tem sido investigada a otimização genéticade redes RBF [WC96, LdC98]. Em comparação com as redes MLP, poucasabordagens têm sido propostas para a otimização de redes RBF. O principalaspecto abordado na otimização de redes RBF envolve a definição do con-junto de centros, a posição destes centros no espaço de entrada e a larguradas funções-base representadas pelas unidades intermediárias . O parâmetro deregularização , utilizado para melhorar a generalização das redes RBF [Hay94],pode ser também otimizado.

7.1.9 Operadores genéticos

Os operadores genéticos são utilizados para transformar a população de redesde uma geração para outra, diversificando esta população e mantendo as carac-terísticas desejáveis adquiridas pelas gerações anteriores. Estas característicaspodem ser: taxa de aprendizado, termo momentum e número de unidadesnas camadas intermediárias. Os operadores são especificados de acordo com arepresentação utilizada. Podem ser utilizadas funções que limitem as transfor-mações heurísticas de acordo com a funcionalidade desejada, além de funções

que assegurem a validade das redes geradas. O operador de crossover permitea troca de características entre duas redes, que são selecionadas com probabili-dade dada pela taxa de cruzamento. O operador de mutação geralmente causa

apenas pequenas mudanças qualitativas nas características das redes. Deve-seter cuidado para que redes inválidas não sejam geradas. A próxima seção tratada combinação de RNAs com RBC.

7.2 Combinação de RNAs com RBC

Assim como foi feito na seção anterior com Algoritmos Genéticos, noçõesbásicas de Raciocínio Baseado em Casos (RBC) serão apresentadas antes dediscutirmos como esta técnica pode ser combinada com RNAs.

7.2.1 Raciocínio baseado em casos

RBC é um paradigma de IA que visa à resolução de problemas por analo-gias. Analogia está associada com lembrança, e, no contexto de RBC, significalembrar de experiências prévias, também denominadas casos, para resolverproblemas correntes [AP94, Bar91]. A utilização de RBC na resolução de pro-blemas envolve adaptar soluções antigas para atender novas necessidades, usarcasos antigos para explicar novas situações, utilizar experiências passadas paracriticar novas soluções ou raciocinar a partir de precedentes para interpretaruma situação semelhante [Ko193]. RBC apresenta uma forte semelhança coma forma como o ser humano raciocina no seu dia-a-dia. As pessoas a todomomento estão utilizando suas próprias experiências, ou as dos outros, paraobterem informações que as ajudem a resolver um determinado problema. Aseguir é apresentado um exemplo encontrado em [Ko192], que utiliza RBC paraajudar um psiquiatra a diagnosticar a doença de uma paciente.

Um psiquiatra analisa uma paciente que exibe sinais claros de de-

pressão. A paciente conta ao médico que, entre outras coisas, re-

centemente teve um problema de estômago que os médicos não en-

contraram a causa orgânica. Enquanto na psiquiatria não é da-

da muita importância às reclamações aparentemente sem ligaçãocom o caso, o doutor está se lembrando de um caso anterior emque ele diagnosticou um paciente com depressão que também se

queixou de um conjunto de problemas físicos que não poderiam ser

explicados organicamente. Somente depois de perceber que deve-

ria também ter dado àquelas queixas maior atenção, ele faz o di-

agnóstico de Distúrbios Somáticos Associados à Depressão. Por ter

se lembrado do caso anterior, a hipótese do psiquiatra de que esta

paciente também deve ter Distúrbios Somáticos Associados à De-pressão prosseguiu com a investigação do diagnóstico apropriado.

No exemplo acima, o médico utiliza o diagnóstico de um caso anterior paraformar uma hipótese sobre o diagnóstico do novo caso. Esta hipótese faz comque o médico tenha um raciocínio mais curto (um atalho), e também o alertapara evitar um equívoco ocorrido anteriormente. Mais ainda, o caso anterior

146 1 147

Page 83: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

faz com que ele focalize sua atenção em aspectos do caso que ele normalmentenão teria considerado.

Este capítulo apresenta o funcionamento e os mecanismos de um sistema

de RBC, os estilos de sistemas de RBC. seu histórico. e como RNAs têm sidointegradas a estes sistemas.

ENTRADA -* CasoNovo

CasoAprendido

REUSAR

7.2.2 Histórico de RBC

Acredita-se que os trabalhos de Roger Schank, em [SA77], sobre raciocínio eaprendizado baseados em memória e os modelos descritos por ele com tais ca-

racterísticas para a construção de sistemas computacionais foram a semente

da área de RBCs. Entretanto. o que de fato marcou o início de RBC foi apublicação do trabalho de Roger Schank em 1982 sobre memória dinâmica.intitulado Dynamic Alemory: A Theory of Rem.in.ding and Learning in Com-puteis and People [Sch82]. Suas idéias foram expandidas por seus alunos, prin-cipalmente por Janet Kolodner. que desenvolveu, na Universidade de Yale, em1983. o- primeiro sistema que realmente pôde ser chamado de RBC. O sistema

em questão foi chamado CYRUS [Kol83a, Ko183b]. O modelo de memóriabaseado em casos desenvolvido no sistema CYRUS serviu de base para outrossistemas de RBC em diversas áreas. tais como MEDIATOR [Sim85] (na área de

mediação), PERSUADER [Syc88] (na área de persuasão), CHEF [Ham89] (na

área de culinária), JULIA [Hin88. (na área de culinária) e CASEY [Kot89] (naárea de medicina). Outros trabalhos envolvendo modelos diferentes foram de-

senvolvidos por Bruce Porter e seu grupo na Universidade do Texas [PBH90].Os frutos destes trabalhos foram os sistemas PROTOS [PB86] (na área demedicina) e GREBE [Bra91] (no domínio das leis). Edwina Rissland e seu

grupo da Universidade de l\-Iassachusetts também contribuíram significativa-mente para a pesquisa de RBC, desenvolvendo o sistema HYPO [Ash91] (sobre

leis) e, mais tarde, CABARET [SR92] (ferramenta). Phyllis Koton, do MIT,estudou a utilização de RBC para otimizar o desempenho de um SBC da áreamédica, resultando no sistema CASEY [Kot89].

Atualmente, as pesquisas envolvendo RBC têm se expandido para vários

outros centros. Não apenas pesquisadores de países europeus e norte-americanos

estão trabalhando com RBC mas também do Japão e de alguns países asiáticos(por exemplo, a índia [VKR93]), têm se mostrado interessados nos diversosdomínios de aplicação desse paradigma.

Caso CasoTestado/ ResolvidoReparado

SoluçOoConfirmada

REVISAR

caso

Caso NovoRecuperado

SoluçáoSugerida

Figura 7.5: Ciclo de um sistema de RBC (adaptado de Aamodt). Neste dia-

grama, podem ser visualizadas as principais etapas de um sistema de RBC e

como elas interagem.

7.2.3 Funcionamento de um sistema de RBC

Dada a descrição de um novo caso como entrada para um sistema de RBC, este

deve buscar, em sua memória de casos, um caso armazenado que se pareça coma descrição de entrada. A seguir, o sistema deve se adaptar, ou seja, modificaras partes do caso recuperado que não se ajustam à descrição de entrada. Em

resultado desta adaptação, tem-se uma solução para o problema proposto eum novo caso que poderá ser adicionado à memória de casos do sistema. Em

geral, sistemas de RBC estão relacionados aos seguintes processos:

• Representação de Casos;

• Indexação de Casos;

• Armazenamento e Recuperação de Casos;

• Adaptação de Casos;

• Avaliação e Reparo de Casos.

Um conjunto de soluções coerentes para estes processos constitui um sis-

tema típico de RBC. A Figura 7.5 mostra como estes processos estão conecta-dos em um sistema de RBC típico. A seguir, cada um destes cinco processos é

analisado em mais detalhes.

148 149

Page 84: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

7.2.4 Representação de casos

O desempenho de um sistema baseado em casos depende da estrutura e doconteúdo armazenado em sua coleção de casos, uma vez que, para resolver umnovo problema, é necessário "lembrar" de uma experiência anterior semelhante.

Os processos de busca e casamento de casos precisam ser eficientes e executadosem um tempo razoável. O problema de representação de casos em RBC pode

ser abordado por:

1. Definição do conteúdo que será armazenado.

2. Determinação das características mais relevantes de cada caso.

3. Busca de uma estrutura apropriada para descrever estas características.

O primeiro problema - definir o conteúdo que será armazenado - significaescolher o que representar dos casos. Na maioria das vezes este conteúdo podeser dividido em três partes:

• Descrição situacional do problema, que descreve o estado do mundo quan-

do o caso aconteceu e qual o problema a.ser solucionado naquele momen-

to.

• Solução do problema, que descreve a solução encontrada para o problema,

em questão e, às vezes, o procedimento utilizado na sua resolução.

• Resultado, que descreve o estado resultante do mundo quando a soluçãofoi utilizada.

Dependendo das informações armazenadas nestas três partes, pode-se uti-lizar o caso para diferentes propósitos. O segundo problema é determinar ascaracterísticas mais relevantes de cada caso. Esta é a principal tarefa de En-genharia do Conhecimento em sistemas de RBC. Embora possa parecer trivial,identificar características em casos, principalmente do mundo real, não é sim-

ples. Definir a terminologia do domínio e selecionar os exemplos representativosde resolução dos problemas também são tratados aqui. O terceiro problemaenvolve encontrar a estrutura apropriada para descrever as características re-levantes dos casos. Há várias estruturas propostas para a representação de co-nhecimento. Entre elas, pode-se citar Redes Semânticas e Memória Episódica[Sla91], Roteiro (script), Cena e MOP (AIemory Organization Packet) [SR89].

7.2.5 Indexação de casos

O poder de um sistema de RBC está em sua habilidade em recuperar com rapi-dez e segurança casos relevantes de sua memória (Base de Casos). O objetivo

do processo de indexação é fornecer condições para que um caso semelhantepossa ser selecionado e recuperado quando solicitado. Para recuperar um caso,é preciso que ele esteja endereçado apropriadamente na memória, ou seja, é

preciso associar o caso a um índice que facilite a sua recuperação. Os tipos deindexação mais utilizados são:

• Indexação pelo vizinho mais próximo: baseia-se na distância euclidianaentre o novo caso e os casos armazenados. Um problema relacionadoa este tipo de indexação diz respeito ao peso de determinadas carac-terísticas, que só terão o mesmo valor para casos muito semelhantes.

• Indexação indutiva: determina indutivamente quais as característicasmais importantes para os vários casos. A memória de casos é organi-zada com base nas características encontradas. E possível determinarautomaticamente as melhores características de um caso.

• Indexação baseada em conhecimento: utiliza o conhecimento existentena literatura para cada caso e determina quais características são impor-tantes para recuperá-los. Esta abordagem é preferível quando o conheci-mento está disponível e pode ser representado.

7.2.6 Armazenamento e recuperação de casos

Uma vez que os casos estejam representados e indexados, eles devem ser ar-mazenados em uma estrutura eficiente para serem recuperados posteriormente.Isto envolve dois processos: armazenamento e recuperação de casos. No pro-cesso de armazenamento, um novo caso é armazenado na memória de casospara que possa ser utilizado no futuro. Quando aparecer um novo problema, osistema de RBC recupera de sua memória o caso mais semelhante ao problema.Na maioria das vezes, o sistema precisa modificar partes do caso recuperadopara obter uma solução adequada, pois raramente o caso recuperado atendeperfeitamente às condições do problema. Após a adaptação do caso recuperado,tem-se um novo caso, que poderá ser armazenado ou não na memória de casos.

A decisão de quando armazenar um novo caso pode ser tomada tanto auto-maticamente pelo sistema quanto pelo engenheiro do conhecimento. Segundo

[Bar91], a adição de um novo caso à memória de casos pode ser caracterizadacomo um processo de aprendizado. Em geral, o processo de recuperação de umcaso ou conjunto de casos envolve duas fases:

150 1 151

Page 85: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

• Acesso a casos anteriores: recupera uni conjunto de possíveis candidatosa serem escolhidos por meio de algoritmos de busca. Este conjunto é for-

mado por casos que podem fornecer soluções relevantes sobre o problemaproposto. Este subprocesso é conhecido como casamento parcial.

• Seleção de casos: escolhe o(s) caso(s) ou mais promissor(es) do conjuntode casos previamente acessados utilizando unia função de casamento.

7.2.7 Adaptação de casos

Um sistema de RBC caracteriza-se por utilizar soluções antigas como basepara resolver novos problemas . Como novos problemas raramente se encaixamexatamente em algum caso antigo, as soluções anteriores precisam ser modifi-cadas para atender às novas situações . Este processo é chamado de adaptação.São estabelecidas em cada base algumas regras de adaptação que podem serutilizadas pelo sistema de RBC. Estas regras, aplicadas ao caso recuperado. otransformam em um novo caso que se adequa melhor ao problema apresenta-do. Como este processo tende a ser um problema específico e dependente dodomínio , é difícil definir uma estratégia geral para adaptação de casos. Porexemplo, a estratégia de adaptação necessária para uni problema de projetodeve ser diferente da estratégia de adaptação necessária para um problema dediagnóstico . Geralmente , a adaptação de casos é realizada manualmente pelopróprio usuário. O desenvolvimento de métodos automáticos para a adaptaçãoé uma das principais áreas de pesquisa de RBC.

7.2.8 . Avaliação e reparo de casos

Após a obtenção de uma nova solução, esta deve ser testada em um processochamado avaliação, que tem por objetivo verificar se a nova solução resolve oproblema apresentado. Esta avaliação pode ser baseada nos efeitos causados

quando aplicada ao mundo real, ou na simulação mental ou real. Pode aindaser baseada no contexto de casos anteriores. Se a solução obtida falhar, devemser identificadas as causas da falha, identificando, por exemplo, as diferenças

entre o que era esperado e o que de fato ocorreu. Finalmente, o processo dereparo, como o próprio nome diz, repara a solução proposta, tornando-a aptaa resolver corretamente o problema apresentado.

7.2.9 Integrando RNA com RBC

A integração de Raciocínio Baseado em Casos com Redes Neurais tem sidoinvestigada por vários pesquisadores [KW93, Koc96. PP93]. Esta integração

pode ser obtida pela divisão de tarefas entre o RBC e a RNA ou pelo projeto deurna arquitetura inteligente combinando características das duas abordagens.

Para o primeiro caso existem, de acordo com [RC94], quatro abordagens, as

quais generalizam os diferentes paradigmas utilizados para integrar RBC com

outros métodos de raciocínio:

• Controle Central, em que o RBC e a outra técnica são controlados por

um dispositivo central.

• Controle Distribuído, em que o controle é dividido entre as duas técnicas.

• Fortemente RBC, quando o sistema RBC exerce um controle maior.

• Fracamente RBC, quando a outra técnica exerce um controle maior.

Na maioria das propostas de integração de RNA com RBC, as RNAs têmsido utilizadas para indexação e recuperação de casos. Para tal, as redes procu-ram por padrões de similaridade entre os casos. Outras propostas utilizam as

redes durante o processo de raciocínio, extraindo o conhecimento adquirido pela

rede para suportar aquele raciocínio. A utilização de RNA para indexação temcomo desvantagem a possível necessidade de retreinar a rede cada vez que umnovo caso é adicionado à base de casos. Entretanto, algoritmos de aprendiza-

do incremental podem ser utilizados para treinar a rede apenas com os novoscasos. Uma outra alternativa envolve o emprego da rede para a aquisição decasos. Para isto, a rede pode ser treinada com exemplos representativos do

problema a ser tratado. Após o treinamento, regras poderiam ser extraídas darede para a construção de uma base de casos. O processo de adaptação poderia

ser obtido treinando a rede para os novos casos.

Ene [KW93], Krovvidy e Wee apresentam um sistema de tratamento deesgoto utilizando RBC e RNAs. No modelo desenvolvido neste trabalho, o sis-

tema RBC fornece um estado inicial de uma solução para uma rede de Hopfieldque é então utilizada para sugerir uma seqüência ótima de processos para otratamento do esgoto. Quando uma nova seqüência de processos é necessáriapara o tratamento de determinado esgoto, as concentrações dos elementos con-

taminadores deste esgoto são utilizadas para indexar um tratamento que teve

sucesso utilizando concentrações semelhantes.

Um sistema simples de indexação neural para sistemas RBC foi propos-to por Malek, em [Ma195]. O mecanismo de indexação utiliza unia memória

hierárquica de casos com dois níveis. O nível mais baixo contém casos or-ganizados dentro de grupos de casos semelhantes. O nível mais alto contém

152 153

Page 86: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

protótipos, cada um representando um grupo de casos. Este nível é utilizado

para indexar o sistema . Este sistema de indexação baseado em protótipo foicomparado com outros dois métodos de indexação indutiva, o C4.5 [Qui93] e oID5R [Qui86], e apresentou uma melhor capacidade de generalização. Outrasvantagens exibidas são a diminuição do tempo de recuperação, devido- a um

número menor de protótipos, e a simplificação do aprendizado de novos casos.

No trabalho apresentado em [RCB95], padrões de similaridade entre casos

de um sistema de RBC são aprendidos por RNAs. Estes padrões são utilizadospara avaliação psicológica de candidatos a transplante de coração. O conheci-mento implícito armazenado na rede é extraído e interpretado simbolicamente.Posteriormente, ele é armazenado em uma estrutura chamada descritores dediagnósticos, que é utilizada para guiar o processo de raciocínio do sistemade RBC. Neste trabalho, foram apresentados gráficos mostrando a relevânciade possíveis combinações de características, dados pelo especialista, para cadadiagnóstico considerado. Estes gráficos foram comparados com o conhecimentoarmazenado rios descritores e verificou-se que o tipo de informação armazena-da nos descritores é muitas vezes diferente do conhecimento representado nosgráficos dos especialistas; porém, quando utilizados na prática, a representaçãodada pelo especialista tem menor taxa de classificação correta que a represen-

tação dada pelo sistema de RBC.

Em outro trabalho [RC9I], R\As e RBCs são combinados em um sistemapara classificação de transações de cartões de crédito. Enquanto o sistema

de RBC utiliza casos específicos para determinar quando uma transação podeser admitida ou recusada, a rede neural reconhece padrões gerais de compor-tamento para o uso correto ou incorreto de cartões de crédito e utiliza esteconhecimento na classificação das transações.

Milaré e Carvalho , em [MC98], utilizaram uma Rede Neural ART 1 [CG87b]

para indexar um sistema de RBC voltado para o domínio da culinária. Nestetrabalho. cada receita era codificada como um caso , que poderia ser utilizado

como entrada da rede ART 1. O desempenho da rede para a indexação erecuperação de casos foi comparado com o desempenho obtido pelo métododos vizinhos mais próximos [Fai88], mostrando a superioridade da solução queutiliza a rede. A seção seguinte analisa como pode ser extraído conhecimentode RNAs.

7.3 Extração de conhecimento

RNAs são conhecidas pelo bom desempenho que geralmente obtêm quando

utilizadas em uma grande variedade de aplicações. Entretanto, para váriasdestas aplicações, é importante não apenas o desempenho obtido, mas tambéma facilidade de o usuário compreender como a rede chega às suas decisões. Maisespecificamente, quando um método é utilizado para classificação, pode ser im-

portante, para o usuário, entender como e por que um dado padrão de entradafoi classificado em uma dada classe. Esta é justamente uma das principaiscríticas às RNAs: a sua incapacidade de explicar como e por que a rede gerasuas respostas. Devido a esta incapacidade, RNAs são comumente chamadasde caixas pretas.

Cada vez mais, pesquisadores, projetistas e usuários acreditam que todoo potencial das RNAs não poderá ser completamente explorado enquanto nãofor acrescentado a estes modelos um mecanismo que explique e justifique suasdecisões. Esta necessidade é essencial se as redes forem utilizadas em sistemasem que a segurança na operação seja um aspecto importante. Este é o caso deproblemas como:

• controle de usinas nucleares;

• controle do sistema de navegação de aeronaves;

• diagnóstico médico;

• diagnóstico de falhas;

• análise de crédito;

• e muitos outros.

Várias definições têm sido propostas para a extração de regras de RNAs.Uma das definições mais completas pode ser encontrada em [CS94]:

Dados uma RNA treinada e os exemplos utilizados para treiná-la, a

extração de regras produz uma descrição simbólica precisa e concisa

da rede.

É importante chamar a atenção para a distinção entre extração de conhe-cimento e extração de regras de RNAs. Quando são utilizadas técnicas de

extração de conhecimento, o conhecimento obtido não precisa necessariamenteestar na forma de regras (embora isto aconteça na maioria dos casos). Outras

154 1 155

Page 87: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

modalidades de conhecimento podem ser extraídas, como valores estatísticos,protótipos de clusters etc. Extração de regras é um caso especial de extraçãode conhecimento em que regras são extraídas de unia rede previamente treina-da. Conhecimento não é necessariamente representado por regras. Deve ser

observado, no entanto, que a maioria dos trabalhos encontrados na literaturasobre extração de conhecimento corresponde, na verdade, à extração de regras.

Neste capítulo, extração de conhecimento será utilizado como sinônimo de ex-tração de regras.

As principais vantagens relacionadas à utilização de técnicas de extraçãode regras como parte das operações realizadas por RNAs são:

• Exploração de dados e dedução de novas teorias: sistemas de apren-dizado desempenham um papel importante no processo de descobertas

científicas. Uni sistema pode descobrir novos relacionamentos e carac-terísticas importantes nos dados de treinamento, permitindo a formulação

de novas teorias. RNAs têm se mostrado eficientes para a exploração de

dados, uma vez que, dotadas de um mecanismo de extração de conheci-mento, podem descobrir dependências e relacionamentos entre os dados.Além disso, a extração de regras melhora a capacidade das redes paraexplorar os dados, beneficiando assim o usuário.

• Facilitar a aceitação pelo usuário: uma das características mais elogiadaspelos usuários de sistemas simbólicos é a explicação das decisões tomadas

por estes sistemas. Tem sido verificado que a capacidade de gerar expli-cações, mesmo limitadas (em termos de utilidade e coerência), é um as-

pecto crucial para a aceitação destes sistemas por seus usuários. No casode RNAs, a falta de regras explícitas que fundamentem as decisões apre-

sentadas dificulta sua aceitação pelos usuários. Esta deficiência constituiuma barreira clara à expansão de seu uso.

• Melhoria da generalização das soluções da rede: por expressarem o conhe-cimento adquirido pela rede durante o seu treinamento, as regras simbó-licas podem ser utilizadas para descobrir as circunstâncias em que a redepode cometer erros de generalização. O usuário também pode utilizaras regras extraídas para identificar regiões no espaço de entradas que

não estejam suficientemente representadas no conjunto de treinamento.Dados de treinamento adicionais podem ser então incluídos para melhoraro desempenho da rede.

• Integração com sistemas simbólicos: as regras aprendidas por uma rede

neural, extraídas por meio de unia técnica de extração de regras, podem

ser utilizadas para comunicação das redes com sistemas simbólicos de IA.As regras criam unia espécie de linguagem comum entre as duas técnicas,

facilitando a sua integração.

• Redefinir a rede: as regras extraídas da rede podem ainda ser utilizadas

para verificar a adequação da arquitetura escolhida para a aplicação na

qual a rede está sendo utilizada.

É importante ressaltar que a inclusão da capacidade de extração de regrasa modelos de RNAs possui um custo, tanto em termos de recursos quanto em

termos de esforços adicionais necessários. Por isso, esta inclusão precisa ser

bem justificada para não ter uni efeito negativo. Para facilitar a comparaçãode diferentes algoritmos de extração de regras, serão apresentados a seguir

alguns parâmetros referentes a como eles podem ser classificados:

• fonte das regras;

• extensão das regras:

• abrangência da técnica.

A extração de regras de uma RNA pode ocorrer utilizando as funções apren-

didas pelos nodos da rede ou a classificação realizada pela rede para os dadosde entrada. Diederich, em [A+96], propõe uma classificação para algoritmosde extração de regras de acordo com a fonte da qual elas são extraídas. Es-

ta classificação leva em conta o poder de expressão das regras extraídas e a

complexidade da técnica de extração. De acordo com esta classificação, os

algoritmos podem ser divididos em três abordagens:

• Decomposicional ou estrutural: esta abordagem extrai as regras a partir

dos nodos da rede treinada. Assim, a estrutura da rede é a principal

fonte das regras.

• Didática ou funcional: as técnicas que seguem esta abordagem vêem a

rede treinada como uma caixa preta. A extração de regras é unia tarefade aprendizado cujo objetivo é aprender a função computada pela rede.Portanto, as técnicas que seguem esta abordagem procuram extrair regrasque mapeiam a entrada diretamente na saída, sem se preocupar cone os

passos intermediários.

156 [ 157

Page 88: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

• Eclética ou combinacional: esta abordagem é uma combinação das abor-

dagens anteriores e inclui técnicas que utilizam conhecimento sobre aarquitetura interna e/ou vetores de pesos para complementar um algo-ritmo de aprendizado simbólico que utiliza os dados de treinamento.

Na abordagem estrutural, o algoritmo também pode ser classificado deacordo com a extensão das condições das regras [Ga193]. As condições da regra

para um dado nodo podem ser expressas de duas formas:

• em termos dos nodos diretamente conectados a ele;

• apenas pelas variáveis de entrada da rede.

Caso as regras sejam expressas em termos dos nodos diretamente conec-tados, a extração da regra para cada nodo será facilitada. Entretanto, se ainformação estiver distribuída na rede, de forma que a informação associadaa cada nodo não tenha sentido, uma regra envolvendo as variáveis de entradapode ser uma opção melhor.

Uma outra classificação diz respeito à generalidade do algoritmo ou técnicade extração. Neste caso, um dado algoritmo pode ser classificado como:

• Geral: quando o algoritmo pode ser aplicado a um grande número demodelos de redes diferentes.

• Específico: o algoritmo que pode ser aplicado a apenas um ou poucosmodelos.

A maioria das regras extraídas é na forma de regras if-then. Estas regras

podem ser utilizadas posteriormente em um sistema de inferência lógica para a

resolução de problemas. Um segundo uso de regras if-then pode ser a geração

de regras para um sistema baseado em conhecimento. É de se supor que é maisfácil para o especialista fazer comentários sobre regras do que criar um con-junto consistente de regras if-then com suas respectivas medidas de confiança.Deve ser observado que quanto mais curtas as regras (em termos de númerode cláusulas) melhor, pois regras mais curtas geralmente podem ser aplicadasa mais situações [Gal93].

A seguir são apresentados três métodos de extração de regras de RNAs, osmétodos EN [PG92], Trepan [CS96] e DEDEC [AG94].

7.3.1 Método EN

O método EN, ou Explanation Facility [PG92], fornece recursos para respondera perguntas do tipo: Por quê?, Como?, feitas a uma Rede Neural treinada.Este método é de implementação simples e pode ser utilizado em quase to-dos os modelos de redes. Enquanto a opção por quê? define por que a rede

gerou uma dada resposta, utilizando um conjunto de valores de entrada, aopção como explica como uma saída foi produzida para um determinado con-

junto de valores de entrada. Ambas as opções constroem uma cadeia de regras.

De modo a prover essas explicações, o método EN seleciona um conjuntode neurônios baseado nos valores absolutos de todos os pesos ligados a cadaneurônio da rede. Deste conjunto de neurônios selecionados são considerados osneurônios mais significativos da rede, que são assim utilizados para a definiçãodas regras.

7.3.2 Algoritmo Trepan

O algoritmo Trepan foi desenvolvido por Craven e Shavlik [CS96]. Este algorit-

mo faz perguntas a uma RNA treinada utilizando os padrões de entrada do seuconjunto de treinamento. As respostas a estas perguntas são utilizadas para aconstrução de uma árvore de decisão que aproxima o conhecimento represen-tado pela rede. Trepan aborda a extração de um conjunto compreensível deregras de uma rede neural treinada como sendo um problema de aprendizadoindutivo. Neste aprendizado, o objetivo é a função representada pela rede, e adescrição do conhecimento adquirido pela rede é uma árvore de decisão que aaproxima. Para evitar que as árvores extraídas fiquem muito grandes, Trepanutiliza um parâmetro para limitar o número de seus nós internos.

Para guiar a construção da árvore, Trepan utiliza um oráculo, capaz deresponder a perguntas durante o processo de construção. O oráculo, por suavez, faz perguntas à rede, uma vez que é na rede que está presente o conheci-mento a ser extraído. A vantagem de aprender por perguntas, em vez de por

exemplos, é que as perguntas podem conseguir, de urna forma mais precisa eespecífica, as informações que se mostrarem necessárias.

7.3.3 Método DEDEC

O algoritmo DEDEC foi proposto por Tickle, Orlowski e Diederich em [TOD95].Esta técnica é voltada para a extração de regras if-then de redes 1\ILP treinadascom o algoritmo back-propagation. Assim como o Trepan, o DEDEC também

158 1 159

Page 89: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

procura combinar a robustez presente nas RNAs com a capacidade de expli-cação dos algoritmos de aprendizado indutivo. Para a construção de um grupo

de regras, DEDEC seleciona uni subconjunto de exemplos do conjunto de todos

os exemplos de treinamento. Para isso, utiliza tanto a rede treinada quanto in-

formações extraídas dos pesos da rede. O grupo de regras é extraído utilizandouni algoritmo de aprendizado indutivo para aprender a partir do subconjunto

de exemplos selecionados. Os exemplos selecionados podem incluir exemplosnão-utilizados para treinar a rede.

7.4 Conclusão

Neste capítulo, após unia introdução à técnica de AGs, foi mostrado como

o projeto de arquiteturas de RNAs do tipo ÃILP pode ser automatizado por

estes algoritmos. Foram mostrados os principais aspectos dos processos decodificação, avaliação de desempenho e reprodução. Foram analisados os prin-

cipais métodos de codificação existentes para representação direta e indiretade arquiteturas neurais. Foi também discutida a integração de RNAs com

urna técnica de Aprendizado de Máquina simbólico. RBC. Após uma breveintrodução a esta técnica. foram discutidos métodos de integração destes dois

paradigmas. Por fim, foi mostrado como regras podem ser extraídas de RNAstreinadas.

7.5 Exercícios

1. Qual o principal inconveniente da otimização genética de RNAs?

2. Em que fases de um sistema RBC seria possível e aconselhável uti-lizar RNAs?

3. Como poderia ser utilizada uma rede treinada com aprendizado su-pervisionado para a indexação de casos?

4. A função calculada por um neurônio pode sempre gerar urna regra?

5. Qual a principal diferença entre os algoritmos de extração de regrasTrepan e DEDEC?

6. Qual a diferença entre extração de regras e extração de conhecimen-to?

Capítulo 8

Redes Neurais sem Pesos

8.1 Introdução

Neste capítulo será descrita unia classe de RNAs conhecida como Redes NeuraisSem Pesos (RNSPs) [LdO94]. Esta classe de RNAs começou a ser estudadana década de 60, motivada pelas dificuldades enfrentadas pela comunidade

para a implementação em hardware dos pesos das conexões de nados do tipo

1\IcCulloch-Pitts.

RNSPs têm sua origem no método das n-tuplas de Bledsoe e Browning[BB59]. Bledsoe e Browning propuseram representar a presença de unia com-binação qualquer em partes de um padrão binário através de um valor lógico

(sim ou não). Em 1965, Igor Aleksander, um dos pioneiros na pesquisa deRNSPs, propôs um modelo de nodo totalmente digital, baseado em disposi-

tivos de memória de acesso randômico. O modelo, que podia ser utilizado paraimplementar em hardware o método das n-tuplas, foi batizado inicialmente de

SLA1M (Stored Logic Adaptive Microcircuit), passando depois a ser conhecido

mais popularmente como RAM (do original Random Access Memory) [A1e66].

A principal diferença entre as RNAs convencionais e as RNSPs é a forma dearmazenar a informação. No modelo com pesos, a informação fica armazenada

nos pesos das ligações entre os diversos nodos da rede, enquanto nas RNSPs ainformação fica armazenada na memória dos dispositivos, em tabelas-verdade.Em vez de ajuste de pesos, o aprendizado em uma RNSP geralmente con-

siste em modificar o conteúdo das memórias das tabelas-verdade, o que resultaem algoritmos de aprendizado rápidos e flexíveis. Existem outras diferençasimportantes entre as RNAs e as RNSPs: (1) nas primeiras, é possível se ter eu-

.160 161

Page 90: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

tradas, saídas e pesos assumindo qualquer valor real, enquanto as RNSPs são

essencialmente discretas; (2) os nodos das RNAs computam apenas funçõeslinearmente separáveis, enquanto os nodos das RNSPs computam todas as

funções booleanas de suas entradas; e (3) o nodo com pesos é capaz de "gene-ralizar" o conhecimento ensinado, enquanto o nodo sem peso, individualmente,não - neste último caso, a generalização existe apenas no nível da rede.

RNSPs recorrentes têm as principais características das redes de Hopfield(procurando mínimos de energia em tempo de execução), máquinas de Boltz-mann (treinamento de unidades escondidas para escapar de mínimos locais) eretropropagação de erros. Retropropagação de erros em RNSPs é mais rápidae mais direta do que nas redes com pesos. Além do mais, RNSPs podem serimplementadas diretamente em hardware usando técnicas de lógica digital.

Vale ressaltar aqui a diferença entre Redes de nodos booleanos eRNSPs. Redes de nodos booleanos são aquelas que lidam somente com valores

booleanos em suas entradas e saídas. Embora toda RNSP seja uma rede denodos booleanos, a recíproca nem sempre é verdadeira, pois existem redes de

nodos booleanos que não são RNSP.

Tanto o aprendizado supervisonado [FFB91, BG87, PC87] como o não-supervisionado [FFB91, TS92, CFB92] têm sido usados com sucesso nasRNSPs. A eficiência dos modelos de RNSPs em aplicações práticas do mundoreal tem sido demonstrada em vários experimentos [FFB91, MA93, MTW94,

UBB95].

Na Seção 8.2 será vista a definição do nodo RAM seguida de um algoritmode treinamento genérico para estas redes. Na Seção 8.3 serão descritos osdiscriminadores, que são redes de uma única camada formada de nodos RAI\Is,e em seguida o sistema WISARD. Na Seção 8.4 serão introduzidos o nodo PLNe um algoritmo de treinamento genérico para redes compostas de nodos PLNs.Na Seção 8.5 estende-se o PLN, definindo a rede IvIPLN, enquanto na Seção 8.6estende-se o PLN, definindo o modelo GSN. Ainda no decorrer deste capítulo,serão descritos o nodo GRAM (Seção 8.7), o podo GNU (Seção 8.8), o nodo

pRAM (Seção 8.9) e os modelos SDM (Seção 8.10), ALN (Seção 8.11) e ADAM(Seção 8.12). O capítulo termina com um estudo comparativo entre as RNSPse as RNAs.

162

zN

^^...^ c [2 = 11

.

oo ...i c [1 ]

oo...oL c [O]

.

.

Figura 8.1: Nodo RAM.

8.2 Nodos RAM

r

Um nodo RAM funciona no domínio discreto, recebendo como entrada e pro-duzindo como saída valores binários. O nodo é capaz de computar qualquer

função lógica com um dado número de entradas. Seu nome decorre da analo-gia que é feita com os circuitos RAM encontrados na memória principal doscomputadores modernos.

Considerando um nodo RAM uma tabela-verdade, sua função de saída édescrita pela equação abaixo:

J 0 se C [p] =o

1 se C[p]=1r=l

onde C[p] é o conteúdo do nodo associado ao padrão p.

(8.1)

A sua estrutura é ilustrada na Figura 8.1, onde em cada nodo RAM temos:

• Os terminais de entrada (Ir, I2, .... I,v ), que podem ser entradas exter-nas, saídas de outros nodos ou uma entrada de realimentação ( feedback);

• A saída de dados. r, pode assumir o valor 0 ou 1;

• Cada uma das 2-Y posições de memória, C[p], endereçadas pelo padrãop, guarda o valor 0 ou 1;

163

Page 91: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

• Uni terminal de modo de operação, s, que define a fase em que o nodo se

encontra: aprendizagem ou uso. Se for aprendizagem (valor armazena-do igual a 1). o valor binário de d é guardado na posição de memória

relacionada:

• Uni terminal de ensino, d. fornece a saída desejada na fase de aprendiza-gem:

• A conectividade. N. que define o número de terminais de entrada.

Cada nodo reconhece apenas padrões a que ele foi submetido na fase de

aprendizado, ou seja. não há generalização por parte do nodo propriamentedito. A generalização pode ser conseguida a partir da combinação das sub-

características que cada nodo individualmente consegue reconhecer em umpadrão.

A seguir. nas Figuras 8.2, 8.3 e 8.4. é apresentado uni exemplo. Na Figura8.2. é apresentado uni modelo simples usando rodo RAM e nina porta AND. O

conjunto de treinamento. contendo três padrões para esta rede, é apresentado

na Figura 8.3. As RAMs são ensinadas a responder com 1 para os padrõespresentes no conjunto de treinamento e somente os padrões que farão com que

as três RAINIs tenham saídas 1 serão incluídos na mesma classe do conjunto detreinamento. O conjunto de generalização reconhecido pela rede é mostradona Figura 8.4.

Esta arquitetura simples divide o conjunto de todos os padrões possíveisnaqueles que estão no conjunto de generalização e naqueles que não estão. Ca-

so haja a necessidade do reconhecimento de mais de uma classe de padrões.várias redes de nodos RA\I podem ser combinadas, de forma a conseguir al-

cançar este objetivo. Todavia, essa conexão não é feita através de uma portalógica entre as várias saídas das diversas redes que compõem o sistema. Emvez disso, um detector de resposta máxima analisa a resposta de cada rede.

Essa resposta também deve ser modificada, a fim de expressar o grau de re-conhecimento daquele determinado padrão por uma dada rede. O padrão irápertencer à classe reconhecida pela rede cuja resposta foi máxima. Essa es-

trutura modificada das redes RABI é chamada de Discriminador e foi usadapioneiramente no sistema WISARD, que será visto detalhadamente adiante. OWISARD foi desenvolvido por Wilkie, Stonham e Aleksander, e passou a sercomercialmente produzido a partir de 1984.

Aprendizado comum

Figura 8.2: Rede RA-M com 3 nodos.

Figura 8.3: Conjunto de treináinento.

SaidaOh

oo

tJ

1

1o

164 ^ 165

Page 92: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Figura 8.4: Conjunto de generalização: os padrões extras que a rede reconhece.

As redes RANI geralmente possuem nodos com conexão parcial e com conec-

tividade baixa (praticamente de 2 a 10), porque o aumento da memória utiliza-da por unia RAM cresce exponencialmente com o aumento linear do número

de entradas.

A seguir . é apresentado um algoritmo de aprendizado genérico para redes

de nodos RAM.

Um algoritmo genérico para redes RAM

1. Apresente um Padrão de EntradaUtilizando uma determinada estratégia de apresentação, coloque um dospadrões de entrada na camada de entrada, e então ative o passo de Sele-

cione Nodos para Aprender.

2. Selecione Nodos para AprenderSelecione uma fração 71 dos nodos para aprender, informe a saída desejada,

e ative o passo de Aprenda Saída Desejada. O parâmetro 17 representa a

taxa de aprendizagem.

3. Aprenda Saída DesejadaPermita que os nodos aprendam a saída desejada e então ative o passo

Cheque Magnitude do Erro.

4. Cheque Magnitude do Erro

Para checar a magnitude do erro, pode-se adotar várias estratégias dife-rentes quanto à forma de aceitar o erro como desprezível.. Uma regramuito comum é verificar se o erro global da saída da rede em relação àsaída desejada é menor que um dado valor (erro). Se a condição adota-da é satisfeita, então a rede aprendeu o conjunto de treinamento; casocontrário, volte a ativar o passo Apresente um Padrão de Entrada.

Fim do Algoritmo.

8.3 Discriminadores

Um discriminador consiste em uma rede de uma única camada com K nodosRABI de N entradas cada, que podem receber padrões de KN bits. Cadanodo é conectado à parte do padrão de entrada. Em conseqüência, (1) cadanó aprende apenas parte do padrão de entrada; e (2) a saída para um padrãocompleto de entrada não é apenas um bit (0 ou 1), mas um número bináriocom K bits. Esse número é então processado por um dispositivo somador,que dá como saída o número r de RAMs que disparam para aquele padrão deentrada.

Na Figura 8.5 é dada a representação de um modelo discriminador.

A rede é inicializada com o valor 0 em todas as posições de memória'. Treinara rede através de um padrão de entrada p significa apresentar o padrão p aosterminais de entrada e colocar 1 em todos os endereços acessados por p emtodos os k nodos da rede. Isso faz com que cada RAM na rede aprenda partedo padrão de entrada. O algoritmo de aprendizado para os discriminadores ésemelhante ao algoritmo de aprendizado apresentado na seção anterior.

Vale salientar que a saída de cada nodo é conectada a um dispositivo so-matório, logo, a saída da rede corresponde ao número de nodos RAM queresponderam com 1 ao padrão de entrada. Esse número é chamado de respostado discriminador. Claramente, se um dos padrões que foram usados no treina-mento da rede for submetido à rede, ele receberá o valor máximo de k. E seum padrão completamente diferente de quaisquer dos padrões de treinamentofor submetido, receberá o valor zero.

Uma análise probabilística simples mostra que, para padrões bem próximosa algum dos padrões de treinamento, a resposta da rede também será igual a k.

166 1 167

Page 93: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Valor daentrada Ft~e

Sa ida

-d

Figura 8.5: Discriminador.

Os discriminadores são muito usados para resolver problemas de interseçãode áreas, determinação de contornos, reconhecimento de formas mediante apresença de ruído (sujeira) etc.

8.3.1 Multidiscriminadores

Uni sistema com multidiscriminadores consiste em diversos discriminadoresacoplados, em que cada um é individualmente treinado para o reconhecimentode unia classe de padrões. Por exemplo, para reconhecimento de caracteres. énecessário treinar-se um discriminador para cada letra do alfabeto.

Quando um padrão desconhecido é submetido à rede, a resposta de cadadiscriminador é calculada (quantidade de RAMs que responderam com 1 ao

padrão). O sistema reconhece o padrão como pertencendo à classe cuja respos-

ta é a mais alta. Existem medidas de "confiabilidade" da resposta. Caso o valorde r não seja satisfatório, o padrão é dado como desconhecido para aquela rede.

A primeira utilização importante dos sistema de multidiscriminadores estápresente no projeto WISARD, que será explicado a seguir.

Figura 8 .6: Sistema com vários discriminadores - WISARD.

8.3.2 WISARD

O sistema WISARD é um sistema com multidiscriminadores, isto é. um grupo

de discriminadores trabalhando juntos, cada um responsável por reconheceruma determinada classe de padrão. Durante a fase de treinamento do padrão

p, a gravação ocorre apenas nas RAMIs que correspondem ao discriminador D;

responsável pela classe do padrão p. Após a fase de treinamento, em que todasas classes são treinadas nos seus respectivos discriminadores, o reconhecimento

de um padrão desconhecido p' é feito apresentando-se um padrão p' a todos

os discriminadores e verificando-se a resposta r de cada um. O padrão seráclassificado ou associado à classe correspondente ao discriminador com a maior

resposta r dentre todas as respostas.

O WISARD é uma implementação em hardware diretamente direcionado

ao reconhecimento de imagens . Um sistema para reconher as 26 letras do al-

fabeto consiste em 26 discriminadores com K-RAM nodos de N entradas de

endereçamento cada. Considera -se que os K -RAM nodos são randomicamente

conectados aos bits da imagem de entrada. Porém, na prática, há a limitaçãode que cada entrada da imagem seja conectada a precisamente um nodo RANI.

Embora esse modelo tenha sido apresentado para o reconhecimento deimagens, ele pode ser usado para reconhecer qualquer padrão de bits que seja

168 1 169

Page 94: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

apresentado a ele, como por exemplo um sistema de reconhecimento de fala.Outra característica importante é que os discriminadores usados na construção

do WISARD não precisam ser iguais , uma vez que cada um é usado para re-

conhecer um conjunto diferente de padrões . Usar discriminadores diferentes

não deve influenciar os resultados obtidos.

Também se deve treinar exaustivamente cada discriminador com variações

do padrão que se deseja que o WISARD reconheça.

Após a fase de treinamento, a resposta Rj (% dos K-RAMs que respon-

deram com 1) será obtida de cada um dos J-ésimo discriminadores (1-26). Osistema vai reconhecer o padrão de entrada que se está testando como sendoda classe de padrões pelo J-ésimo discriminador que possuir o maior Rj como

resposta. O reconhecimento do maior Rj é feito por um dispositivo chamadoCALCULADOR, que também tem outras duas importantes funções:

• Medir a confiança absoluta, isto é, não apenas dizer a que classe o padrãopertence, mas também poder dizer que o padrão testado é muito parecidocom uni dos padrões de treinamento, ou que o padrão não é parecido comnenhum dos padrões de treinamento, mas, se uma resposta é necessária,dizer que o padrão se parece mais com os padrões da classe J.

• Medir a confiança relativa: isto é feito através da relação C = D/Rjmax;

onde C é a confiança relativa, D é a diferença entre os dois mais altos

Rjs e Rjmax é o maior Rj.

Embora as posições dos nodos RA1v1 gravadas com 1 não contenham infor-mações ambíguas, o mesmo não pode ser dito das posições que contêm 0. Umpadrão de entrada desconhecido que acesse uma posição que contenha 0 podesignificar duas coisas:

• o padrão é um contra-exemplo da classe correspondente, supondo queaquela posição foi efetivamente treinada com 0, ou

• o padrão é daquela classe, só que aquela posição está com o valor 0 pornão ter sido treinada, devido à ausência de um padrão de treinamentocom esta posição ativada.

No segundo caso, o padrão poderá ser classificado erroneamente. Para su-perar este problema, Kan e Aleksander [KA89] desenvolveram o PLN(Probabilistic Logic Node), que será descrito na próxima seção.

8.4 Nodos PLN

Depois de uma tentativa de aproximação entre a máquina de Boltzmann e as

redes baseadas em RAM [A1e87], na qual a natureza probabilística dos nodosfoi declarada importante para resolver tarefas de completar padrões, Kan eAleksander propuseram o Probabilistic Logic Neuron (PLN) [KA89].

Um nó PLN consiste em um nodo RAM que armazena, para cada padrãode entrada p, a probabilidade de disparo do nodo para este padrão, e não so-

mente 0 ou 1. Esta probabilidade pode ser então 0 (não-disparo), 1 (disparo)ou u (indeterminado). O valor denotado por u equivale a 0.5 e representa se-manticamente um valor indefinido ou desconhecido. As redes de nós PLN sãoinicializadas com o valor u em todos os nós.

A idéia central do modelo PLN é fortalecer a diferenciação entre os padrõesvistos durante a fase de treinamento e os padrões não-vistos. Isto porque.inicialmente, todas as células guardam o valor indefinido, e apenas duranteo treinamento esses valores são alterados. Para padrões não-vistos durante aaprendizagem, os conteúdos dos nós permanecem com o valor u.

Durante o uso da rede, se uma célula com o valor u é acessada, o PLNproduz uma resposta 0 ou 1 aleatoriamente . Assim , a função de saída, em vezde ser determinística , como no nodo RAM, torna-se probabilística (aleatória).podendo ser definida da seguinte maneira:

0 se C[p] = 0r= 1 se C[p]=1

random (0,1) se C[p] = u

onde C[p] é o conteúdo da célula associada ao padrão p, e random(0, 1) é afunção aleatória que fornece 0's e 1's com a mesma probabilidade.

Redes PLN podem disparar síncrona ou assincronamente. As últimas secomportam como os modelos de Hopfield e Boltzmann, assemelhando-se a re-des com propriedades emergentes de conteúdo endereçável.

Em termos teóricos, a inclusão do terceiro valor lógico indefinido requer odobro de memória para sua representação, ou seja, a memória passa de 2'i bitspara um nodo RAM com ci entradas, para 2 x 2`'i bits para um nodo PLN como mesmo número de entradas.

170 1 171

Page 95: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

O valor indefinido em unia célula é usado para identificar uma entrada não-utilizada durante a fase de aprendizagem. Assim, se unia entrada que não foivista durante a fase de aprendizagem aparece na fase de uso, o nodo produz

uma saída aleatória que pode ser zero ou um. Essa saída funciona como umageneralização.

Depois de ter cessado a fase de aprendizagem, uni padrão não-treinado pode

fazer com que um nodo PLN produza valores opostos, sem qualquer adaptaçãoadicional. Isto reflete o comportamento probabilístico de nodos PLN, o qual

apresenta algumas conseqüências indesejáveis em reconhecimento de padrões[BFF89].

Com a proposta do modelo de nodo probabilístico, as atenções voltaram-separa redes PLN [KA87]. Kan e Alkesander propuseram uma rede associativa de

multicamadas formada de pares de módulos de memórias para realizar apren-dizagem associativa [KA87]. Os algoritmos de aprendizagem e a arquitetura

piramidal foram investigados em [MA88, AAS92, PGS90], funções de ativaçõesem [l\lye89], funcionalidade em [AAS89, AAS92], capacidade de armazenamen-to em [WS88] e reconhecimento de padrões em [BFF89].

A arquitetura piramidal tem sido utilizada na maioria dos trabalhos realiza-dos com redes PLN . Uma pirâmide é uma estrutura de multicamadas de nodos.Cada nodo é conectado a outros nodos da camada imediatamente anterior, ea saída de cada nodo é conectada a somente um nodo, i. e., o fan-out é 1. Aconectividade de cada nodo pode ser arranjada de qualquer maneira; contudo,

todos os nodos são comumente utilizados com conectividade uniforme (igual).

A Figura 8.7a ilustra a estrutura de uma pirâmide. Múltiplas pirâmides po-dem ser colocadas lado a lado para formar urna rede com um dado número desaídas, corno ilustrado na Figura 8.7b.

As pirâmides computam menos funções que as redes de camada única;contudo, diminuem o espaço de memória e aumentam a generalização quando

comparadas com uma rede de uma camada cobrindo o mesmo número de pixels.

Existem várias investigações teóricas sobre a capacidade de armazenamentoda estrutura de pirâmides. Uma análise estatística das propriedades de apren-dizado e recuperação nas pirâmides de PLN, quando aplicadas a armazena-mento e reconhecimento de padrões, foi feita por Wong e Sherrington [WS88],que sugeriram que as redes PLNs têm grande potencial como memórias neu-

En! ada

(a) (b)

Figura 8.7: (a) Estrutura de unia única pirâmide; (b) multipirâmides.

rais. Shapiro , em [Sha89]. mostrou que a existência de somente um caminho dequalquer entrada para a saída faz com que a estrutura de pirâmides não seja

adequada para aplicações cone muitas entradas . Al-Alawi e Stonharim [AAS89]

propuseram uma técnica para definir o número de funções que podem ser com-

putadas por uma estrutura de pirâmide.

Um algoritmo para realizar associação de padrões em unia arquitetura pi-

ramidal é o seguinte:

Um Algoritmo Genérico para Redes PLN

Passo 1 Apresente um Padrão de EntradaUtilizando uma determinada estratégia de apresentação, coloque um dos

padrões de entrada na camada de entrada e então ative o passo de Cheque

Indecisão de Aprendizagem.

Passo 2 Cheque Indecisão de AprendizagemPermite que cada pirâmide produza a saída desejada. Se a saída dapirâmide é diferente da saída desejada durante uni número suficiente

de ativações, então ative o passo de Conflito de Aprendizagem; caso

contrário, ative o passo de Aprenda Saída Desejada.

Entrada Pirâmides Saída

172 ^. 173

Page 96: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Passo 3 Aprenda Saída DesejadaPermite que cada nodo aprenda o valor da sua saída atual , criando assim

uma associação (mapeamento) da camada de entrada à camada de saída.

Passo 4 Conflito de Aprendizagem

O problema de conflito de aprendizagem pode ser resolvido pela adoção

da seguinte estratégia:

Apague um Caminho a partir da primeira camada na direção da última

camada, colocando valores indefinidos nos conteúdos endereçados de mo-do que eles possam ser utilizados para aprender a saída desejada, e volte

ao passo Apresente um Padrão de Entrada.

Fim do Algoritmo.

O número de iterações suficiente para decidir se uma pirâmide pode apren-

der a saída desejada, ou se existe um conflito de aprendizagem, depende de

variáveis como conectividade, arquitetura, número de nodos nas camadas, nível

de saturação e outras.

As redes PLN têm tido notável sucesso em vários tipos de aplicações. Lis-

tamos a seguir algumas vantagens das redes PLN em relação às redes RAM:

• Devido ao valor lógico adicional u, as redes PLN são capazes de distinguirentre posições de memória treinadas e não-treinadas. Isto tem efeitodireto nos algoritmos de treinamento. que poderão trabalhar apenas comas unidades não-treinadas e. assim, ser mais simples e mais rápidos.

• Há várias fontes de ruído na atividade ligada a redes neurais. Com aintrodução da formulação estocástica da rede PLN, acredita-se que se

obteve um modelo mais realista desta atividade.

• A rede PLN requer um menor número de nós que as RAMMI. Isto, na ver-dade, está de acordo com a diferença entre um autômato determinístico

e um não-determinístico. Pode-se simular o comportamento de um autô-mato não-determinístico utilizando-se um autômato determinístico, po-rém geralmente com um custo exponencial associado ao crescimento do

número de estados.

8.5 Modelo de nodo MPLN

A diferença básica entre o PLN e o IPLN (lllulti-value Probabilistic Logic

Neuron) é que, em vez de armazenar um valor do conjunto [0, 1, u], cada nó do

MPLN armazena a probabilidade de o nodo responder com 1 quando a célulaé acessada.

Os valores armazenados são inicialmente iguais a 0.5 (correspondente aovalor u). Durante o treinamento, o valor em uma célula é incrementado oudecrementado, podendo chegar a 0 (limite inferior) ou a 1 (limite superior).

O mesmo algoritmo de aprendizagem aplicado para PLN pode ser usadono caso do MPLN. A única diferença, neste caso, é a alteração da funçãoque computa o valor a ser armazenado nos nós quando ocorre alteração devalor (punição-recompensa). A seguinte função computa o novo valor a serarmazenado na célula atual:

C[P] C[p] + ?7g(r) recompensa(8.3)

onde C[p] é o conteúdo atual da célula associada ao padrão p, e g é a taxa deaprendizagem. g(r) é definida da seguinte maneira (com r sendo a respostadesejada para o nodo):

g(r) _j +1 se r=1ll -1 se r=0

Um dos parâmetros que influencia a rapidez com que cada valor chega a 0 ou1 é o número de elementos no conjunto de possíveis valores de armazenamento(ex.: 0, 0.25, 0.50, 0.75, 1). O outro parâmetro fundamental deste modelo é afunção de saída, que pode ser probabilística, linear, step ou sigmoidal.

8.6 Nodo GSN

O Goal-Seeking Neuron (GSN), proposto por Filho et. al. em [FBF90, FFB91]1é um nodo baseado em RANI que pode armazenar {0, 1, u}, onde u é o valorindefinido. Em contraste com PLN, o GSN é capaz de receber e gerar todos ostrês valores, e pode acessar um conjunto de células, e não apenas uma única

célula. Teoricamente, um GSN pode acessar de uma única célula (quandotodas as entradas são definidas) até todas as células (no caso quando todas

as entradas são indefinidas). O nodo busca por objetivos diferentes quandoem. estados diferentes. O GSN tem três estados de operação descritos como sesegue:

1. O estado de validação, em que o nodo valida a possibilidade de aprenderuma saída desejada sem destruir informações aprendidas previamente.

174 1 175

Page 97: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

2. O estado de aprendizagem, em que o nodo seleciona um endereço e ar-mazena a saída desejada.

3. O estado de uso, em que o nodo produz a melhor saída baseada no pro-cesso de aprendizagem.

Estado de Validação

Quando o nodo está no estado de validação, o objetivo é encontrar um valorindefinido, assegurando que o nodo pode aprender qualquer saída desejada. Se

não for possível encontrar um valor indefinido, o nodo pode produzir e apren-der um único valor binário.

Quando os conteúdos endereçados armazenam um valor indefinido, ou quan-do existe uma mistura de zeros e uns, a saída será um valor indefinido. A saída

será zero quando todos os conteúdos endereçáveis forem iguais a zero. A saída

será um quando todos os conteúdos endereçáveis forem iguais a um. Este mo-

do de operação ajuda a propagar valores indefinidos, procurando por célulasque possibilitem a aprendizagem de qualquer saída desejada. Uma célula não-utilizada pode armazenar a saída desejada (seja ela 0 ou 1), e, se existem

valores opostos, as células que armazenam a saída desejada podem ser usadassem destruir o que o nodo aprendeu previamente.

Estado de Aprendizagem

Quando o nodo está no estado de aprendizagem, o objetivo é procurar um

endereço que já armazene a saída desejada. Caso contrário, uma célula in-definida pode ser utilizada para armazenar a saída desejada. Se existe mais

de uma célula possível, então uma delas é escolhida aleatoriamente. A partirdo endereço escolhido, são geradas as entradas que acessam seu conteúdo queservem como saídas desejadas para os nodos da camada anterior.

Estado de Uso

Quando o nodo está no estado de uso, o objetivo é produzir o valor bináriocom maior número de ocorrências no conteúdo endereçável.

Se o número de 1s nos conteúdos endereçáveis é maior que o número deOs, então o nodo produz 1. Caso o número de Os seja maior que o número de

Is, então o nodo produz 0. Assim, mesmo quando os conteúdos endereçáveis

possuem um único valor 1 e o resto é indefinido, o nodo irá produzir 1.

Para compreender como os nodos GSN são utilizados para formar

unia rede , é interessante considerar inicialmente uma arquitetura piramidal

feedforward com um algoritmo de aprendizagem que realiza associação de pares

de padrões . Modelos de redes GSN com feedback e algoritmos de aprendizagem

não-supervisionado podem ser vistos em [FBF92. Sha89].

A rede GSN pode ser entendida considerando a existência de duas fases de

processamento: a primeira é a Fase de Aprendizagem, em que a rede valida a

possibilidade de associar um padrão de entrada com uma saída desejada para

em seguida aprender propriamente a associação: a segunda é a Fase de Uso.

quando a rede produz um padrão na saída que é associado com o padrão de

entrada. Estas duas fases são descritas e ilustradas a seguir:

Fase de Aprendizagem

A fase de aprendizagem se divide em estado de validação e estado de apren-dizagem. No primeiro estágio desta fase, a rede trabalha passando informações

para a frente, e cada pirâmide está indiretamente procurando produzir um va-lor indefinido no último podo. A saída da pirâmide indica a saída desejada.

que pode ser aprendida ou mapeada da primeira à última camada. Uma saída

indefinida indica que tanto 0 como 1 podem ser aprendidos.

No segundo estágio desta fase, a rede trabalha de trás para a frente, ou seja.da última camada para a primeira. A saída desejada de cada nodo é passada

para o nodo conectado da camada precedente (no sentido da última à primeira

camada).

Antes da fase de aprendizagem, todos os nodos possuem valores indefinidos

em seus conteúdos endereçáveis. Isto significa que a rede pode aprender qual-quer padrão, e que, quando a rede é solicitada para validar a possibilidade de

aprender um padrão, todas as pirâmides produzem o valor indefinido.

De modo a ilustrar o mecanismo de aprendizagem, considere unia pirâmidede três camadas com um padrão de entrada nos nodos de entrada como ilustra-do na Figura 8.8. Todos os nodos receberam inicialmente valores indefinidos.e a rede foi solicitada a validar o padrão de entrada; assim, todos os nodos

produzem o valor indefinido.

176 177

Page 98: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Figura 8.8: Validação para aprender um primeiro padrão.

Figura 8.9: Aprendizagem de um primeiro padrão.

Figura 8.10: Validação para aprender um segundo padrão.

Figura 8.11: Aprendizagem de um segundo padrão.

178 1 179

Page 99: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

A rede é colocada no estágio de aprendizagem para aprender o padrão deentrada com a saída desejada 1. O nodo na última camada seleciona um en-

dereço para armazenar a saída desejada, armazena seu valor no conteúdo epassa os bits que acessam o endereço escolhido corno saída desejada para os

nodos conectados na segunda camada. Assim, cada nodo na segunda camadaseleciona uni endereço para armazenar sua saída desejada, passada pelo nodo

da última camada. armazena seu valor, e por sua vez passa a saída deseja-da para os nodos conectados da primeira camada. Finalmente, cada nodo na

primeira camada armazena sua saída desejada na célula endereçada pelas suas

entradas, como ilustrado na Figura 8.9.

Figura 8.12: Validação para aprender um terceiro padrão.

17io

lo1

Figura 8.13: Aprendizagem de um terceiro padrão.

Um padrão de entrada diferente pode então ser validado, como mostra a

Figura 8.10. O estágio de aprendizagem com unia saída desejada diferente doprimeiro padrão é exemplificado na Figura 8.11.

Para se chegar a um algoritmo de aprendizagem, é interessante descrevercomo a rede é capaz de comprimir o mapeamento de padrões que possuema mesma saída em um único mapeamento . A Figura 8 . 12 mostra o estágiode validação para aprender um terceiro padrão de entrada . o qual pode seraprendido com qualquer saída desejada . A Figura 8 . 13 mostra o estágio deaprendizagem para a rede produzir a saída desejada 1. De fato. a rede utilizao mesmo mapeamento usado pela saída desejada anteriomente com valor 1.conservando todos os valores indefinidos nos nodos após a primeira camada.

Fase de Uso

A fase de uso consiste em colocar uni padrão de entrada nos nodos de en-

trada e fazer a rede produzir a saída que melhor represente a aprendizagemrealizada. Quando a rede está na fase de uso, seus nodos estão no estado de uso.

Um GSN no estado de uso procura pela saída binária de maior proba-bilidade de ocorrência no conteúdo endereçável. Nesta fase, a rede trabalhapassando informações para a frente (da primeira à última camada), quandocada pirâmide está indiretamente procurando produzir a saída associada como padrão de entrada que seja mais provável em função do processo de apren-dizagem. É possível que a rede produza uma saída indefinida, significando uniarejeição de resposta para o padrão de entrada. Considerando a rede utilizadana seção anterior, a fase de uso é bem ilustrada pela Figura 8.14, a qual produzuma saída que melhor generaliza o padrão de entrada estimulado.

180 - - 1 181

Page 100: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Figura 8.14: Recuperando um padrão.

8.7 GRAM

Sabendo-se que apenas as localizações acessadas pelos padrões de treinamento

são modificadas durante o aprendizado, um PLN sofre de hesitação . quando

o conjunto de treinamento é pequeno, porque muitas entradas são deixadasno estado u. Além disso, nodos RAMs e PLNs só conseguem generalizar no.nível da rede. Com o acréscimo de uma fase de espalhamento no algoritmode aprendizagem, uma única memória PLN é capaz de generalizar. Uma vezque nodos individuais com este algoritmo de aprendizagem são capazes de ge-neralizar (implicitamente, devido à fase de espalhamento), eles são conhecidos

na literatura como GRAMs (Generalizing Random Access Memories).

Depois da fase de treinamento, o conteúdo do nodo GRANI contém 1, 0ou u. Em seguida, vem a fase de espalhamento, quando se calcula um con-

junto de padrões que são semelhantes (têm a mesma distância de Hamming)àqueles que são da classe 1, e calcula-se também um conjunto de padrões quesão parecidos com aqueles que são da classe 0. Em seguida, os conteúdos dememória que contêm u, e são endereçados pelos padrões parecidos com a classe1, são preenchidos com 1, e os que são endereçados pelos que são da classe 0são preenchidos com 0. Os padrões que têm a mesma distância de Hammingde um da classe 1 e de um da classe 0 são ignorados. Em conseqüência, no finaldo espalhamento ainda haverá locações de memória iguais a u, correspondentesa esses padrões.

O que o algoritmo de espalhamento faz é procurar padrões numa base radial, tendo como centróide os padrões armazenados. Ou seja, ele cria um

grupo de padrões em torno do vetor de referência com raio igual à distância deHamming. No primeiro passo, o algoritmo calcula todos os grupos de padrõescuja distância de Hamming é igual a 1 com relação a cada um dos vetoresarmazenados, e em seguida preenche os conteúdos acessados por esses padrões

com a classe mais próxima. Se houver contradição, ou seja, se o padrão calcu-lado tiver a mesma distância de um padrão pertencente à classe 1 e de outropadrão pertencente à classe 2, o conteúdo endereçado pelo padrão será deixado

em u. Em seguida, repete-se o processo acima para uma distância de Hammingigual a 2, e assim sucessivamente até um número máximo MAX de iteraçõesdefinido pelo usuário. Quando MAX é igual ao número de entradas do nodo, ageneralização é dita ser completa, pois o número de entradas é igual à distânciamáxima que um vetor pode ter do outro.

O espalhamento dos vetores do conjunto pode ser comparado a um ar-remesso de duas pedras em um lago calmo. O lago é o espaço booleano antesdo treinamento , quando todos os conteúdos de memória são iguais a u. O ar-remesso das duas pedras é equivalente a armazenar os dois vetores do conjuntode treinamento. A propagação de duas ondas em forma de anéis é comparadaao espalhamento dos vetores de raio igual à distância de Hamming com relaçãoa cada um dos vetores . O encontro das duas ondas ao caso corresponde quandoo espalhamento produz vetores que têm a mesma distância de Hamming comrelação aos dois vetores de treinamento , ou seja, quando há contradição. Bragae Aleksander [BA94] desenvolveram um modelo para predizer a percentagemdo espaço booleano em que há superposição entre duas classes, bem como aprobabilidade de ocorrer cada uma das duas classes na fase de espalhamento.

Aleksander , Clarke e Braga [ACB94 ] também desenvolveram um algorit-mo de espalhamento chamado Combined Generalization Algorithrn (CGA), oqual combina propriedades de RNSP e de sistemas de aprendizado hebbiano.É definida uma nova unidade de medida de distância chamada Distância deDiscriminação , havendo uma função similar para sinapses na aprendizagemhebbiana . Esta distância leva em conta o poder de discriminação das variáveisde entrada, determinando um coeficiente de discriminação para cada vetorde entrada utilizado no espalhamento . Quanto menor for a distância de dis-criminação entre dois vetores, mais similares eles vão ser (produzirão saídaspróximas ). Ou seja. a proximidade entre dois vetores é calculada pela resposta

182 1 183

Page 101: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

que eles produzem , e não pela forma, como na distância de Hamming.

Um problema encontrado na utilização do nodo GRAM é o tempo gasto noprocesso para realizar a generalização, que é muito grande quando comparadoao GSN, PLN e RAM.

8.8 GNU

O GNU (General Neural Unit) é um modelo de rede binária recorrente basea-do em nodos GRAM. Sua arquitetura é semelhante à arquitetura das redes deHopfield, diferindo destas redes por possuir ligações externas de feedforwarde ligações internas de realimentação. Os GNUs não são exclusivamente auto-

associativos como a rede de Hopfield, pois contêm entradas externas em seumodelo.

Vários trabalhos com GNUs já foram desenvolvidos. Por exemplo. foidemonstrado por Lucy [Luc91] que redes auto-associativas (sem entradas exter-nas) conseguem armazenar 2" padrões. e que. dado um vetor (estado inicial). a

rede consegue recuperar o estado mais próximo. Aleksander e ?\Iorton [A'-\I911mostraram que a propriedade de recuperação dos GNUs (com entradas exter-

nas) tem um ótimo desempenho quando há um balanceamento perfeito entre asligações feedforward e de realimentação. Braga [Bra94b] obteve um conjunto deexpressões que predizem as contradições que acontecem durante o armazena-

mento de dados em GNUs parcialmente conectados. Ele também mostrou queo tempo de recuperação dos GNUs é uma função do número de associaçõesarmazenadas [Bra94a]. Está em desenvolvimento o programa MAGNUS. quesimula GNUs com dados reais [IAP93].

O processo de armazenamento se dá pela criação de lima associação en-tre o padrão externo e sua representação interna. O armazenamento de umaassociação [l;e, l;'] entre um padrão externo ee e sua representação interna ^'é feito apresentando-se o padrão externo çe às entradas externas do GNU etravando-se (clamping) a saída da rede emb '. Cada memória que foi acessadadurante o armazenamento de uma associação terá seus conteúdos armazenadoscoro suas respectivas saídas, que fará esta configuração estável durante a fasede recuperação, isto é, se Ç for apresentado de novo na entrada, a saída será ^'.

O espalhamento acontece em todos os GRAMZs depois que termina o processode associação. A principal diferença entre os GNUs e as redes de Hopfield é quenas redes de Hopfield, para acomodar um novo padrão, os pesos são mudados

comprometendo a generalização de outros padrões já armazenados quando hásuperpreposição. Em redes GNUs completamente conectadas, embora novas

associações possam afetar o desempenho da recuperação de padrões, a esta-bilidade é garantida, uma vez que a demanda somente é escrita dentro dos

registros das RAAIs. Só não é garantida a estabilidade quando a rede é par-

cialmente conectada, pois isto degrada a capacidade de memória.

Na fase de recuperação, os GNUs operam sincronamente, produzindo asrespostas ao mesmo tempo. Como alguns conteúdos de memória contêm o

estado u. depois do treinamento, a recuperação tem uma natureza estocástica

(estatística), pois sua saída pode ser 0 ou 1.

O estado de saída de um nodo é função do tempo e das ligações de reali-

mentação e feedforward. Dessa forma, o sucesso de uma recuperação de unia

associação [^'. t;'] depende do estado inicial da rede. É claro que. se o estado

inicial for 1;', o sucesso é garantido, mas pode falhar para outros estados iniciais.

A falha dos processos de associação é devida ao armazenamento de associaçãoalém da capacidade da rede. Isso cria pontos fixos para onde a rede pode sererroneamente atraída. Porém, se não há sobrecarga. o sucesso é garantido.

8.9 pRAM

Com o intuito de criar um modelo neural que possuísse a característica de ge-

neralização e não de linearidade, Gurney propôs nodos cúbicos equivalentes anodos "sigma-pi" [Gur92], e Taylor [Tay72] desenvolveu um modelo booleano

baseado no modelo PLN, o pRAM.

O modelo pRAM é um modelo booleano inspirado em nodos biológicos

que, semelhantemente ao MPLN, pode armazenar valores em suas posições dememória diferentes de 0's e 1's, na faixa entre (inclusive) 0 e 1. Isso embute

no modelo a característica de poder armazenar também dados probabilísticosdos diversos padrões, também de maneira análoga ao MLPN. Essa propriedadedá ao modelo mais realismo, visto que os "ruídos" que acontecem nas sinapsesdos nodos no cérebro também, de certa forma, podem ser simulados no pRA',\I.Aprendizado por reforço é usado para treinar redes deste modelo, uma vez quefoi observado que esta também é a forma de aprendizado no cérebro e que o al-goritmo é bastante simples e conveniente para ser implementado em hardware.

A fase de apresentação dos padrões de teste após a fase inicial de treinamen-

e

h

a

184 1 185

Page 102: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

to é similar à dos nodos PLN. Quanto maior o valor do conteúdo das posiçõesde memória, maior a probabilidade de a saída do nodo ser 1, ou seja , maior áprobabilidade de ativação do nodo.

Uma propriedade interessante que o pRAM possui e que os demais modelosbooleanos não possuem é a capacidade de aceitar entradas com valores reais.

8.10 SDM

A idéia deste modelo reside no uso de decodificadores distribuídos em umespaço booleano de alta dimensão [Kan88]. Os decodificadores poderão seracessados por qualquer padrão de entrada. A condição para este acesso é queo padrão de entrada se encontre a uma distância de Hamming de rr bits doendereço-base do decodificador. Um decodificador será ativado por todos osvetores de entrada que se encontrarem dentro de uma hiperesfera de raio rpcentrada no endereço-base. Essa distância de Hamming representa a quanti-dade de bits diferentes entre os dois vetores; por exemplo, o vetor 11010 estádistante de uma unidade do vetor 11011.

Os decodificadores correspondem a posições de memória e serão ativadospor qualquer padrão que possuir uma distância de Hamming de um dado rp

(geralmente 1) do endereço-base deste codificador. Isto diminui o problema deposições de memória vazias iniciais no período de treinamento da rede.

Vários decodificadores podem ser acessados por um mesmo vetor de en-trada. Para isso, o vetor de entrada deve ter uma distância de Hamming emrelação aos codificadores tal que ela seja de r, (ou menor, em alguns casos)para o i-ésimo decodificador. Em outras palavras, o padrão deve encontrar-sena região de interseção entre os vários decodificadores. Por exemplo, suponhadois decodificadores:

Do -+ Endereço-Base: 000 Raio:1

D1 Endereço-Base: 110 Raio:1

Desta maneira, qualquer vetor do conjunto (000,001,010,100) ativará oprimeiro decodificador, e qualquer vetor do conjunto (110,010,100,111) ativaráo segundo decodificador. A interseção desses conjuntos resulta no conjunto

(010,100), ou seja, qualquer vetor deste conjunto ativará ambos os decodifi-

cadores.

A escolha do raio de cada hiperesfera.não é arbitrária. Ela deve ser tal

que pelo menos um decodificador seja ativado a cada amostragem de padrão.Para este fim, os decodificadores escolhidos (endereços ) e seus respectivos raiosdevem ser tais que a união dos mesmos (endereço-base e endereços alcançáveispelo decodificador) gere todas as 2" possibilidades de combinação. Com isto,podemos verificar alguns casos extremos. Por exemplo, para um raio nulo,

apenas um padrão poderá ativar algum decodificador. Para o caso rp = n

qualquer padrão ativará todos os decodificadores. Para 0 < rp < n, existem

vários trabalhos para prever a quantidade (probabilística) de decodificadoresa serem acessados por um padrão.

O modelo SDM pode ser comparado ao modelo RAM, observando-se queeste último pode ser simulado por SDM, onde rp = 0 e a quantidade de deco-

dificadores é igual a 2". Todavia, existem diferenças significativas entre os dois

modelos, descritas a seguir:

• qualquer decodificador no modelo RAM só poderá ser ativado se algumpadrão coincidir com o endereço-base do decodificador (rp = 0); já no

modelo SDM (supondo rp > 0), outros padrões poderão ativar este de-

codificador.

• o modelo RAM possui exatamente 2" decodificadores (exatamente o nú-mero de células), onde n é o tamanho do vetor de entrada, enquanto o mo-delo SDM possui apenas uma quantidade m de decodificadores (m < 2"),

dependendo do raio rp para cada decodificador.

• o modelo SDM não guarda apenas, nas suas posições de memória, um bitrelativo ao vetor que o acessou. como o modelo RAM faz, mas tambémguarda uma medida estatística de todos os vetores que acessam aquela

posição.

8.11 ALN

0 Modelo ALN (Adaptive Logic Netu,ork) [AG79] é uma versão simplificada

do modelo backpropagation. Usando apenas um conjunto restrito de funçõesbooleanas, este modelo representa mais uma opção de modelo neural booleano.

A estrutura de uma rede ALN é constituída por várias árvores piramidaisde nós, sendo cada nó um nodo. Associados a cada terminal de entrada de um

186 1 187

Page 103: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

nodo, existem dois canais que são usados durante a fase de treinamento paraindicar qual será a função de resposta do nodo. Os nodos da primeira camadareceberão como entrada o próprio vetor de entrada, randomicamente.

Nodos ALN podem computar somente 4 funções booleanas : E, OU, DI-REITA, ESQUERDA. Essas funções darão como resposta para um nodo comentradas Ir e 12 os seguintes resultados:

• E resulta em Ir E I2;

• OU resulta em Ir OU I2;

• ESQUERDA resulta em Ir;

• DIREITA resulta em I2.

Essas funções não foram escolhidas aleatoriamente. Elas têm a propriedadede representar as funções booleanas crescentes não-constantes de duas variáveis.Essa propriedade de crescimento significa que, se um nodo tem unia de suas

entradas alteradas para 1, essa entrada não poderá ser alterada para zero. Isso

significa dizer que a rede nunca decresce o valor das entradas dos nodos. Intui-tivamente, poderíamos pensar nesta propriedade como significando que, se uni

nodo "aprendeu" algum padrão, o algoritmo de aprendizagem não pode fazercom que este nodo "esqueça" este padrão.

O treinamento desse tipo de rede é realizado da seguinte forma. Primeira-mente, as árvores da rede são treinadas seqüencialmente. Antes de treinarcada árvore, é escolhida aleatoriamente a função booleana para cada nodo da

mesma. Depois é estabelecido uni número de épocas de treinamento, e todasas entradas dos nodos são setadas para 0. Para cada época de treinamento, opadrão será submetido à árvore, variando a sua ordem de maneira randômica.

Assim, de acordo com a função de cada nodo, as respostas dos mesmos vãosendo calculadas, e, de acordo com o par de entradas de cada nodo, o estado

interno do nodo vai sendo alterado. O treinamento finaliza quando o númerode épocas acaba ou quando há uma convergência para o resultado esperado.

Vale a pena ressaltar o fato de que cada árvore da rede é avaliada indepen-dentemente das outras. A avaliação das respostas de cada nodo depende apenasda entrada e da função booleana que este possui. Todavia, essa avaliação (apli-cação) da função pode levar um tempo razoável na fase de treinamento da rede,comprometendo assim o seu desempenho. Para não degradar o desempenhoda rede, este modelo utiliza a noção de Lazy Evaluation. A técnica de Lazy

Evaluation permite o processamento da resposta de uma função sem precisar,em alguns casos. do conhecimento prévio de todos os parâmetros dessa função,

pois apenas alguns parâmetros já podem indicar a resposta da função. Uniexemplo bastante simples é a função AND. Se um avaliador tem esta funçãoe recebe, num dos canais do nodo. o valor 0 (falso), a resposta do nodo será

0, independentemente do segundo parâmetro da função. Isto aumenta consi-

deravelmente a velocidade de processamento da rede. Utilizando este mesmo

princípio, concluímos que nem todos os nodos de uma rede ALN precisam seranalisados para saber-se o resultado final de uma árvore. Dessa maneira, pode-

se conseguir um melhor desempenho. não só da fase de aprendizado da redemas também da fase de teste, já que o avaliador também será utilizado.

8.12 ADAM

O modelo ADAM (Advanced Distributed Associative lllemory) [AS87] surgiu

com o intuito de reduzir alguns problemas das redes de \Villshaw [WVBLH69]. Omodelo ADAM é uma arquitetura associativa que combina uma n-tupla tanto

de entrada como de saída com dois estágios da rede de \Villshaw.

ADAM usa uma técnica baseada eni pré-processamento de n-tuplas com

o intuito de reduzir a saturação da matriz de memórias do sistema corno unitodo, e também para permitir que a rede lide com não-linearidades. As asso-

ciações de padrões e suas classificações, assim como seu armazenamento, são deresponsabilidade das redes de \Villshaw (mais precisamente, de duas redes deWillshaw), usando uma classe intermediária de padrões entre as duas matrizescom um número conhecido de bits com o valor 1, o que reduz significativamente

o custo com relação à memória necessária e aumenta a tolerância a distorçõesdos padrões por parte da rede. O problema da escolha dos limiares para as

redes de Willshaw é solucionado com o uso de ADAM por uma técnica chama-da de n-ponto, em que as n saídas de maiores somas são selecionadas. Estemodelo possui uma grande capacidade de armazenamento, além de possuir boa

tolerância a erros binários. Algumas modificações recentes têm permitido o uso

do modelo ADAM para aplicações em tratamento de imagens.

8.13 Estudos comparativos

Estudos comparativos de dois tipos, confrontando RNSPs com RNAs, foramdesenvolvidos por Aleksander [A1e91, A'\1901. Nesta seção, apresentaremos os

11

188 ^. 189

Page 104: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

principais resultados destes estudos.

O primeiro estudo [AM90] é baseado em perceptrons, sistemas de memória

de conteúdo endereçável, aprendizado através de erros e capacidade de gene-ralização.

• Perceptrons: Um perceptron pode ser definido com nós RAMs utilizandouma estrutura como o WVISARD.

• Sistemas de memória de conteúdo endereçável: o eixo do paradigma deHopfield e Boltzmann requer grandes nodos que, em última análise, sãonodos com k entradas para k elementos da rede. Discriminadores podemser pensados como sendo um nodo assim. Uma outra alternativa parasistemas de memória de conteúdo endereçável é utilizar uma rede PLNcompletamente conectada. Nos dois casos, vale salientar que o custo damemória cresce exponencialmente com o crescimento da rede.

• Aprendizado através de erros: em RNSP, o método de aprendizado uti-lizando erros pode ser alcançado através da alimentação com a informaçãodo erro para todas as camadas escondidas num sistema feedforward pa-ralelo.

• Generalização: embora a maioria dos nós sem pesos não generalize porsi só, as redes formadas por conjuntos destes nós podem generalizar.

Em outro estudo [A1e91]. direcionado especificamente para o modelo Pro-cessamento Paralelo Distribuído (PDP - Parallel Distributed Processing), éapresentada a maioria das definições para RNSP dos conceitos relativos a PDP.Essas definições estão resumidas a seguir:

• Unidades de Processamento: um nodo sem peso (qualquer um dos nodosdescrito neste capítulo), por exemplo, um nodo RAM ou um nodo PLN.

• Estado de Ativação: um vetor de N elementos, em que cada elemento éa representação decimal da entrada do nó correspondente.

• Saída das unidades: a saída r dos nós descritos neste capítulo.

• Padrões de Conectividade: matriz binária sem pesos.

• Regra de Propagação: a responsabilidade de aprender recai nos mapea-mentos de entrada-saída, encontrados nas próprias unidades.

• Regra de Ativação: um mapeamento da entrada para saída da rede.

• Regra de Aprendizado: mudanças nos conteúdos das tabelas-verdade.

8.14 Conclusão

Neste capítulo foram apresentados vários tipos de RNSPs, que têm sido uti-lizadas em diversas aplicações práticas, conforme demonstrado em vários estu-dos [BFF89, MA93, FL88, UBB95].

Foi destacada , nos modelos estudados neste capítulo, a velocidade do pro-cesso de aprendizagem , devido à existência de independência mútua entre osnós, quando as "entradas são alteradas, o que contrasta com as RNAs conven-cionais.

O nodo RAM foi melhorado pela adição de novas características aos métodosde aprendizagem , resultando em modelos tais como PLNs, GRAMs, GSNs etc.Essas novas características do modelo sem pesos tornam-no ainda mais promis-sor para resolver os problemas da área de RNAs.

8.15 Exercícios

1. Defina um nodo RAM usando nodos MCP.

2. Defina um nodo MCP usando nodos RAM.

3. Comente sobre as similaridades e diferenças entre a arquitetura dosdiscriminadores (por exemplo o WISARD) e uma arquitetura commúltiplas camadas como o multi-layer perceptron.

4. Qual o conjunto de generalização obtido se trocarmos a porta ANDpor uma porta OR no exemplo da Figura 8.2?

5. Faça uma tabela com as principais vantagens e desvantagens de cadaum dos modelos estudados neste capítulo.

190 1 191

Page 105: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capítulo 9

Variações

O propósito deste capítulo é introduzir temas que, embora importantes parao estudo de Redes Neurais , não justificam , dada a limitação do escopo destelivro , um capítulo dedicado a cada um deles . Serão discutidos aqui os seguintestemas:

• Redes RBF;

• Redes construtivas;

• Processamento temporal.

O primeiro tópico a ser abordado diz respeito a um modelo de redes multi-

camadas que tem atraído interesse crescente da comunidade de Redes Neurais.Este modelo utiliza funções de base radiais para os nodos da camada interme-

diária [BL88], e é conhecido como RNA de funções de base radiais. ou redeRBF.

Nos últimos anos tem havido uma variedade de propostas para o desen-volvimento de RNAs que possam definir sua estrutura dinamicamente duranteo seu treinamento. Esta mudança pode envolver tanto a eliminação de nodose/ou conexões da rede, como acréscimo de nodos e/ou conexões à rede, ou

ainda uma combinação destes dois processos. A segunda seção deste capítuloserá dedicada a este tópico.

Por fim, serão apresentadas algumas redes adequadas para o processamen-

to temporal. Estas redes, chamadas de recorrentes, apresentam conexões defeedback entre nodos de uma mesma camada ou de camadas diferentes, que éo caso mais comum.

a

ee

eee

193

Page 106: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

oo

Entrada Camada Camada Camadade entrada intermediária de saída

Figura 9.1: Rede RBF típica com uma camada intermediária. Os nodos da

camada intermediária são funções de base radiais.

9.1 Redes RBF

A função de ativação aplicada a cada nodo da maioria das redes multicamadasutiliza como argumento o produto escalar .do vetor de entrada e do vetor depesos deste nodo. Existem, porém, redes multicamadas em que a ativação deuni nodo pode ser função da distância entre seus vetores de entrada e de peso.Unia destas redes 'é a rede de Funções Base Radiais, RBF (Radial Basis Func-

tion). Este nome se deve à utilização, pelos nodos da camada intermediária,

de funções de base radiais. Os nodos das camadas intermediárias das redes dotipo MLP utilizam, geralmente, funções de base sigmoidais.

Nesta seção serão apresentados os principais conceitos referentes a estasredes, começando pela arquitetura utilizada, seguido pelo seu treinamento.

Ainda nesta seção, estas redes serão comparadas com as redes MLP.

9.1.1 Arquitetura

É comum associar a rede RBF a uma rede com uma camada intermediária,embora redes RBF com mais de unia camada intermediária tenham sido pro-

postas [HL91]. A arquitetura típica de uma rede do tipo é ilustrada pela Figura

9.1.

Apesar de a rede ilustrada apresentar apenas um nodo de saída, estas redes

podem ter qualquer número de nodos nesta camada. Cada camada de uma rede

RBF desempenha um papel específico para o seu comportamento. A primeiracamada, cujos nodos utilizam funções de base radiais, agrupa os dados de en-trada em clusters. Esta camada transforma um conjunto de padrões de entradanão linearmente separáveis em um conjunto de saídas linearmente separáveis.

A segunda camada - camada de saída - procura classificar os padrões recebidosda camada anterior. Esta camada pode ser uma rede do tipo Adaline [WH60],uma vez que seus padrões de entrada são linearmente separáveis.

Funções radiais representam uma classe especial de funções cujo valor dimi-nui ou aumenta em relação à distância de um ponto central. Diferentes funçõesde base radiais têm sido utilizadas em redes RBF. As mais comuns são:

• Função gaussiana: f (u) = exp(-2=d

• Função multiquadrática: f (u) = (J_+-c r 7-);

• Função thin-plate-spline: f (u) = v2 log(v).

onde v = lix - Mil, que é dado geralmente pela distância euclidiana, x é o vetorde entrada, e µ e u representam o centro e a largura da função radial, res-pectivamente. Deve ser observado que estas funções podem ser utilizadas emqualquer tipo de rede (com uma ou mais camadas intermediárias). Contudo,depois do artigo de Broomehead e Lowe em 1988 [BL88]. é comum associarredes RBF a uma RNA com apenas uma camada interna.

Como pode ser observado nas funções apresentadas, as funções radiais maisutilizadas possuem dois parâmetros: o centro µ e o raio a. A distância eucli-diana 11x - µ11 do vetor de entrada x ao vetor centro ui serve de entrada para afunção, que retorna o valor de ativação da unidade intermediária. A respostagerada por um dado nodo de saída, nj, da rede, é definida pela Equação 9.1:

E

yi=r- w1io(IIx - mil l +w,o (9.1)i=1

onde wjo representa o termo de polarização.

Comparando redes RBF com redes MLP

Tanto as redes RBF como as redes MLP são aproximadores universais defunções, portanto são redes teoricamente equivalentes. Existem, no entanto,

194 1 195

Page 107: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Classe 2

Cluster 2

Figura 9.2: Particionamento dos dados de entrada realizado por uma rede RBFcom quatro nodos na camada intermediária.

várias diferenças entres estes dois modelos. A primeira diferença diz respeito à

partição do espaço de padrões de entrada realizada pela camada intermediáriade cada modelo.

Cada nodo da camada intermediária de uma rede RBF define uma hiper-elipsóide no espaço de padrões de entrada. Desta forma, uma rede RBF cons-

trói aproximadores locais. isto é, apenas as regiões do espaço de entrada queapresentam dados de treinamento terão resposta da rede. A resposta de uma

função radial (por exemplo, a função gaussiana) diminui conforme os padrões(pontos do espaço de entrada) se distanciam do centro da função radial. AFigura 9.2 ilustra a partição dos dados de entrada realizadas por uma redeRBF com quatro nodos na camada intermediária.

As redes MLP, por outro lado, particionam o espaço de -entradas atravésde hiperplanos. como pode ser visto na Figura 9.3 no caso de uma rede comapenas uma camada intermediária de três nodos.

Uma rede \ILP constrói aproximadores globais com maior capacidade degeneralização para regiões onde não há dados de treinamento. Entretanto, istopermite que nodos completamente diferentes daqueles utilizados no treinamen-

to sejam classificados em uma das classes existentes, o que é conhecido comoproblema dos "falsos padrões".

Fronteira 1

Classe 3

Figura 9.3: Particionamento dos dados de entrada realizado por uma rede MLP

com urna camada intermediária formada por três nodos.

Uma outra diferença entre as redes MLP e RBF é que, enquanto nas redes

MLP o valor de ativação de uma unidade n.j da camada interna é unia funçãodo produto escalar entre o vetor de entrada e o vetor de pesos da unidade, narede RBF o valor de ativação é dado em função da distância euclidiana entre

o vetor de entrada e o vetor centro da unidade. Além disso, o treinamentode redes MLP é bem mais lento que o de redes RBF. A Tabela 9.1 ilustra as

principais diferenças entre uma rede I\ILP e uma rede RBF.

Funções de base radiais

Assim como ocorre para as redes MLP, durante o projeto de redes RBF énecessário definir o número de nodos da camada intermediária. Como cada

nodo agrupa os padrões em um cluster, que é posteriormente utilizado pelosnodos da camada de saída, esta escolha deve ser realizada de forma criteriosa.

Uma alternativa é definir o número de nodos como igual ao número depadrões de entrada. Quando o número de funções radiais é igual ao númerototal de padrões de treinamento, cada centro pode ser situado sobre uni vetorde entrada. Com isso, a rede RBF mapeia com exatidão o vetor de entradapara a saída correta. Contudo, esta interpolação exata é indesejável, princi-

palmente no caso de exemplos com ruído, pois pode levar ao overfitting.

1

o

196 197

Page 108: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Tabela 9.1: Comparação de uma rede RBF típica com uma rede MLP conven-

Rede MLP versas Rede RBFMLP RBF

Pode ter uma ou mais camadas Geralmente possui apenas

intermediárias uma camada intermediária

Nodos das camadas intermediárias Nodos das camadas intermediárias

e de saída têm funções semelhantes têm funções diferentes dos nodos da

camada de saída

Entrada da função de ativação é Entrada da função de ativação é

o produto interno dos vetores de a distância euclidiana entre os

entrada e de pesos vetores de entrada e de pesos

Separa padrões de entrada com Separa padrões de entrada com

hiperplanos hiperelipsóides

Melhor em problemas complexos Melhor em problemas bem-definidos

Constrói aproximadores globais Constrói aproximadores locais

para mapeamento entrada-saída para mapeamento entrada-saída

Uma das maneiras de tratar o problema consiste em utilizar um número defunções radiais menor que o número total de padrões de treinamento. Alémdisso, as posições dos centros não devem ser restritas apenas aos. vetores deentrada. A escolha das novas posições deve ser realizada durante o treinamento

da rede.

9.1.2 Treinamento

Vários métodos têm sido propostos para o treinamento de redes RBF. Na maio-ria destes métodos, o treinamento é classificado como híbrido. uma vez que édividido em dois estágios. No primeiro estágio, o número de funções radiais e

seus parâmetros são determinados por métodos não-supervisionados.

O segundo estágio de treinamento ajusta os pesos dos nodos de saída. Comoa saída dos nodos da camada intermediária é um vetor linearmente separá-vel, os pesos podem ser determinados por modelos lineares, como o algoritmoLMS (regra delta) [WH60] ou Decomposição em Valores Singulares [Lay97].

O treinamento híbrido geralmente requer um número de nodos intermediários

maior que o treinamento supervisionado.

-Primeira fase de treinamento

A seguir serão apresentadas algumas abordagens para o primeiro estágio detreinamento. A primeira abordagem, proposta por Broomhead e Lowe [BL88],

seleciona os centros aleatoriamente a partir dos padrões de treinamento. Estaabordagem assume que os padrões de treinamento estão distribuídos de umamaneira representativa para o problema considerado, ou seja, os padrões sãocapazes de capturar as principais características do problema, o que nem sem-pre é o caso.

Uma segunda abordagem sugere a utilização de técnicas de clustering.Neste caso, por meio de um aprendizado não-supervisionado, os centros sãoestrategicamente posicionados em regiões do espaço onde estão situados os ve-tores de entrada mais representativos. O método mais utilizado para realizareste processo é o algoritmo K-means-clustering, ou K-médias [1\,Iac67, MD89b].

O algoritmo K-médias particiona o espaço de padrões em K regiões ougrupos. Esta partição é realizada da seguinte maneira: inicialmente, são esco-lhidos aleatoriamente K vetores de entrada para serem os centros de K gruposde padrões. Os outros vetores de entrada são atribuídos ao grupo que tiver ocentro mais próximo. Para isto, geralmente é utilizada a distância euclidiana.Após esta fase, os centros são recalculados para que sejam o vetor médio do

seu grupo, ou seja, a média dos vetores pertencentes ao grupo. Novamenteos vetores de entrada são apresentados e associados ao centro mais próximo.Este processo de redefinição dos centros e dos vetores associados a cada centroé repetido até o algoritmo convergir, isto é, até os centros não precisarem sermodificados.

Este algoritmo divide os vetores de entrada em K conjuntos SJ disjuntoscontendo NN vetores cada. Os centros são posicionados no ponto médio de cadaconjunto SJ. A finalidade do algoritmo é minimizar a soma dos quadrados dasdistâncias entre os vetores de entrada e o centro do conjunto Sj ao qual elespertencem. O algoritmo K-médias é apresentado a seguir:

1. Associar os primeiros K vetores de entrada aos K centros

2. Para cada novo vetor de entrada faça

2.1 Associá-lo ao grupo mais próximo

3. Calcular as novas posições dos centros

198 1 199

Page 109: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

4. Repetir

4.1 Para cada vetor de entrada faça

4.1.1 Calcular a distância para todos os centros

4.1.2 Se o vetor não pertence ao grupo mais próximo

Então trocar o seu grupo pelo grupo mais próximo

Recalcular o centro do grupo que perdeu

o vetor e do grupo que ganhou o vetor

5. Até convergir.

Para este algoritmo, o novo centro pj é a média de todos os vetoresentrada xi que pertencem ao grupo Si. ou seja, cada elemento /i» do vetorcorrespondente a um novo centro é definido pela Equação 9.2:

1[lJi =

SJ A. C si

de

µ.i

TA.i (9.2)

onde Xh.i e µji são os componentes dos vetores xÁ. e µj, respectivamente.

Existe unia versão incremental deste algoritmo que inicializa os centros damesma forma que a versão anterior, mas atualiza os centros cada vez que um

novo padrão de entrada é apresentado [I\ID89b]. Esta versão tem como van-tagem não precisar armazenar os padrões de entrada.

No algoritmo K-Means-Clustering não existe um método formal para de-terminar o número K de centros (número de unidades intermediárias). Nor-malmente este número é definido por tentativa e erro, utilizando o métodocross-validation [Bis95].

Uma técnica de clustering que pode também ser utilizada para escolher oscentros das funções é a rede SOM, discutida no capítulo de redes self-organizing[Koh89].

Outro parâmetro definido neste primeiro estágio é a largura das funçõesradiais. Várias heurísticas têm sido propostas para a escolha das larguras.oj. Uma delas define cada aj como sendo a média sobre todas as distânciaseuclidianas entre o centro de cada unidade ni e o centro da unidade nj maispróxima [MD89b]. A Equação 9.3 ilustra esta proposta:

^^ nt Ilu.i - liA

onde µj é o centro mais próximo de µi em termos de distância euclidiana e

11 Fri - µi II é a distância euclidiana entre p¡ e pi. Uma heurística alternativa

consiste em atribuir a cada unidade ni urna largura o diferente, conforme

indicado pela Equação 9.4

0,.1=aIIíLj-µi ll

onde pj é o centro mais próximo de pi e a é uma constante, geralmente entre

1.0 e 1.5.

Unia outra heurística utilizada atribui a cada a a distância média do centro

µj aos N vetores de entrada mais próximos, isto é, os N vetores de vetores de

entrada com menor distância euclidiana em relação ao centro P j. A Equação

9.5 ilustra esta heurística:

013 C(1 Éllíj -xilI)t =r

onde µj é o centro da unidade nj, os vetores de entrada 11.12 , .... T,V• são

os N vetores de entrada mais próximos em relação ao centro pj. N e C são

constantes escolhidas experimentalmente. N e C são escolhidos de modo queas áreas de atuação da gaussiana, determinadas pelas larguras agi. cubram toda

a região onde estão situados os vetores de entrada.

Segunda fase de treinamento

A função da camada intermediária da rede RBF é transformar uri conjunto deexemplos não linearmente separável em um conjunto linearmente separável, o

que simplifica o processamento realizado pela camada de saída. O problema deajuste de pesos da camada de saída reduz-se a um problema linear. Diversos

métodos têm sido desenvolvidos para ajustar os pesos desta camada. Unideles utiliza a regra delta [\VH60], apresentada no Capítulo 2. Outro métodoutilizado é o método de Decomposição em Valores Singulares [Lay97]. A seçãoseguinte apresenta unia classe de redes que modificam sua topologia durante otreinamento e que são conhecidas como RNAs Construtivas.

1

200 201

Page 110: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

9.2 Redes construtivas

A arquitetura de uma RNA pode ter um impacto significativo no seu desem-

penho para uma dada aplicação. Várias técnicas têm sido desenvolvidas para

a otimização dessa arquitetura. Estas técnicas podem ser agrupadas em duasabordagens. A primeira envolve o uso de um procedimento sistemático quepermita a exploração um conjunto de possíveis arquiteturas. A segunda de-fende a necessidade de uma regra ou conjunto de regras que permita a escolhada melhor arquitetura para um problema específico. As Redes Neurais Artifi-ciais Construtivas, RNACs, se encaixam na segunda abordagem. Essas redesotimizam sua topologia permitindo a inserção e a remoção de elementos du-

rante o processo de treinamento.A otimização de arquiteturas neurais envolve, geralmente, a avaliação empí-

rica de um grande número de arquiteturas. O principal inconveniente destaabordagem é a necessidade de treinar várias redes antes de encontrar a melhorarquitetura para o problema atacado. Existem vários métodos para tornarmais eficiente esta procura, os quais podem ser agrupados em três abordagens:

• otimização genética:

• técnicas de pruning:

• redes construtivas.

As duas primeiras abordagens já foram discutidas em capítulos anteriores

deste livro. A terceira abordagem advoga que a arquitetura de uma rede podeser definida utilizando uma rede inicialmente pequena, na qual novas unidadessão inseridas durante o treinamento. Algoritmos de aprendizado como este

são chamados algoritmos construtivos (growing). A definição da arquitetura

por um algoritmo construtivo pode incluir uma fase de pruning, onde, após o

crescimento da estrutura da rede, nodos ou conexões irrelevantes podem ser

removidos.Existem vários modelos de redes construtivas, que podem ser classificadas

segundo vários critérios:

• conexões ajustadas:

• limite para o crescimento da rede;

• conectividade dos nodos;

• estrutura adicionada durante o crescimento.

Um destes critérios, "estrutura adicionada a rede durante o crescimento",apresenta pelo menos três variações. Algumas RNACs crescem sua arquiteturainserindo um nodo por vez, que é o caso das redes N TN (Neural Tree Networks)[San92] e CasCor (Cascade Correlation) [FL88]. As redes Upstart [Fre90] eTiling [MN89] expandem suas arquiteturas inserindo mais de uma unidade porvez. Já as redes treinadas com os algoritmos Tower e Pyramid [Gal90a] criamuma camada de cada vez. A seguir serão descritos os algoritmos anteriormentemencionados, enfatizando suas características particulares.

9.2.1 Redes NTN

As redes NTN são RNAs estruturadas em uma arquitetura de árvore [San92].Uma rede NTN -aprende recursivamente a dividir o espaço de padrões em sub-regiões utilizando uma estrutura de árvore de ordem N, onde N é o númerode classes (filhos) que cada nó interno da árvore pode diferenciar.

Cada sub-região é associada a um rótulo que agrupa um determinadonúmero de elementos. Assim, o espaço é dividido através de hiperplanos. Se-gundo o autor, a utilização de uma RNA em cada nó da árvore apresenta comoresultado um melhor desempenho na classificação dos padrões.

9.2.2 Redes CasCor

A rede Casco de Correlation, treinada com o algoritmo do mesmo nome, foi pro-posta por Fahlman [FL88] com o objetivo de superar limitações da rede MLPtreinada com o algoritmo back-propagation. O algoritmo Cascade Correlation.CasCor, atua sobre uma rede inicialmente mínima, apenas com as camadas deentrada e de saída.

Durante o treinamento, o algoritmo insere novas unidades intermediárias,uma de cada vez, criando uma estrutura de múltiplas camadas. Cada unidadeinserida tem suas entradas conectadas aos nodos da camada de entrada e, casoexista. das camadas intermediárias. A saída do novo nodo é conectada aos

nodos da camada de saída. Antes de conectar a saída da nova unidade aos no-dos da camada de saída, os pesos da nova unidade são ajustados utilizando os

padrões de treinamento. Este ajuste tem por objetivo maximizar a covariânciaentre a saída da nova unidade e o erro residual da rede. Cada inserção deum novo nodo avalia um número de unidades candidatas, onde é selecionadaaquela de maior co-variância.

202 203

Page 111: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Após os pesos de entrada serem ajustados, eles são congelados, e a novaunidade é inserida na rede, onde uma nova etapa de treinamento é iniciada.

Nesta etapa. apenas as suas conexões de saída são ajustadas. Ambos os treina-mentos, antes e depois da inserção, envolvem apenas uma camada, podendoassim ser utilizada a regra delta [WH60]. Os autores do algoritmo CascadeCorrelation utilizam o algoritmo Quickprop [Fah88] para o ajuste dos pesos.Cada novo nodo permite a deteção de novas características nos padrões de en-trada.

Neste processo, as redes criadas podem ter um grande número de camadas,com uni fan-in elevado para os nodos das últimas camadas intermediárias e dacamada de saída. Para resolver este problema, têm sido propostas estratégiaspara limitar a profundidade da rede e o fan-in dos nodos intermediários e desaída [FL88].

Geralmente, o algoritmo CasCor aprende rápido. Entretanto, cada novainserção torna o aprendizado da rede mais lento. Considerando que cada novaunidade é conectada à camada de entrada, às camadas intermediárias existentes

e à camada de saída, a curva do tempo de processamento da rede em funçãodo número de nodos tem um comportamento exponencial.

9.2.3 Redes Upstart

Outra rede construtiva importante é a rede Upstart, desenvolvida por MarcusFrean [Fre90]. Nesta rede, as unidades de entrada são discretas. assumindo osvalores {-1, +1 }. Em uma rede Upstart, cada nodo nj é treinado utilizando oalgoritmo Pocket [Gal86] com controle de ciclos.

O algoritmo Pocket foi utilizado porque a maioria dos algoritmos de treina-mento supervisionados só modifica os pesos quando um padrão de entrada não

é reconhecido corretamente. No caso de um reconhecimento bem-sucedido,os pesos não são modificados. Segundo o autor do algoritmo Pocket, deve-ria também ser considerado um reforço positivo na rede para este último caso[Ga186].

O algoritmo Pocket leva em consideração as classificações corretas para for-mar um conjunto de pesos à parte, que é chamado de Wpo,k,t. Este vetor éformado ao longo do processo de treinamento. O conjunto de pesos da rede échamado de W.

Para corrigir o erro de cada unidade nj, o algoritmo Pocket cria dois novos

nodos, chamados de n j e ni . A tarefa do nodo n é atuar como fator de

correção positivo para a unidade nj cujo resultado foi -1. quando deveria ter

sido +1, e o nodo nJ atua como fator de correção negativo, para a unidade njcujo resultado foi +1, quando deveria ter sido igual a -1.

9.2.4 Redes Tiling

I\Iezard e Nadal propuseram um algoritmo alternativo para o treinamento deuma rede multicamadas construtiva, chamado algoritmo Tiling [\IN89]. O al-

goritmo Tiling força cada nova camada a ter menos unidades que a camada

anterior. Diferentemente da maioria dos algoritmos construtivos. em que ocrescimento se dá no sentido vertical. com a adição de novas camadas. neste

algoritmo o crescimento ocorre no sentido horizontal, com a adição novos nodos

a camadas já existentes.

As conexões são, exclusivamente. entre nodos de camadas adjacentes. Quan-do uma nova camada é criada, também é criado um nodo chamado Master Unit.

ou unidade mestre, que é inserido e treinado utilizando um algoritmo seme-

lhante ao algoritmo Pocket [Ga186]. O procedimento de construção da rede

garante que este nodo reconhecerá mais padrões que o nodo Mestre da camadaanterior. Além disso, novas unidades podem ser adicionadas a camadas já exis-

tentes e treinadas para melhorar a confiabilidade das respostas para o conjunto

de treinamento.

O algoritmo Tiling assegura que dois padrões distintos e pertencentes aclasses diferentes não vão gerar saídas idênticas em nenhuma das camadas. oque é uma condição para a convergência. Por apresentar apenas um nodo na

camada de saída, a utilização da rede Tiling está limitada a problemas com no

máximo duas classes. Uma extensão da rede Tiling, a rede MTiling [PYH95],

permite múltiplas classes através da utilização de mais de um nodo na camada

de saída.

9.2.5 Redes Tower e Pyramid

Gallant apresentou [Gal90a] um algoritmo construtivo chamado algoritmo

Tower. Este algoritmo constrói uma torre de unidades lógicas do tipo

limiar, TLU (Threshold Logic Units). A torre é construída adicionando-se

novas camadas à rede. Os nodos adicionados são treinados utilizando os pesosdas conexões existentes, até que a classificação desejada seja alcançada. Cada

2 04 1 205

Page 112: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

um dos nodos adicionados vai representar uma nova saída e recebe como en-trada cada um dos N componentes do padrão de entrada , além das entradas

fornecidas pelos nodos da camada anterior.

O algoritmo Pyramid [Gal90a] constrói uma rede de maneira similar ao

algoritmo Tower, exceto que cada nova unidade adicionada é conectada à ca-

mada de entrada e a todas as camadas anteriores. Assim como na rede Tower,

a nova camada constitui a nova camada de saída da rede. O algoritmo Pyramid

é muito semelhante ao algoritmo utilizado pelas redes CasCor.

9.2.6 Redes SOFT'

A rede dynamic SOFT, SOFT 1 [CFB92], é uma versão construtiva da rede

SOFT [CFB97]. Assim como a rede SOFT original, a rede SOFT' utiliza no-

dos sem peso e agrupa os nodos em um reticulado multicamadas. Os nodosde cada camada são localmente conectados aos nodos das camadas anterior eposterior. Estas redes, ao contrário da maioria das redes construtivas, utilizamum algoritmo de aprendizado não-supervisionado, em que cada nodo procura

separar os padrões de entrada em duas regiões de atratores.

Assim como na rede Tiling [i\MMN89], o crescimento se dá no sentido hori-

zontal. Nodos são acrescentados pela divisão de cada nodo sobrecarregado emdois novos nodos, com a divisão da tarefa, anteriormente realizada pelo nodo

original, em duas subtarefas mais simples a serem desempenhadas pelos novosnodos. Os novos nodos compartilham as mesmas conexões do nodo original.

Nodos também podem ser eliminados nesta arquitetura. A eliminação deum nodo ocorre quando o processamento realizado pelo nodo não é considerado

relevante para o funcionamento da rede.

Outras redes construtivas têm sido propostas, entre as quais podem sercitadas as redes da família ART (ART 3 [CG90], ARTMAP [CGR91a], Fuzzy-ART [CGR91c] e Fuzzy-ARTl\1AP [CG1\1+911), Dynamic Vector Quantiza-tion [Ha197], Restrict Coulomb Energy [Gal90b], Growing Neural Gas Network[Fri95]. e RBF com Dynamic Decay Adjustment [BD94]. A seguir serão anali-sados modelos de RNAs especializados para o processamento temporal.

9.3 Processamento temporal

Fenômenos temporais são fundamentais para ás atividades diárias dos seres hu-manos. Em conseqüência, o tempo é um parâmetro importante de várias tare-fas de reconhecimento de padrões, tais como reconhecimento de voz, detecçãode movimentos, verificação de assinaturas, visão, processamento de sinais,

controle motor etc. A computação convencional ainda não lida satisfatoria-mente com muitas destas tarefas de reconhecimento de padrões dinâmicos. Sãonecessárias estruturas suficientemente ricas, capazes de representar o tempo.

Muitos algoritmos de treinamento das RNAs também não são capazes deimplementar mapeamentos dinâmicos , como por exemplo o algoritmo back-propagation , que pode aprender apenas mapeamentos estáticos . Um artifícioutilizado para processamento temporal utilizando estas redes envolve o uso dejanelas de tempo, em que a entrada da rede utiliza trechos dos dados temporaiscomo se eles formassem um padrão estático.

Entretanto, esta solução não é a mais indicada para o processamento tem-poral. O ideal seria a utilização de uma rede cuja estrutura fosse adequada

para este tipo de processamento. Como é possível estender a estrutura dasredes MLP para que assumam um comportamento que varie com o tempo,sendo assim capazes de tratar sinais temporais? .

O tempo pode ser representado pelo efeito que acarreta no processamentode sinais, que significa oferecer características dinâmicas ao mapeamento rea-lizado pela rede, tornando-a sensível a sinais que variem com o tempo. Parauma RNA ser considerada dinâmica, é preciso que possua memória [E1m90].

Existem basicamente duas maneiras de prover memória a uma RNA:

1. Introduzir atraso no tempo, como as técnicas TDNN Time Delay NeuralNetwork [LH88. Waie9, WHH+89] e FIR multilayer perceptron [Wan90b,Wan90a].

2. Utilizar redes recorrentes, tais como back-propagation Through Time[Wer74, Wer90, WP89], Real-Time Recurrent Learning [WZ89], CascateCorrelation Recorrente [Fah91], redes de Elman [E1m90] e redes de Jor-dan [Jor86].

206 207

Page 113: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

9.3.1 Atraso no tempo

Unia técnica bem conhecida que lida com variações temporais é a RNA comatraso no tempo , TDNN (Time Delay Neural Network). que consiste em uniarede feedforward cujas unidades intermediárias e de saída são duplicadas aolongo do tempo.

Inicialmente, esta técnica foi idealizada no sentido de introduzir, explici-tamente. o conceito de simetria do tempo como encontrado no problema de

reconhecimento de fonemas isolados utilizando um espectrograma. Um espec-

trograma é uma imagem bidimensional na qual a dimensão vertical correspondeà freqüência e a dimensão horizontal corresponde ao tempo. A intensidade daimagem corresponde à energia do sinal.

Lang e Hinton [LH88] utilizaram com sucesso uma TDNN para o reconhe-cimento de quatro fonemas isolados: "bee", "dee", "ee" e "vee", com o uso de

quatro nodos de saída. Outros experimentos com a TDNN sugerem que sua

potencialidade reside na sua habilidade de desenvolver representações internasinvariantes de voz e utilizá-las para obter classificações ótimas.

A topologia da rede TDNN está embutida em uma rede MLP em que ca-da conexão é representada por um filtro de impulso de resposta com duraçãofinita. FIR ( Finite Duration Impulse Response ) [Wan90b. Wan90a]. Este tipode rede. conhecida como FIR MLP, é treinado através da criação de uma redeestática equivalente . Esta rede equivalente é obtida desdobrando a FIR MLPno tempo . Após isto, pode ser utilizado o algoritmo back-propagation padrão.

Utilizando o modelo dinâmico de nodo, é possível construir a versão dinâ-mica correspondente da FIR MLP, cujos nodos apresentam característicasdinâmicas. Para treinar tal rede, utiliza-se um algoritmo de aprendizagemsupervisionado em que a resposta real de cada nodo na camada de saída écomparada, a cada instante de tempo, com a resposta desejada.

Esta RNA também é convenientemente treinada utilizando o algoritmoback-propagation temporal [WW an90b, Wan90a]. Uma vez treinada a rede, todosos pesos são fixados. A rede pode, então, ser utilizada para operar em um sinalde entrada em tempo real, propagando o sinal através da rede, camada porcamada. O algoritmo back-propagation temporal possui duas característicasdistintas: (i) opera em tempo discreto e (ii) apresenta atraso no tempo fixo.Day e Davenport [DMR93] e Lin et al. [LLD93] desenvolveram generalizações

do algoritmo back-propagation temporal que permitem que os atrasos no tempo

sejam adaptados de uma maneira contínua. do mesmo modo com que os pesos

são adaptados.

A rede FIR MLP é apropriada para as seguintes aplicações:

• controle adaptativo operando em uni ambiente não-estacionário;

• identificação de sistema dinâmico, com a entrada e a saída do sistema

provendo o sinal de entrada e a resposta desejada para a rede FIR MLP:

• eliminação de ruído;

• equalização adaptativa de um canal de comunicação cujas freqüênciasvariam no tempo;

• modelagem de séries temporais não-estacionárias;

• classificação temporal de sinais não-estacionários.

9.3.2 Back-propagation recorrente

Redes recorrentes são aquelas que possuem conexões de realimentação que pro-porcionam comportamento dinâmico. Há dois tipos de redes recorrentes: aque-

las em que o padrão de entrada é fixo e a saída caminha, dinamicamente, paraum estado estável [A1m87, Pin87], e aquelas em que tanto a entrada quanto a

saída variam com o tempo; estas últimas são mais gerais e utilizadas com maiorfreqüência. Há muitas variações de arquiteturas de redes recorrentes: algumas

delas permitem o uso de algoritmos de treinamento mais simples ou adaptadospara uma tarefa particular. Duas maneiras que podem ser usadas para treinar

uma rede recorrente, e que não envolvem o uso de aproximações na computação

dos gradientes, são back-propagation through time e redes recorrentes de tempo

real.

9.3.3 Back-propagation through time

O algoritmo back-propagation through time para o treinamento de redes recor-

rentes é uma extensão do algoritmo back-propagation padrão que efetua a ope-

ração temporal em uma rede hILP onde a topologia da rede é acrescida de unia

camada a cada instante de tempo.

Das diversas variações de arquiteturas recorrentes, conceitualmente. o mé-

todo mais simples é o algoritmo back-propagation through time, em que a rede é

208 1 209

Page 114: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

expandida no tempo . Ao final da seqüência de entrada , os valores esperados são

apresentados , e o sinal gradiente é calculado retropropagando o sinal . do erro

no tempo. Este método apresenta a desvantagem de que nenhum aprendizadoé efetuado até que se alcance o fim da seqüência . Ainda assim , é uma técnica

muito utilizada . O algoritmo de treinamento para uma seqüência de pares de

entrada-saída de tamanho N é definido a seguir:

1. Definir os estados iniciais x(O) e u(O) da primeira entrada. Propagar osinal da entrada para a frente, definindo y(O) e x(1).

2. Para todo t >atribuir x(t) do estado de saída anterior e u(t) da

entrada corrente e propagar para a frente para encontrar y(t) e x(t + 1).

3. Atribuir o erro no vetor de estado final para o valor zero de modo queo valor da função custo não seja dependente do último vetor de estados.Calcular o vetor de estados na última camada de saída e compará-lo

com a saída desejada. Retropropagar para gerar um vetor erro para

x(N - 1) da mesma forma como a retropropagação do erro nas unidades

intermediárias da l'ILP.

4. Para todo instante t começando em N - 2, calcular o vetor erro no es-

tado de saída para o erro gerado em t + 1 e setar o vetor erro na saídacomparando com a saída esperada corrente. Retropropagar para gerar

um vetor erro para x(t).

ã. Computar o gradiente da função custo acumulada em toda a estrutura e

atualizar os pesos.

O algoritmo back-propagation through time pode ser facilmente adaptado

para lidar com entradas contínuas [Wer90]. Se o tamanho do buffer, N, for

maior que a duração dos efeitos do contexto , então boas aproximações podem

ser obtidas tanto para ativações feedforward quanto para a retropropagação do

sinal do erro , ignorando efeitos de contexto através da fronteira . Variando a

localização da fronteira entre os buffers nos dados de treinamento , os efeitos

da fronteira podem ser ainda mais reduzidos.

9.3.4 Redes recorrentes de tempo real

Outros modelos recorrentes treinados para funcionar continuamente são as re-

des recorrentes de tempo real, RTRN (Real-Time Recurrent Networks) [WZ89].

Estes modelos diferem das redes de Hopfield, que também são redes recorrentes,

em dois aspectos importantes:

• a rede contém nodos escondidos;

• a rede possui dinâmica arbitrária.

Uma característica particular destas redes reside em sua habilidade para

lidar tanto com as entradas quanto com as saídas variando no tempo, atravésde seu próprio funcionamento temporal.

A capacidade das redes RTRN de proporcionar uma dinâmica arbitráriatorna estas redes uma ferramenta útil em aplicações de tempo real, tais como:

• Modelagem biológica: uma RNA recorrente com três camadas foi uti-lizada para explorar a organização do reflexo vestíbulo-ocular (VOR); oVOR estabiliza a imagem visual produzindo rotações dos olhos que sãoquase iguais e opostas às rotações da cabeça [Ana91].

• Aplicações de lingüística: por exemplo, inferência gramatical [Gi\IC+92].

• Predição não-linear para modulação pulse-code diferenciável adaptativa(ADPCM) de fala: os resultados apresentados em [HL93] demonstramque o ADPCM possui desempenho superior à versão convencional dosistema que utiliza predição linear.

9.3.5 Redes de Elman e de Jordan

Elman introduziu memória às RNAs. Este modelo é uma aproximação doback-propagation through time, onde o sinal do erro é truncado em n = 1[E1m90].

Nas redes de Elman (Figura 9.4), além das unidades de entrada , interme-diárias e de saída, há também unidades de contexto, como nas redes parcial-mente recorrentes em geral. As unidades de entrada e saída interagem como ambiente externo, enquanto as unidades intermediárias e de contexto não ofazem. As unidades de entrada são apenas unidades de armazenamento (buffer)que passam os sinais sem modificá - los. As unidades de saída são unidades li-neares que somam os sinais que recebem . As unidades intermediárias podemter funções de ativação lineares ou não-lineares , e as unidades de contexto sãousadas apenas para memorizar as ativações anteriores das unidades interme -diárias e podem ser consideradas como atraso no tempo em um passo. Asconexões feedforward são modificáveis , e as conexões recorrentes são fixas. mo-tivo pelo qual a rede de Elman é apenas parcialmente recorrente.

211210

Page 115: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

CamadaEscondo

Cornada deSaída

Figura 9.4: Esquema geral de uma rede de Elmãn.

CarwdaEscorrida

carnudo deSaída

Figura 9.5: Esquema geral de uma rede de Jordan.

212 ' 213

Page 116: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Em um intervalo de tempo específico k, as ativações das unidades interme-

diárias (em k - 1) e as entradas correntes (em k) são utilizadas como entradas

da rede . Em um primeiro estágio , feedforward , estasentradas são propagadas

para a frente para produzir as saídas . Posteriormente , a rede é treinada com

o algoritmo de aprendizagem back-propagation padrão . Após este passo de

treinamento , as ativações das unidades intermediárias no tempo k são rein-

troduzidas , através das ligações recorrentes nas unidades de contexto, sendosalvas nestas unidades para o próximo passo do treinamento (k + 1). No início

do treinamento, as ativações das unidades intermediárias são desconhecidas e,geralmente , são inicializadas para a metade do valor máximo que as unidadesintermediárias podem ter.

Na rede de Jordan [Jor861 (Figura 9.5), a saída da rede é copiada paraunidade de contexto . Além disso , as unidades de contexto são localmente

recorrentes . A grande diferença em termos de topologia entre as duas redesé que a recorrência na rede de Elman é feita da camada escondida para asentradas , enquanto na rede de Jordan a recorrência é feita das saídas para asentradas.

9.4 Conclusão

Este capítulo foi voltado ao estudo de temas de RNAs que, embora relevantes,não puderam, deVidó à limitação do escopo deste livro, ter um capítulo espe-cialmente dedicado a cada um deles.

O primeiro tema descreveu e analisou as RNAs RBF. Nesta seção foram

descritos a estrutura das redes RBF e os algoritmos utilizados para treiná-las. Foi também apresentada uma comparação entre redes RBF e redes \ILP.

Uma rede RBF possui nas unidades da camada interna uma função radial (porexemplo, uma gaussiana ). enquanto a rede SILP possui a função sigmoidal.A função da camada interna é muito importante . Ela transforma padrões deentrada não linearmente separáveis em padrões intermediários linearmente se-paráveis.

Na seção seguinte foram discutidas redes que alteram sua estrutura du-rante a fase de treinamento . Estas redes, conhecidas como redes construtivas,incluem nodos e conexões para auxiliar o seu processamento (em alguns mode-los, nodos e conexões podem também ser eliminados ). Foram descritos alguns

modelos de redes construtivas, entre eles as redes CasCor. Uma rede CasCor

começa com uma arquitetura mínima, composta apenas pelas camadas de en-trada e saída . Durante o seu treinamento , novas unidades intermediárias sãoinseridas na rede, uma por vez.

Foram também apresentadas várias modificações propostas tanto para astopologias quanto para os algoritmos de aprendizagem mais utilizados porRNAs temporais. Estas mudanças têm por objetivo permitir o uso de taismodelos em tarefas em que o tempo é um parâmetro importante.

9.5 Exercícios

1. Qual a diferença entre crescimento vertical e crescimento horizontalem redes construtivas?

2. Por que você acha que o treinamento na rede RBF é geralmentemais rápido que o treinamento da rede MLP com o algoritmo back-propagation?

3. Enumere cinco possíveis aplicações que envolvem processamentotemporal.

4. Quais as principais diferenças entre as redes recorrentes e com atrasono tempo?

5. Quais são as abordagens existentes para a definição da arquiteturade uma rede? Quais as vantagens e desvantagens de cada uma delas?

214 215

Page 117: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Capítulo 10

Aplicações

10.1 Introdução

Pelo fato de as RNAs serem aptas a resolver problemas de cunho geral, taiscomo aproximação, classificação. categorização. predição etc., a gania de áreas

onde estas podem ser aplicadas é bastante extensa. Portanto. este capítulonão poderia- ter a pretensão de explorar completamente o imenso universo

disponível para a utilização de RNAs. Procurou-se, então, discutir a solução deproblemas básicos dentro de áreas mais populares como modelamento, cont rolee otimização. A extrapolação de alguns destes exemplos para outras áreas do

conhecimento não-discutidas neste capítulo pode ser facilmente obtida, já quealguns deles foram tratados de forma mais genérica.

Do ponto de vista de modelamento de sistemas, tarefa essencial para ocontrole de processos, as técnicas para utilização de RNAs são discutidas e

comparadas com técnicas clássicas. Será discutido em quais situações a abor-dagem por RNAs pode ser mais atrativa do que as técnicas tradicionais. Estassituações incluem o modelamento de sistemas mais complexos envolvendo um

grande número de variáveis, em que a identificação dos parâmetros físicos dosistema se torna uma tarefa árdua, tornando-se inviável o modelamento portécnicas convencionais. Para problemas de controle, são apresentadas topolo-

gias em que RNAs são utilizadas em paralelo com controladores clássicos visan-do a uma melhoria do desempenho global do sistema. De uma maneira geral,esta é a abordagem mais usual para o controle de sistemas com RNAs, já que,salvo pela utilização de técnicas como aprendizado por reforço [SBW91, \i'D92].os controladores neurais dependem sempre de um professor com o qual possamaprender as ações de controle. Portanto, salvo em sistemas em que o aprendiza-

217

Page 118: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

do por reforço é viável, as RNAs são mais comumente utilizadas em conjunto

com os controladores tradicionais.

Problemas de otimização e predição são tratados de maneira bastante ger-al com exemplos clássicos como o problema do caixeiro-viajante [HT85] e umexemplo de predição de volume de vendas de um produto hipotético. Para ocaso de predição foi dado um destaque especial, dedicando-se a ele uma seção es-pecial, apesar de este problema já ter sido tratado anteriormente sob o enfoquede modelamento. Na verdade, o modelamento de sistemas dinâmicos não deixade ser um problema de predição. As aplicações de RNAs a problemas de proces-samento de sinais e imagens são também discutidas, dando ênfase a aplicaçõesmais recentes, como processamento de voz e visão computacional. Finalmente,a utilização de Redes Neurais em problemas de classificação também é breve-

mente discutida, com ênfase em aplicações na área de finanças. Problemas declassificação caracterizam-se pela associação de um dado padrão de entrada auma entre várias classes. Finalmente, as aplicações de RNAs a problemas deprocessamento de sinais e imagens são discutidas, dando ênfase a aplicações

mais recentes, como processamento de voz e visão computacional.

10.2 Modelamento e controle neural

Devido às características não-lineares inerentes ao mapeamento entre camadas

de RN As feedforward. estas se caracterizam como ferramentas de modelamento

bastante apropriadas para o modelamento e controle de sistemas. Ferramen-tas matemáticas disponíveis para o controle de sistemas não-lineares normal-

mente utilizam técnicas de linearização, transformando a tarefa de controlenão-linear em pequenas tarefas de controle linear [DB95]. Apesar de muitasvezes eficiente. esta abordagem- não retrata a realidade dos sistemas físicos.

podendo resultar em soluções subótimas. Devido à sua capacidade de modelarcom fidelidade ações não-lineares. as RNAs são uma importante ferramentapara o controle de sistemas. Em adição a estas características. algoritmos para

treinamento on-line de RNAs são conhecidos na literatura [PM1B98]. o que as

habilita ao controle de sistemas cujas características variam com o tempo.

No que se refere ao modelamento e à identificação de sistemas. os métodos

clássicos [BC921, embora eficientes. envolvem ajustes de parâmetros usandotécnicas de mínimos quadrados e regressão. cuja complexidade aumenta bas-tante com o aumento do número de variáveis de entrada. Em contrapartida, as

RNAs têm o seu custo computacional de implementação e ajuste de parâmetros

crescendo apenas de maneira linear com o número de variáveis de entrada. Aadição de uma nova entrada a uma RNA feedforward aumenta em' apenas k onúmero total de parâmetros a serem ajustados, onde k é o número de nodos da

primeira camada escondida. Estas são algumas das características das RNAsque as tornam atrativas para o controle e a identificação de sistemas, comoveremos nas seções seguintes.

10.2.1 Modelamento e identificação de sistemas

Sistemas físicos, objetos de modelamento, possuem normalmente características

dinâmicas, ou seja, o valor de suas saídas no instante seguinte depende nã-) so-mente das entradas atuais, mas também das entradas e estados passados. Deuma maneira geral, o comportamento de um sistema dinâmico discreto notempo pode ser descrito através da Equação 10.1:

y(t + 1) = ID (x(t), x(t - 1), . • ., x(t - n), y(t), y(t - 1), ..., y(t - n)) (10.1)

onde x(t) e y(t) representam os vetores de entrada e saída, respectivamente,no instante de tempo arbitrário t, e 4)(• ), a função que mapeia os vetores deentrada e saída, podendo esta ser linear ou não-linear.

O problema-chave no modelamento de sistemas dinâmicos consiste entãoem encontrar uma aproximação para a função ^D(• ). Esta aproximação pode serobtida pelo mapeamento estático entre valores passados e atuais das entradase saídas do sistema. Neste caso, o problema de RNAs se resumiria a encontrar

os parâmetros (pesos e termos de polarização) para a rede que resultassem emuma boa aproximação para y(t + 1). Neste tipo de modelamento, a RNA secomportaria como um modelo não-paramétrico, já que os seus parâmetros nãoteriam significado físico. Em contraste com o modelamento por RNAs, mode-

los paramétricos [BC92] envolvem ajustes de parâmetros que possuem algumarelação com as características físicas do sistema. Estes modelos podem traduzir

melhor a realidade do sistema, porém requerem um entendimento mais pro-fundo das características físicas do mesmo. Em contrapartida, o modelamento

não-paramétrico por RNAs não requer um entendimento profundo das carac-terísticas físicas do sistema. Para que a planta seja modelada, basta que a

RNA seja alimentada durante o treinamento com um conjunto de dados quetraduzam de maneira fiel o comportamento do sistema.

Apesar da simplicidade da abordagem de RNAs para o modelamento, estaé muitas vezes uma característica criticada na literatura [BC92], já que as ca-racterísticas físicas do sistema podem ser mascaradas [BC92]. Por exemplo, se

218 219

Page 119: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

o sistema for linear e este estiver sendo modelado por uni perceptron multica-madas. a sua simplicidade não será revelada pelo mapeamento por este sistemaneural. que é tipicamente não-linear. No entanto. é preciso ter em mente que

o modelamento por RNAs não visa ao levantamento dos parâmetros físicos dosistema. mas sim a prover uni modelo que descreva o seu comportamento. Es-

ta abordagem se torna extremamente útil no modelamento de sistemas mais

complexos, em que o levantamento das características físicas do sistema para aidentificação por técnicas clássicas se torna uma tarefa de grande complexidade.

Um exemplo da aplicação de RNAs com sucesso a problemas de alta com-plexidade é o trabalho desenvolvido por Alarzano [Mar98]. em que o processo

de combustão de unia caldeira de uma usina siderúrgica foi modelado atravésde RNAs. Dados de entrada e saída de vazão de combustível, vazão de ar,

temperatura e pressão foram amostrados durante quatro meses e apresentados

para uma rede do tipo perceptron de múltiplas camadas. A rede foi capaz deprever com precisão o teor de oxigênio na saída da caldeira. Para se ter idéia

da complexidade deste problema. foram consideradas 11 variáveis de entradae duas de saída, sendo o sistema não-linear e de grande complexidade. Este é

um exemplo do tipo de problema em que o modelamento do tipo caixa-preta

por RNAs se torna bastante atrativo, se apresentando muitas vezes como únicaalternativa viável de modelamento.

O modelamento por RNAs é mais comumente realizado por mapeamentosestáticos entre valores de entrada e saída deslocados ao longo do tempo usandouma topologia de RNA com atraso de tempo ( Time Delay Neural Network -TDNN) [LH88] , como mostrado na Figura 10.1. É importante observar quese trata aqui de uma topologia do tipo feedforward (estática ) com recorrênciaimplementada através do treinamento , deslocando-se os dados de entrada esaída através de janelas de tempo de tamanho prefixado . O modelamentopode ser feito também com redes recorrentes , como as redes - de Elman [Elm90]e Jordan [Jor86 ]. Neste caso, as características temporais do modelo neuralobtido serão dependentes não somente do conjunto de dados , mas também daseqüência de treinamento , já que a recorrência existe fisicamente na topologiada rede. Uma discussão mais detalhada sobre modelamento de sistemas uti-lizando RNAs pode ser encontrada em [NP92].

Um exemplo de modelamento de um sistema dinâmico não-linear não-estacionário é apresentado a seguir [CBB+97]. O sistema modelado consisteem um processo anaeróbio de tratamento de esgotos que é parte integrante de

unia planta-piloto [Bra97]. O objetivo do modelamento é prever a turbidez1de saída da planta em função da turbidez de entrada, vazão afluente e estados

anteriores do sistema. A RNA utilizada no modelamento possui 7 entradas e

unia única saída; estas 7 entradas referem-se à vazão afluente, à turbidez de en-trada. à temperatura ambiente, sendo todas elas nos instantes de tempo atual

e anterior, além da saída no instante de tempo anterior. O esquema utilizadofoi então a topologia de uma TDNN, conforme descrição geral apresentada na

Figura 10.1. A Figura 10.2 apresenta os resultados da predição para o estado

seguinte do sistema. Como pode ser observado, a RNA capturou o comporta-mento do sistema, obtendo boa resposta para o passo seguinte. situação para

a qual foi treinada.

A Figura 10.3, por sua vez, apresenta o resultado da predição 10 passos

à frente, ou seja. os valores estimados pela rede são realimentados para asentradas durante 10 passos de predição. A cada 10 passos. os valores reais são

apresentados às entradas da rede, e o processo de predição se repete. Como erade se esperar, o resultado para este caso é inferior àquele apresentado para uni

passo à frente, já que ocorreu aqui um aumento do horizonte de predição. onde.obviamente, há acúmulo de erro a cada iteração. É normalmente satisfatória

em modelamento de sistemas dinâmicos utilizando técnicas clássicas ou neuraisa predição de apenas alguns passos à frente, tempo suficiente para tomadas de

decisão. Assim, os resultados para a predição de 10 passos à frente. embora nãotão precisos quanto aqueles para predição de apenas um passo. são suficientes

para prever o comportamento futuro do sistema. Nota-se que a rede foi capaz

de aprender o comportamento temporal do sistema.

10.2.2 Controladores neurais

A tarefa básica em controle de processos consiste em projetar controladores

que atuem no sistema de forma que o mesmo responda satisfatoriamente avalores de referência fornecidos ao controlador. Este, por sua vez, deve atuarna planta, considerando suas características dinâmicas, de forma que a mesma

responda com estabilidade às ações dos atuadores. Controladores clássicos[DB95], cujas técnicas de projeto são bastante conhecidas, trabalham visandoà minimização do erro entre a entrada desejada e a resposta da planta ao sinalde controle. A Figura 10.4 mostra o esquema geral de um controlador com

realimentação, em que o sinal de erro gerado após comparação entre o valor

'Utilizada aqui como medição indireta de parâmetros químicos que definem as carac-

terísticas do tratamento [CBB` 97].

- 220 1 221

Page 120: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

x(t-n)

y(t)y(t-1)

y(t-n)

RNA

Figura 10.1: Esquema geral para identificação utilizando RNAs com atraso de

tempo.

Figura 10.2: Predição para um passo à frente.

Figura 10.3: Predição para 10 passos à frente.

desejado e o obtido na saída da planta é utilizado como entrada do controlador.

Controladores neurais [NP92 ] partem normalmente de um processo préviode identificação da inversa da planta para então prover os sinais de controle paraos atuadores . A capacidade de adaptação e aprendizado on-line das RNAs émuitas vezes utilizada para corrigir ações de controle de controladores clássicospré-sintonizados atuando em sistemas com parâmetros variáveis. Eventuaismudanças no ponto de operação do sistema são corrigidas pela atuação dasRNAs. Uni exemplo clássico deste problema é o controle de manipuladoresrobóticos ÍSS96 . Para estes sistemas , parâmetros como atrito nas junções,

CoMda

Redimes o#

v

Figura 10.4: Esquema geral de controle com realimentação.

223

222

Page 121: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

inércia do braço ou mesmo a massa do objeto a ser manipulado podem variar.

Corno os controladores clássicos são pré-sintonizados, muitas vezes as respostasa estas variações não são satisfatórias.

Unia solução bens-sucedida para o controle de manipuladores utilizando

RNAs em conjunto com controladores clássicos foi apresentada por Teixeira[Tei98]. No modelo desenvolvido. o objetivo era controlar o posicionamento de

um manipulador do tipo PUMA 560 [SS96'. com até 6 articulações, a partir deunia posição inicial arbitrária no espaço tridimensional com o objetivo de atin-

gir uni ponto final também arbitrário. E óbvio que é possível estabelecer uma

trajetória ótima possível para o manipulados, resumindo-se a tarefa de controlea simplesmente fazer com que o manipulador siga tal trajetória. No entanto,

a complexidade do problema surge quando os parâmetros do manipulador são

modificados subitamente durante o percurso. Neste caso, o controlador devetomar ações para, apesar da mudança repentina nos parâmetros, manter o ma-

nipulador dentro da trajetória ótima. No caso de utilização de controladoresclássicos, se a mudança nas características do braço for muito grande, pode

ocorrer de este precisar atuar fora da faixa para a qual foi previamente sin-tonizado, levando- a resultados não-satisfatórios. A solução apresentada por

Teixeira [Tei98] para minimizar os efeitos da mudança nos parâmetros nasações de controle descreve uma topologia de controle com uma RNA atuandoem conjunto com um controlador clássico do tipo PID [DB95] e um algoritmopara adaptação on-line da rede. Quando há mudança nos parâmetros do ma-nipulador e o controlador PID não consegue corrigir a trajetória, o aumento

do erro de saída faz com que a RNA se adapte durante a operação, corrigin-do assim a ação do controlador PID. Os resultados com esta topologia foram

bastante superiores àqueles em que somente o controlador clássico foi utilizado[Tei98].

O modelo hierárquico apresentado por Kawato [KUI87] é também um bomexemplo da eficiência da utilização de RNAs em paralelo com controladores

clássicos (ver Figura 10.5). Nesta topologia, duas RNAs são adicionadas àtopologia de controle clássico com realimentação apresentada anteriormentena Figura 10.4. Neste esquema, a RNA 1 identifica a dinâmica direta da plan-ta, enquanto a RNA II identifica a sua dinâmica inversa. Após o aprendizado,a RNA 1 adianta a resposta da planta gerando o sinal y*, o que permite geraro sinal de erro e* = d - y*. De maneira similar, a RNA II também adianta aresposta do controlador gerando o sinal u*. Desta forma, uma vez treinadasas RNAs I e II, estas tomam o controle do sistema, e o controlador conven-

d + e11

RNA II

ControladorU

Planta Y-►

Y*

Figura 10.5: Esquema geral de um controlador hierárquico . A RNA I identificaa dinâmica direta da planta , enquanto a RNA II identifica a sua inversa. Aação das RNAs adianta respostas da planta e do controlador, resultando emuni sistema de controle mais eficiente.

cional poderá atuar toda vez que as ações das RNAs não forem suficientes para

diminuir o erro e = d - y. O desempenho geral do sistema de controle é maiseficiente, já que os atrasos inerentes ao controlador convencional são evitados.

10.2.3 Treinamento on-line em identificação e controle

Procedimentos para treinamento on-line utilizando o algoritmo back-propaga-

tion são conhecidos na literatura [Tei98, Fu96, CK95]. Para superar algumasdas deficiências deste algoritmo, como pouca robustez perante mudanças muito

grandes no sistema, outros algoritmos apropriados para treinamento on-line

são encontrados na literatura, como o CMAC (Cerebelar Model Articulation

Controller) [A1b75] e algoritmos baseados no controle por modos deslizantes[Utk78, SJR96, JRRC97, PAIB98]. O algoritmo CNIAC é muito adequado

para controle on-line, já que toda a informação sobre as ações de controle éarmazenada em uma tabela. Esta, por sua vez, permite um treinamento seusinterferência entre etapas de treinamento subseqüentes, já que a adição de unsnovo dado requer apenas a alocação de uma nova entrada na tabela. Casohaja conflito no armazenamento da informação, este será causado por carac-terísticas inerentes ao problema e não à forma de treinamento adotada. Oscontroladores CMAC, por sua vez, trabalham com generalização implícita, ou

- 224 1 225

Page 122: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

seja , esta depende da maneira como a informação é distribuída na tabela após

o armazenamento . Técnicas para melhorar a capacidade de generalização dos

controladores CMAC são conhecidas na literatura . [BH95c], porém, estas de-

pendem também de uma exploração adequada do espaço de estados.

As RNAs com treinamento por modos deslizantes [Utk78, SJR96 , JRRC97,

PMB98], por sua vez, possuem características de robustez similares aos con-

troladores que utilizam técnicas de sistemas de estruturas variáveis [Utk78]. O

trabalho apresentado por Parma , Menezes e Braga [PMB98] descreve um con-

junto de equações para treinamento on-line de redes Perceptron multicamadas

aplicadas a problemas de controle . O algoritmo apresentado supõe a existência

de uni sinal variável no tempo , o qual a rede deve acompanhar . A adaptação

on-line ocorre no sentido de diminuir o erro entre a saída da rede e este sinal

variável . Um exemplo da capacidade de adaptação da rede treinada com estealgoritmo é mostrado na Figura 10.6, onde se pode ver que, após algum tempo,

a saída da rede tende a acompanhar o sinal de saída f (t). Inicialmente, o erro

de saída da rede é alto , mas com o tempo ela se adapta e acompanha a saída

desejada.

1.0

M

Saída desejada (j(0)

0.8

-0.2

-0.4

Resposta da rede

0.1 0.2 0 .3 0.4 0 .5 0.6 0 .7 0.8 0.9 1.0

Tempo (t)

Figura 10.6: Exemplo de aprendizado on-line utilizando algoritmo de treina-

mento baseado na teoria dos modos deslizantes descrito por Parma, Menezes

e Braga.

10.3 Predição

Predição de séries temporais envolve a construção de modelos a partir de ob-

servações em um dado período. As técnicas clássicas para predição, tais como

ARMA e ARIMA [Bro63], são bem-estabelecidas. Porém, de maneira análogaaos problemas de controle e identificação, a construção destes modelos pode

depender de um entendimento mais profundo do problema, além de poder ter

alta complexidade, dependendo do número de variáveis consideradas. Nova-mente, se torna atraente a alternativa de modelamento por RNAs, já que estas

se caracterizam por um modelamento não-paramétrico. em qu^ não há grandenecessidade de se entender o processo propriamente dito. O modelamento podeser feito utilizando-se somente amostragens de valores de entrada e saída do

sistema em intervalos de tempo regulares. Outro fator favorável às RNAs estárelacionado com o fato de não haver para estas grande limitação no número devariáveis de entrada. Para o caso específico de predição, este é um fator im-portante, pois está relacionado com o número de atrasos de tempo que podemser considerados na predição.

Um exemplo de aplicação de RNAs a problemas de predição é apresenta-do na Figura 10.7, onde se deseja prever para a semana seguinte o volumede vendas de um determinado produto, com base eni observações das vendasnas semanas anteriores. Para modelar o sistema, foi utilizada uma RNA mul-ticamadas com topologia 5-7-1. ou seja, com 5 entradas. 7 nodos na camada

escondida e uma única saída. O treinamento foi feito utilizando atraso detempo [LH88], ou seja, os dados foram deslocados eni uma janela de tempodurante o treinamento. Para este exemplo, uma janela de 5 semanas foi uti-lizada, ou seja, as cinco entradas representam sempre as 5 semanas anteriores.sendo que a saída representa a próxima semana na seqüência. Como os dadosdisponíveis referiam-se até a vigésima primeira semana. a rede foi treinada até

a décima quinta semana, e os dados da décima sexta até a vigésima primeirasemanas foram utilizados para testar o modelo obtido. Como pode ser visto.

os resultados de predição da rede utilizando os dados das 5 semanas anterioressão bastante próximos dos reais. Obviamente, quanto maior a seqüência na

predição, maior deverá ser o erro ao final da série, já que o erro de predição vai

se acumulando ao longo das semanas. Deve-se considerar, no entanto, que aRNA foi treinada para prever apenas a semana seguinte e que a predição para

mais de uma semana é uma extrapolação da informação fornecida a ela. Para

o exemplo apresentado na Figura 10.7. os resultados desta extrapolação forambastante razoáveis.

226 227

Page 123: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Treinamento Predição

Figura 10.7: Predição de volume de vendas durante cinco semanas utilizandoRNA com atraso de tempo.

10.4 Otimização

Conforme mostrado anteriormente , a forma de armazenamento da informação

e atualização das saídas das redes de Hopfield [Hop82] permite se associar

unia função de energia decrescente no tempo aos estados da rede durante

unia trajetória qualquer no espaço de estados. Hopfield mostrou inicialmente

[Hop82 ] que, para o problema de memória associativa , a função de energia

E -2 wijxixj I varia de forma monotonicamente decrescente e que\ i j J

a rede se estabiliza em um mínimo de energia definido pelos vetores armazena-dos, chamados também de atratores2 . Pode-se visualizar , por este ponto devista , o problema de memória associativa como uni problema de otimizaçãoem que se deseja minimizar uma função de custo associada à semelhança entreo estado atual da rede e os atratores definidos pelo conjunto de treinamen-to. A solução deste problema de otimização está, então, resolvida de maneiraimplícita pela própria estrutura da rede treinada pela regra de Hebb [Heb49'.conforme mostrado anteriormente . A forma de treinamento define, portanto.o problema de otimização a ser resolvido.

2 Na verdade , a rede pode se estabilizar também em atratores espúrios indesejáveis, quepodem se formar próximo aos atratores definidos no treinamento.

A solução de outros problemas de otimização utilizando-se redes de Hop-

field requer que estes problemas sejam descritos de forma apropriada para que arede possa tratar deles. A solução anais conhecida de problemas de otimização

com redes de Hopfield é certamente a do Problema do caixeiro-viajante [HT85],descrita pelo próprio Hopfield em 1985 [HT85]. Dado um conjunto arbitrário

de cidades cujas distâncias entre cada unia sejam conhecidas, a solução desteproblema requer que se encontre a trajetória mais curta possível passando por

todas as cidades e visitando cada unia delas somente unia vez. Este problema

é normalmente utilizado como benchmarking para soluções de problemas deotimização. já que se trata de uni problema NP-completo bastante conhecido.Esta solução requer uni conjunto de n2 nodos, e a ativação de cada uni deles

representa o instante de tempo em que a cidade correspondente foi visitada.Para facilitar a formulação do problema, a estrutura da rede é apresentada

na forma de uma matriz n x n. onde a linha i da matriz representa todos os

possíveis instantes de tempo em que a cidade i pode ser visitada. Como cadacidade deve ser visitada apenas uma vez, a solução final deve ter somente uni

elemento ativo em cada linha. indicando o instante de tempo em que cadacidade foi visitada. A Figura 10.8 mostra uma possível solução para uni pro-blenia com 8 cidades. O estado final da rede representa a solução encontrada.

Tempo

o U 0 \ 0

O o O ^T

O O O O

Figura 10.8: Solução possível para uma trajetória de 8 cidades para o problemado caixeiro-viajante. A resposta fornecida pela rede foi a seqüência de cidades

4-2-5-8-1-6-3-7.

-228 1 229

Page 124: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Para se obter uma solução através de uma rede de Hopfield, o primeiropasso é definir uma função de custo e escrevê-la de forma apropriada para que

a rede possa tratá-la. A função de custo descrita por Hopfield para a soluçãodo problema do caixeiro-viajante é apresentada na Equação 10.2 [HT85]. Ob-serve que as saídas dos nodos são binárias unipolares, ou seja, podem assumir

somente os valores 0 ou 1. Inicialmente, a rede começa com todos os nodosativos, e, à medida que a rede vai evoluindo, ficam ativos somente aqueles

nodos que fazem parte da solução.

J = 1 E F- r-dijSi,,(Si(v+1 ) + Si(v_1))+

2

i i#j

[

v

^` 1I2 I ^ (1 - L S¿L.)2 + Sdi,)2 1i v

(10.2)

onde dij representa a distância entre as cidades i e j e Si,. representa o estado

do nodo ir conforme representação da Figura 10.8.

A situação Si,. = 1 ocorre somente quando a cidade i é visitada no instante

t•. Conforme apresentado na Figura 10.8, soluções possíveis possuem somenteum elemento ativo em cada linha e coluna. Isto ocorre porque as condições

do problema são de que, obviamente, somente uma cidade pode ser visitadade cada vez e cada cidade é visitada uma única vez. Estas restrições são

atendidas pelos dois últimos termos da Equação 10.2. O primeiro termo, por

sua vez. penaliza soluções longas. Para, finalmente, obtermos a estrutura da

rede correspondente, considera-se, segundo Hopfield e Tank [HT85]. conexõesproporcionais a -À entre nodos nas mesmas colunas e linhas e proporcionais a

-dij entre nodos de colunas vizinhas (que não estejam na mesma linha). Paraentender a razão para a escolha destes valores para as conexões, basta lembrarque À na Equação 10.2 penaliza soluções não-permitidas, como uma cidade

ser visitada mais de uma vez e duas cidades serem visitadas ao mesmo tempo.Portanto. quando houver nodos na mesma linha ou coluna de um nodo cujasaída esteja sendo atualizada, estes contribuirão negativamente para que esterodo tenha a sua saída ativa. Da mesma forma atuam as conexões entre colunas

proporcionais a -dij, já que estas penalizam visitas subseqüentes entre cidades

com distâncias grandes. Uma rede de Hopfield com pesos proporcionais a -dij

e -A conforme mostrado é capaz de evoluir no espaço de estados minimizando

a função de custo apresentada na Equação 10.2 com soluções para o problema

do caixeiro-viajante [HT85], como a da Figura 10.8.

10.5 Processamento de imagens e sinais

As potencialidades das RNAs na resolução de problemas de classificação, pre-dição, modelamento, categorização etc. foram bem exploradas nas seções an-teriores. Estes são problemas gerais que aparecem em várias áreas do conhe-

cimento. Em processamento de sinais e imagens, as RNAs ganharam grandepopularidade nos últimos anos como ferramenta alternativa e às vezes comple-

mentar às técnicas clássicas. Nestas áreas, as aplicações das RNAs envolvemreconhecimento de caracteres escritos a mão [LBD+89], compactação de dados

[BH89], codificação [CS97], reconhecimento da fala [And91], análise de compo-nentes independentes [OV97], entre outras.

Uma das aplicações mais conhecidas das RNAs em processamento da falaé certamente o trabalho de Kohonen para o reconhecimento de fonemas emfinlandês utilizando mapas auto-organizativos com treinamento competitivo[Koh88]. Este sistema classifica com sucesso 21 fonemas. Os mapas auto-organizativos de Kohonen [Koh82] são uma forma de quantização de vetores

[Koh86], que, por sua vez, é uma das técnicas clássicas para reconhecimentoda fala. O princípio básico de quantização de vetores é buscar exemplos repre-sentativos de classes a partir de um conjunto de vetores. Conforme mostradonos capítulos anteriores, isto é exatamente o que os mapas de Kohonen fazem,

porém de maneira adaptativa; este processo de adaptação também é conhecidona literatura como learning vector quantization [Koh86]. O processo de reco-nhecimento é então dividido em duas etapas: a primeira delas envolve a catego-rização dos fonemas, e a segunda, a classificação propriamente dita. Na etapade classificação, cada fonema ativa uma região do mapa, e uma seqüência defonemas correspondente a um sinal de voz ativa regiões distintas em seqüência.descrevendo então uma trajetória no mapa. Esta trajetória é responsável peloprocesso de reconhecimento.

Também em problemas de reconhecimento da fala, RNAs têm sido uti-lizadas em conjunto com a técnica clássica de reconhecimento por modelos deMarkov (HMMs - Hidden Markov Models) [BF96]. Basicamente. duas abor-dagens são encontradas na literatura em que RNAs e HMAIs são utilizadas em

conjunto. Uma delas encara RNAs como parte de um modelo HMM [Lev91].

e a outra utiliza RNAs como um modelo de predição que substitui o modelode Markov [Mam93]. No trabalho apresentado por Levin [Lev91]. uma RNA

multicamadas é utilizada como modelo de predição para unia seqüência de ob-servações de uma distribuição gaussiana de múltiplas variáveis. Neste caso, a

RNA é utilizada em conjunto com o modelo de Markov. Outras abordagens são

230 231

Page 125: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

encontradas na literatura, e uma discussão mais ampla deste problema podeser encontrada na coletânea de artigos apresentada por 1\Iammone [l\Iam93].

Os problemas de visão computacional e reconhecimento de imagens pos-suem características que os distinguem bastante dos problemas de reconheci-

mento da fala. A principal delas é certamente a quantidade de informaçãomanipulada. No caso de reconhecimento de imagens. os problemas requerem

o tratamento de imagens de alta definição com uma grande quantidade de in-formação adicional como coloração e posicionamento no espaço tridimensional.

O tratamento destes problemas com RNAs freqüentemente requer a utilização

de técnicas convencionais de processamento de imagens para pré-processar osdados e então apresentá-los de uma maneira tratável para a rede. A visão

computacional que utiliza RNAs encontra aplicações nas mais diversas áreas:o reconhecimento de faces para sistemas de identificação criminal e o controle

de qualidade em linhas de produçãosão dois exemplos.

As dificuldades no reconhecimento de faces surgem devido à grande varia-bilidade possível em imagens faciais (e em imagens tridimensionais de uma

maneira geral). como ângulo de visão, iluminação da imagem e a adição dedistorções como óculos. chapéus e barba. Estas variações colocam em risco arobustez das técnicas para reconhecimento de imagens faciais. Estas dificul-

dades surgiram já nos primeiros trabalhos na área, que envolviam o reconhe-cimento através de detecção de características geométricas das imagens. Esta

abordagem visa à extração de características relevantes das imagens tais comoforma da boca, nariz e olhos. Porém, esta se mostrou sensível a grandes dis-

torções nas imagens. Abordagens em que a imagem completa é analisada têmsido também bastante utilizadas com RNAs, porém retorna-se ao problema dedimensionalidade. Um trabalho conhecido na literatura, como o de Cottrel

e Fleming [G\190], por exemplo, utiliza imagens de 64 por 64 pixels, o queresulta em RNAs com 4096 entradas. O número de entradas da RNA paraesta abordagem cresce de forma quadrática com as dimensões das imagens de

entrada. Isto se torna um problema crítico em resoluções mais altas, o que res-tringe a utilização de RNAs para situações em que há um pré-processamentocom subseqüente redução de dimensão da informação de entrada. Este é o

caso, por exemplo, de abordagens como a de projeção em gray scale [Wi195] e

a análise dos componentes principais [BH89].

10.6 Classificação

Diversas das aplicações de RNAs dizem respeito à classificação de padrões.Nestas aplicações, a rede aprende a classificar um padrão desconhecido entre

várias classes ou categorias. Assim, ao deparar com um padrão desconhecido,

a rede deve classificá-lo em unia das classes existentes. Para que o desempenhodo classificador para novos padrões (padrões diferentes daqueles utilizados notreinamento) possa ser avaliado, o classificador passa por uma fase de teste

ou uso. Durante esta fase, deve ser observado o número de acertos realizadospelo classificador para uni conjunto de padrões cujas classes sejam conhecidas.

Nenhum dos padrões deste conjunto pode ter sido utilizado no treinamento doclassificador.

Para avaliar o desempenho de uma RNA na classificação de padrões. de-vem ser apresentadas as porcentagens de padrões corretamente classificados,incorretamente classificados e rejeitados. A proporção de padrões corretamente

classificados do conjunto total de padrões de teste é dado o nome taxa de a-

certo. A classificação correta ocorre quando o classificador associa uni padrão"desconhecido" à sua verdadeira classe.

Quando o classificador atribui o padrão "desconhecido " à classe errada. aclassificação é dita incorreta. A proporção de padrões incorretamente classifi-

cados dá origem à taxa de erro. Caso o padrão seja semelhante aos padrõesde mais de uma classe ou não seja suficientemente semelhante aos padrões de

nenhuma das classes, o padrão desconhecido é rejeitado. Para isto devem serdefinidos:

• uma diferença mínima entre a classe mais semelhante e a segunda classemais semelhante ao padrão apresentado: dif :

• um valor de similaridade mínimo entre o padrão apresentado e os padrões

de uma classe para que o padrão apresentado seja associado a esta: sim.

Chama-se de taxa de rejeição a proporção de padrões rejeitados. Os valoresde sim e dif são definidos de acordo com a aplicação. Para um conjunto de apli-cações, como, por exemplo, diagnóstico médico, controle de usinas nucleares enavegação de foguetes, o custo de uma classificação incorreta pode ser muitoelevado, sendo melhor rejeitar os padrões que o classificador não esteja muito

certo da categoria à qual pertencem. Para estas aplicações, o(s) valor(es) desim e/ou dif é(são) elevado(s). Em outras aplicações, como por exemplo reco-nhecimento de faces, análise de crédito, classificação de solos e reconhecimento

de assinaturas, é interessante que não ocorra um número elevado de rejeições.Para estes problemas, o(s) valor(es) de sim e/ou dif é(são) baixo(s).

- 232 1 233

Page 126: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Quando são utilizadas RNAs em problemas de classificação, durante o seu

treinamento devem ser apresentados conjuntos de padrões representativos para

cada uma das várias . classes consideradas . Além disso , o número de padrões

de treinamento para cada uma das classes deve ser idealmente o mesmo. Asprincipais aplicações encontradas na literatura sobre a utilização de RNAs em

classificação se referem a:

• Reconhecimento de imagens:

classificação de caracteres (manuscritos ou impressos);

reconhecimento de assinaturas;

reconhecimento de faces.

• Reconhecimento de sons:

classificação de fonemas;

reconhecimento de comandos.

• Classificação financeira:

Análise de crédito:

previsão de falência de empresas.

As aplicações em reconhecimento de imagens e de sons são bastante cober-tas pela literatura de RNAs. Dentre as aplicações na área de classificação

financeira . uma das mais bem-sucedidas é a de análise de crédito . A análise de

crédito pode envolver tanto pessoa física ( cartão de crédito. cheque especial,

empréstimo pessoal ) como pessoa jurídica . Crédito nada mais é que a entre-ga de um valor a uma pessoa mediante a promessa de este valor será resti-tuído. Dado o risco de a promessa de crédito não ser cumprida , é necessário

uma análise do risco de crédito. Redes Neurais têm sido muito bem -sucedidas

quando aplicadas a problemas de análise de crédito . Em [FdC97, LdC98], re-

des neurais do tipo AILP e RBF são geneticamente otimizadas para lidar coma análise de crédito para pessoa física. Em [HPR-98], o desempenho de re-des NILP em uma aplicação de análise de crédito é comparado ao obtido portécnicas simbólicas de aprendizado de máquina.

10.7 Conclusão

Este capítulo apresentou algumas das principais aplicações de RNAs a proble-mas práticos do dia-a-dia. Longe de poder ser considerado completo, já que a

gama de aplicações de RNAs é bastante ampla, este capítulo procurou cobriraplicações que envolvessem temas mais populares e atuais como modelarnento

e predição. Temas mais clássicos ria área, como reconhecimento de caracteres,que por muitos anos serviram de benchmarking para testar modelos de RNAs,possuem literatura extensa na área, tendo sido bastante estudados na décadapassada. Foi dedicado neste capítulo mais espaço a temas em que há umnúmero maior de problemas em aberto e que, conseqüentemente , viessem amotivar mais o leitor.

234 235

Page 127: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

Bibliografia

[A+96] R. Andrews et al. An evaluation and comparison of techniques

for extracting and refining rules from artificial nerval networks.Technical report, Queensland University of Technology, 1996.

[AAS89] R. AI-Alawi and T. J. Stonham. Functionality of multilayerBoolean neural networks. Electronics Letters, 25(10):657-658,1989.

[AAS92] R. Al-Alawi and J. Stonham. A training strategy and function-ality analysis of multilayer boolean neural networks. Journal ofIntelligent Systems, 2:53-94, 1992.

[ACB94] I. Aleksander, T. J. Clarke, and A. P. Braga. Binary neural sys-tems: combining weighted and weightless properties. IEE Intelli-gent Systems Engineering, 3:211-221, 1994.

[AG79] W. W. Armstrong and J . Gecsei . Adaptation algorithms for bi-nary tree networks . IEEE. Transactions on Systems , Man, andCybernetics , 9:276-285, 1979.

[AG94] R. Andrews and S. Geva. Rule extraction from a constrainederror backpropagation MLP. In Proceedings of the 5th Australian

Conference on Neural Networks, pages 9-12, Brisbane, Austrália,1994.

[A1b75] J. S. Albus. A new approach to manipulator control: The cere-bellar model articulation controller (CMAC). Trans. ASME. Jn1.

Dyn. Sys. Meas. and Control, 63(3):220-227, 1975.

[A1e66] I. Aleksander . Self-adaptive universal logic circuits . Electronics

Letters, 2 : 231, 1966.

237

Page 128: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[Ale87] I. Aleksander . Adaptive pattern recognition systems and boltz-mann machines : A rapprochement . Pattern Recognition Letters,6:113-120, 1987.

[A1e91] I. Aleksander . Connectionism or weightless neurocomputing. InProceedings of ICANN- 91, volume 2 , pages 991-1000 , Helsinki,

1991.

[A1m87] L.B. Almeida. A learning rule for asynchronous perceptrons with

feedback in a combinatorial environment. In M. Caudill and

C. Butler, editors, IEEE International Conference on Neural Net-

works, volume 2, pages 609-618, San Diego 1987, 1987. IEEE, New

York.

[AM90] I. Aleksander and H . Morton . An overview of weightless neu-

ral nets. In Proceedings of IJCNN- 90, volume 2 , pages 499-502,

Washington, 1990.

[AM91] I. Aleksander and H. Morton. General neural unit: retrieval per-

formance. Electronics Letters, 27:1776-1778, 1991.

[Ana91] T. J. Anastacio. Advances in Neural Information Processing Sys-

tems 3, chapter A recurrent neural network model of velocity stor-

age in the vestibulo-ocular reflex. Morgan Kaufmann, 91.

[And68] J.A. Anderson. A memory model using spatial correlation func-

tions. Kybernetik, 5:113-119, 1968.

[And70] J.A. Anderson. Two models for memory organization . Mathemat-

ical Biosciences , 8:137-160, 1970.

[And91] T. R. Anderson. Speaker independent phoneme recognition withan auditory model and a neural network: a comparison with tra-

ditional techniques. In Proc. ICASSP-91, Int. Conf on Acoustics,

Speech and Signal Processing, volume I, pages 149-152, Piscat-

away, NJ, 1991. IEEE Service Center.

[AP94] A. Aamodt and E. Plaza. Case-based reasoning: Foundational is-

sues, methodological variations and system approaches. AI Com-

munications , 7:39-59, March 1994.

(AS87] J. Austin and T. J. Stonham. An associative memory for use

in image recognition and occlusion analysis. Image and Vision

Computing, 5:251-261, 1987.

[Ash91] K. Ashley. Modeling Legal Arguments: Reasoning with Cases andHypotheticals. MIT Press, Bradford Books, 1991.

[Aus90] S. Austim. An introduction to genetic algorithms. AI Expert,5:48-53, 1990.

[AVT88] B. Angeniol , G. Vaubois,. and J . Le Texier. Self-organizing fea-ture maps and the travelling salesman problem . Neural Networks,1:289-293, 1988.

[BA94] A. P. Braga and I. Aleksander. Geometrical treatment and sta-tistical modelling of the the distribution of patterns in the n-dimensional boolean space. Pattern RecognitionLetters,16:507-515,1994.

[BAP+97] A. P. Braga , M. B. Almeida , G. Pereira , M. Costa , and C. Barbosa.On the information storage of associative matrix memories. InD.L.Borges and W . Martins , editors , Proceedings of IVth BrazilianSymposium on Neural Networks (IEEE Computer Society Press),pages 51-56 . IEEE Computer Society Press, 1997.

[Bar89] H. Barlow. Unsupervised learning. Neural Computation, 1:295-311, 1989.

[Bar91] R. Barletta. An introduction to case-based reasoning. AI Expert,pages 43-49, 1991.

[Bar94] G. Barfai. Hierarchical clustering with art neural network. Tech-nical report. Universitv of Wellington, 1994.

[Bar95] G. Barfai. An art-based modular architecture for learning hier-archical clusterings. Technical report, University of Wellington,1995.

[Bat91] R. Battiti. First and second-order methods for learning: betweensteepest descent and Newton's method. Technical report, Univer-sity of Trento, 1991.

[BB59] W. Bledsoe and I. Browing. Pattern recognition and readingby machine. In Proceedings Eastern Joint Computer Conference,pages 225-232, Boston, 1959.

238 239

Page 129: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[BBA192] F. Z. Brili. D . E. Brown , and W. N. Martin. Fast genetic selectionof features for neural network classifiers. IEEE Transactions onNeural Networks, 3(2):324-328. 'March 1992.

[BC92] S. Billings and S. Chen. Neural networks and system identification.In \\'arwick K, Irwin G. W. and Hunt K. J.. editors. Neural Net-

works for Control and Systems , pages 181-205, Stevenage. 1992.IEE Control Engineering Series 46 . Peter Peregrinus.

[BD94] 1\1. Berthold and J. Diamond. Boosting the performance of rbfnetworks with dynainic decay adjustment. In Advances in Neu-

ral Information Processing Systenzs 6, pages 521-528. MIT Press,1994.

[Ber95] D. Bertsekas. Non Linear Programnzing. Athena Scientific. 1995.

[BF96 ] Y. Bengio and P. Frasconi . Iiiput-output HMMs for sequence pro-cessing. IEEE Transactions on Neural Networks , 7( 5):1231 - 1249.1996.

[BFF89] D. L. Bisset. E. Filho, and M. C. Fairhurst. A comparative studyof neural network structures for practical application in a pattern

recognition envirornent. In Proceedings of the First IEE. Interna-

tional Conference on Artificial Neural Networks, pages 378-382.London, UK, October 1989. IEE.

[BG87] J. P. Banquet and S. Grossberg. Probing cognitive processes

through the sctructure of event-related potentials during learn-ing: An experimental and theoretical analysis. Applied Optics.

26(23):4931-4946, 1987.

[BH69] A. E. Bryson and Y. Ho. Applied Optimal Contról. Blaisdell, 1969.

[BH89] P. Baldi and K. Hornik. Neural networks and principal components

analysis: learning from examples without local minima. NeuralNetworks, 2:53-58, 1989.

[BH95a] K. Balakrishnan and V. Honavar. Evolutionary design of neuralarchitectures: A preliminary taxonomy and guide to literature.Technical report, Computer Science Department, Iowa State Uni-versity, 1995.

[BH95b] H . Bischof and K. Hornik. PCA-Pyramids for image compression.In G. Tesauro, D. S. Touretzky, and T. K. Leen, editors, Advancesin Neural Information Processing Systems 2, pages 941-948. Mor-gan Kaufmann, 1995.

[BH95c] M. Brown and C. J. Harris. A perspective and critique of adaptiveneurofuzzy systems used in modelling and control applications.Int. J. Neural Systems , 1995 . submitted for publication.

[Bis95] C . Bishop . Neural Networks for Pattern Recognition . Oxford Press,

1995.

[BL88] D. S. Broomhead and D . Lowe. Multivariable function interpola-tion and adaptive networks . Complex Systems , 2:321-355, 1988.

[Bra91 ] B. Branting . Exploiting the complementarity of rules and prece-dents with reciprocity and fairness . In Case-Based ReasoningWorkshop , pages 39-50, 1991.

[Bra94a] A. P. Braga . Attractor properties of recurrent networks with gen-eralising boolean nodes . In Proceedings of the International Con-ference on Artificial Neural Networks , pages 421-424 . Springer-Verlag, 1994.

[Bra94b] A. P. Braga . Predicting contradictions in the storage process ofdiluted recurrent boolean neural networks. Electronics Letters,30:55-56, 1994.

[Bra95 ] J. Branke . Evolutionary algorithms for network design and train-ing. Technical report , Institute AIFB , University of Karlsruhe,1995.

[Bra97] C. M. P. Braga . Desenvolvimento , implementação , modelagem econtrole de um sistema piloto anaeróbico de tratamento de esgotos.Technical report , UFMG , Belo Horizonte , Brasil, 1997.

[BRG95] H. Burke , D. Rosen , and P . Goodman . Comparing the predictionaccuracy of artificial neural networks and other statistical mod-els for breast cancer survival . In G. Tesauro , D. S. Touretzky,and T . K. Leen, editors , Neural Information Processing Systems7. MIT Press, 1995.

[Bro63] R. G. Brown . Smoothing , forecasting and prediction of discretetime series . Prentice Hall, USA, 1963.

240 241

Page 130: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[BSA83] A.G. Barto, R.S. Sutton; and C.W. Anderson. Neuronlike adaptiveelements that can solve difficult learning problems. IEEE Trans-

actions on Systems , Màn and Cy .bernetics , SMC-13: 834-846, 1983.

[BSV96] B. Back, K. Sere, and H. Vanharanta. Data mining account num-

bers using self-organizing maps. In Finnish Artificial Intelligence

Conferente, pages 35-47, 1996.

[BT90] ' D. Bailey and D. Thompson. Developing neural network applica-

tions. AI Expert, 5:34-41, 1990.

[Cau91] M. Caudill. Neura: network training tips and techniques. AI Ex-

pert , 6:55-61, 1991.

[CBB+97] A. L. Carvalho, A. P. Braga, C. M. P. Braga, T. L. V. Guimarãés ,and R. T. Pena. Modelagem de um reator piloto de manta de lodo

utilizando redes neurais artificiais. In Dibio Leandro Borges and

Weber Martins, editors. IV Simpósio Brasileiro de Redes Neurais,

Goiânia, GO, Dezembro 1997.

[CFB92] A. C. P. L. F. Carvalho, M. C. Fairhurst, and D. L. Bisset. SOFT- a. Boolean self organising feature extractor. In Proceedings of the

ICANN. 92 Conferente, pages 669-672, Brighton, UK, September

1992. Elsevier.

[CFB97] A. C. P. L. F. Carvalho. M. Fairhurst, and D. Bisset. Combiningboolean neural architectures for image recognition. Connection

Science, 9(4):405-418, 1997.

[CG87a] G. A. Carpenter and S. Grossberg. ART2: Self-organization of sta-ble category recognition codes for analog input patterns. Applied

Optics, 26(23):4919-4930, 1987.

[CG87b] G. A. Carpenter and S. Grossberg. A massively parallel architec-ture for a self-organizing neural pattern recognition machine. Com-

puter Vision, Graphics. and Image Processing, 37:54-115, 1987.

[CG88] G. A. Carpenter and S. Grossberg. The ART of adaptive pattern

recognition by a self-organizing neural network. Computer, 21:77-

88, 1988.

[CG90] G. A. Carpenter and S. Grossberg. ART3: Hierarchical searchusing chemical transmitters in self-organizing pattern recognition

architectures. Neural Networks. 3(2):129-152. 1990.

[CG93] G. Carpenter and K. Govindarajan. Evaluation of speaker nor-

malization methods for vowel recognition using fuzzy artmap andk-nn. Technical reporta CNS-Boston University, 1993.

[CGGW96] G. Carpenter, M. Gjaja, S. Gopal, and C. Woodcock. Art neural

networks for remote sensing: Vegetation classification from landsattm and terrain data. Technical report, CNS-Boston University,1996.

[CG1\1+91] G. A. Carpenter, S. Grossberg. N. Nlarkuzon, J. H. Reynolds, andB. Rosen. Fuzzy ARTMAP : A neural network architecture forincremental supervised learning of analog multidimensional maps.Teçhnical report, Boston University, 1991.

[CGR91a] G. A. Carpenter. S. Grossberg. and J. H. Reynolds. ARTMAP:

Supervised real time learning and classification of nonstationarydata by a self-organizing neural network. Neural Networks, 4:565-588, 1991.

[CGR91b] G. A. Carpenter. S. Grossberg. and D. Rosen. Art2a: An adaptiveresonance algorithm for rapid category learning and recognition.Neural Netw•orks. 4:493-504. 1991.

[CGR91c] G. A. Carpenter. S. Grossberg. and D. B. Rosen. Fuzzy ART:

Fast stable learnin_ and categorization of analog patterns 1),, anadaptive ressonar:ce sustem. Neural .Vetworks. 4:759-771, 1991.

[Cha90] D. Chalmers. T.C, e-:o' ution of learning: an experiment in geneticconnectionism. Is Connectionist models: 1990 surnner school,pages 81-90. M,^r_a r Nauffmann. 1990.

[CK95] F. C. Chen and H. K. Khalil. Adaptive control of a class of non-linear discrete-T'._.e systems using neural net,N-orks. IEEE Trans.on automatic 40:791-801. 1995.

[CM96] G. Carpenter and N. \Iarkuzon. Artmap-ic and medical diagnosis:Instance counti- and inconsistent cases. Technical report, CNS-Boston U nivers--:. 1996.

[CS94] M. Craven and J. ^avlik . Using sanipling and queries to extractrules from traire= neural netrivorks. In W. Colien Arnd H. Hirsh,editor. Proceed, of the 11th International Conferente on AIa-chine Learning . nazis 37-45. New Brunswick. EUA, 1994. MorganKaufmann.

242 243

Page 131: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[CS96] M. Craven and J. Shavlik. Extracting tree-structured representa-tions of trained networks. In D. S. Touretzky, AI. C. Alozer, and

Al. E. Hasselmo, editors, Advances in Neural Information Process-

ing Systems, pages 37-45, Denver, EUA, 1996. 1\IIT Press.

[Fah91 ]

Fai88]

S. E. Fahlman . The recurrente cascade-correlation architecture,1991. Technical Report CMU-CS-91-100. Carnegie-Mellon Uni-versity.

M. Fairhurst. Computer Vision for Robotic Systems . Prentice/Hall[CS97] W. Chang and H. S. Soliman. Irnage coding by a neural net classi-

fication process. Applied Artificial Intelligence, 11(1):33-57, 1997.[Fau94 ]

International, 1988.

L. Fausett . Fundamentais of Neural Networks. Architectures, Al-[Cyb88] G. Cybenko. Continuos valued neural networks with two hidden

layers are sufficieiit. Technical report, Department of Computergorithms and Applications . Prentice Hall, 1994.

Science, Tufts University, 1988. [FB90] E . Filho and D. L. Bisset . Applying the ART1 architecture to apattern recognition task . In Proceedings of the Parallel Process-

[Cyb89] G. Cybenko. Approximation by superpositions of a sigmoid func-

tion. Afathematics of Control, Signals and Systems, 2:303-314,ing in Neural Systems and Computers conferente, pages 343-349,Dusseldorf,FRG, March 1990 . North-Holland.

1989.[FBF90] E . Filho, D. L. Bisset , and M. C. Fairhurst. A. goal seeking neuron

[D196]

[Dar59]

J. Denker et al. Neural network recognizer for handwritten zipcode digits. Neural Networks ll-orld., 6(3):241-249. 1996.

C. Darwin. On the origin of species by means of natural selection.

John Alurray, 1859. FBF92]

for Boolean neural networks . In Proceedings of the Internation-al Neural Networks Conferente, volume 2 , pages 894-897 , Paris,France , July 1990.

E . Filho, D. L. Bisset , and M . C. Fairhurst. Architectures forgoal-seeking neurons . International Journal of Intelligent Systems,

[DB95] R. C. Dorf and R. H. Bishop. Alodern Control Systems. Addison-\Vesley, USA, 7th edition, 1995.

2:95-119, 1992.

[FC97] E . Mendes Filho and A. C. P. L. F. Carvalho. Evolutionary design-[DeS88] D. DeSieno. Adding a consciente to competitive learning. In

IEEE Internationcal Conferente on Neural Networks, pages 117-124. IEEE Press, 1988.

FdC97]

neural network architectures . In IV Simpósio Brasileiro de RedesNeurais , pages 58-65. IEEE Press, 1997.

E. Mendes Filho and A. de Carvalho. Evolutionary design of mlp[d-'xI73] C. Von der Malsburg. An automaton with brain-like properties. neural network architectures. In Dibio Leandro Borges and Weber

[DAIR93]

Kybernetes, 14:85-100, 1973.

S.P. Day and Davenport 1\1. R. Continuos-time temporal back-propagation with adaptive time delays. IEEE Transactions onNeural Networks, 4:348-354, 1993.

Fel50]

Martins , editors, IV Simpósio Brasileiro de Redes Neurais, pages58-65 , Goiânia - GO , Dezembro 1997.

W. Feller . An Introduction to Probability Theory and Its Applica-tions I. John Wiley, New York, second edition, 1950.

[E1m90] J. L. Elman. Findirig structure in time. Cognitive Science, 14:179- [Fer77] A. B. H. Ferreira . Dicionário Aurélio da Língua Portuguesa. Edi-211, 1990. tora Nova Fronteira, 1977.

[Fah88] S. E. Fahlman. An empirical study of learning speed in backprop-agation networks. Technical report, Carnegie Mellow University,

[FFB91] E . Filho, M. C. Fairhurst , and D . L. Bisset . Adaptive pattern

recognition using goal-seeking neurons . Pattern Recognition Let-1988. ters, 12:131-138, March 1991.

244 245

Page 132: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[FL88) S. E. Fahlman and C. Lebiere. The cascade-correlation learning

architecture. In R. P. Lippmann, J.. E. Moody, and D. S. Touret-

zky, editors, Advances in Neural Information Processing Systems

2. Morgan Kaufmann, 1988.

[Gar87]

[GBD92]

E. Gardner. Maximum storage capacity in neural networks. Eu-rophysics Letters, 4:481-485, 1987.

S. Geman, E. Bienenstock, and R. Doursat. Neural networks andthe bias-variance dilemma. Neural Computation, 4:1-58, 1992.

(Fra87] M. Franzini. Speech recognition with back propagation. In 9th

Annual Conferente of IEEE Engineering in Medicine and Biology

Society, 1987.

[GEW95] S. Grossberg, Mingolla E, and J. Williamson. Synthetic apertureradar processing by a multiple scale neural system for boundaryand surface representation. Neural Networks, 8:1005-1028, 1995.

[Fre90] M. Frean. The upstart algorithm: A method for constructing

and training feed-forward neural networks. Neural Computation,

[GK95] S. Goonatilake and S. Khebbal. Intelligent Hybrid Systems. JohnWiley & Sons, Inc, 1995.

2:189-209, 1990. [GM90] G.W.Cottrel and M.K.Fleming. Faces recognition using unsuper-

[Fri95] B. Fritzke. A growing neural gas network learns topologies. InAdvances in Neural Information Processing Systems 7, pages 521-

528. AIIT Press, 1995. [GNIC+92]

vised feature extraction. In Proceedings of the International NeuralNetwork Conference, Paris, 1990.

C. Giles, C. Miller, D. Chen, G. Sun. H. Chen, and Y. Lee. Learn-ing and extracting finite state automata with second-order recur-

[Fu96]

Fuk75]

Li-Chen Fu. Neural network approach to variable structure based

adaptative tracking of siso systems. In Proc. IEEE Workshop on

variable Strucuture Systems, 1996.

K. Fukushima. Cognitron: a self-organising multilayered neural

network. Biol. Cybern., 23:121-134, 1975.

Gol89]

[Gro76a]

rent neural networks. Neural Computation. 4(3):393-405, 1992.

D. E. Goldberg. Genetic Algorithms in Search, Optimization andMachine Learning. Addison Wesley. 1989.

S. Grossberg. Adaptive pattern classification and universal re-coding: II. feedback, expectation, olfaction. illusions. Biological

[Fuk80] K. Fukushima. Neocognitron:a self-organizing neural networkmodel for a mechanism of pattern recognition unaffected by shift

iii position. Biological Cybernetics, 36:193-202, 1980.[Gro76b]

Cybernetics, 23:187-202, 1976.

S. Grossberg. Adaptive pattern recognition and universal recoding:parallel development and coding of neural feature detectors. Biol.

[Fun89]

[Gal86]

K.I. Funuhashi. On the approximate realization of continuous

mappings by neural networks. Neural Networks, 2:183-192, 1989.

S. I. Gallant. Incremental learning of local linear mappings. In 8th

Conferente on Pattern Recognition, pages 217-222, 1986.

[Gro87]

[GRS90]

Cybern., 24:121-134, 1976.

S.Grossberg. Competitive learning: From interactive activation toadaptive resonance. Cognitive Science. 11:23-63, 1987.

D. Golonib, N. Rubin, and H. Sompolinsky. «'illshaw model: As-sociative memory with sparse coding and lo v firing rates. Phy.sical

[Gal90a] S. I. Gallant. Perceptron based learning algorithms. IEEE Trans-

actions on Neural Networks, 1:179-192, 1990.[Gur92]

Review A, 41:1843-1854, 1990.

K. N. Gurney. Training nets of hardware realizable sigma-pi units.

[Gal90b] S. I. Gallant. Perceptron based learning algorithms. IEEE Trans-

actions on Neural Networks, 1:179-192, 1990.

Neural Networks, 5:289-303, 1992.

[GW95] B. Graham and D. Willshaw. Capacity and information efficiency

[Gal93] S. I. Gallant. Neural Network Learning and Expert Systems. MIT

Press, 1993.

of a brain-like associative net. In Veural Information Processing

Systems, pages 513-520, 1995.

246 247

Page 133: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[Ha197] S. Halgamuge. Self e'volving neural networks for rule based data

processing. IEEE Tran.sactions on Signal Processing. 45(11):2766-

2773, November 1997.

[Ham89] K. Hammond. Case-Based Planning Viewing Pla.nning as a Mem-

ory Task. Academic Press, 1989.

[Ham90] S. E. Hampson. Connectionistic Problem Solving: Cornputational

Aspects of Biological Learning. Berlin: Birkhauser. 1990.

[Has95] M. H. Hassoun. Fundamentais of artificial neural networks. MIT

Press, Cambridge, AMA, 1995.

[Hay91] Y. Hayashi. A neural expert system with autornated extraction offuzzy if-then rules and its application in medical diagnosis. In R. P.

Lippmann, J. E. l\ioodv, and D. S. Touretzky. editors, .4dvances in

Neural Information Processing Systems 2, pages 578-584. I\Iorgan

Kaufmann. 1991.

[Hay94] S. Haykin. Neural Networks - A Comprehensive Foundation.

Prentice-11a11, 1994.

[Heb49] D. O. Hebb. The Organization of Behavior. Wiley, 1949.

[Hin88] T. Hinrichs. Towards and architecture for open world problem

solving. In Case-Based Reasoning Workshop, DARPA. Morgan

Kaufmann, 1988.

[HKLK96] T. Honkela, S. Kaski , K. Lagus, and T. Kohonen . Exploration

of full-text databases with self-organizing maps. In IEEE Inter-

national Conferente on Neural Networks-ICNN'96, pages 56-61,

1996.

[HKP91] J. Hertz, A. Krogh, and R. G. Palmer. Introduction to the Theory

of Neural Computation, volume Lecture Notes Volume I of San-

ta Fe Institute Studies in The Science of Complexity. Addison-

Wesley, 1991.

[HL91] X. He and A. Lapedes. Nonlinear modelling and prediction bysucessive approximations using radial basis functions . Technical

report, Los Alamos National Laboratory, 1991.

[HL93] S. Haykin and L. Li. Applications of Neural Networks to Telecom-municatios , chapter 16 kb/s adaptive differential pulse code mod-ulation of speech. Lawrence Erlbaum, 1993.

[HM94 ] M. Hagan and M. Menhaj . Training feedforward networks with theMarquardt algorithm . IEEE Transactions on Neural Networks,5(6):989-993, November 1994.

[HN87] Geoffrey E. Hinton and Stephen J. Nowlan . How learning canguide evolution. Complex Systems , 1(1):495-502, June 1987.

[Hop82] J. J. Hopfield . Neural networks and physical systems with emer-gent collective properties. Proc. Nat . Acad. Sci., 79 : 2554-8, 1982.

[Hop84] J . J. Hopfield . Neurons with graded response have collective com-putational properties like those of two-state neurons . Proceedingsof the National Academy of Sciences, USA, 81 : 3088-3092, May1984.

[HPR+98 ] P. Horst , T. Padilha, C. Rocha , S. Rezende , and A. de Carva -lho. Knowledge acquisition using symbolic and connectionist algo-rithms for credit evaluation . In Patrick Simpson , editor, IEEEWorld Congress on Computational Intelligence , WCCI'98, An-chorage , EUA, Mãio 1998.

[HSG89] S . Harp , T. Samad , and A . Guha . Towards the genetic synthesisof neural networks. In 3rd International Conferente on GeneticAlgorithms , pages 360-369. Morgan Kauffmann, 1989.

[HSW89] K. Hornik , M. Stinchcombe , and H . White . Multilayer feedforwardnetworks are universal approximators . Neural Networks, 2:359-366, 1989.

[HT85] J. J. Hopfield and D. W. Tank . Neural computation of decision inoptimation problems . Biological Cybernetics , 52:141-152, 1985.

[IAP93] R. Evans I. Aleksander and W. Penney. Magnus : an iconic neuralstate machine . In Proceedings of the Weightless Neural NetworkWorkshop . University of York, 1993.

[Jon80] K. Jong. Adaptive systems design . IEEE Transactions on Systems,Man, and Cybernetics , 10, 1980.

248 249

Page 134: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[Jor86] M. I. Jordan. Attractor dynamics and parallelism in a connection- [Koh86] T. Kohonen. Learning vector quantization for pattern recognition.ist sequential machine. In Proceedings of the Eighth Annual Con- Repórt,TKK-F-A601, Helsinki University of Technology, Espoo'.ference of the Cognitive Science Society, pages 531-546, Amherst, Finland, 1986.

[JRRC97]

1986. Hillsdale: Erlbaum.

K. Jezernik, M. Rodic, R. Safaric R., and B. Curk. Neural network[Koh88] T. Kohonen. The `neural' phonetic typewriter. Computer,

21(3):11-22, 1988.

[KA87]

sliding mode robot control. ROBOTIC, 15:23-30, 1997.

W. K. Kan and I. Aleksander. A. probabilistic logic neuron net•work for associative learning. In Proceedings of the IEEE. FirstInternational Cor ference on Neural Networks, volume II, pages

[Koh89]

Ko183a]

T. Kohonen. Self-Organization and Associative Memory. Springer-Verlag, Berlin, 3 edition, 1989.

J. Kolodner. Maintaining organization in a dynamic long-term

[KA89]

541-548, San Diego, California, June 1987. IEEE.

W. K. Kan and I. Aleksander. Neural Computing Architectu7c5, K 18 b

memory. Cognitive Science, (7):243-280, 1983.

[ o ]3 J. Kolodner. Reconstructive memory a computer model. Cognitivechapter RAM-Neurons for adaptive image transformation tasks.

,Science, (7):281-328, 1983.

Chapman and Hall, 89.[Ko192] J. Kolodner. An introduction to casa-based reasoning Artificial

[Kan88]

[Kar90]

P. Kanerva. Sparse Distributed Memory. MIT. Press, 1988.

E. D. Karnin. A simple procedure for pruning back-propagation

trained neural networks. IEEE Transactions on Neural Networks, Ko193]

.Intelligence Review, (6):3-34, 1992.

J. Kolodner. Case-Based reasoning. Morgan Kauffmann, 1993.

1(2):239-242, 1990. [Kot89] P. Koton. Using Experience in Learning and Problem Solving. PhD

[Kit90] H. Kitano. Designing neural networks using genetic algorithms thesis, MIT, 1989.

with graph generation system. Complex Systems, 4:461-476, 1990.[KR73] T. Kohonen and M. Ruohonen. Representation of associated data

[KK96] S. Kaski and T. Kohonen. Structures of welfare and poverty in the by matrix operators. IEEE Transactions on Computers, C-22:701-

world discovered by self-organizing maps. Technical report, Labo- 702, 1973.

Koc96]

ratory of Computer and Information Science - Helsinki University

of Technology, 1996.

G. Kock. The neural network description language CONNECT

[KU1871 M. Kawato, Y. Uno, and M. Isobe. A hierarchical model for vol-untary movement and its application to robotics. In IJCNN 1987Vol. 4, pages 573-582, 1987.

and its C++ implementation. Technical report, GMD FIRST

Berlin, August 1996. [KW93] S. Krovvidy and W. C. Wee. Wastewater treatment systems froco

[Koh72] T. Kohonen. Correlation matrix memories. IEEE Transactions on

Computers, C-21:353-359, 1972. [Lay97]

case-based reasoning. Machine Learning, 10:341-363, 1993.

D. Lay. Linear Algebra and its Applications. Addison Wesley,1997.

[Koh74]

[Koh82]

T. Kohonen. An adaptive associative memory principle. IEEE

Transactions on Computers, C-23:444-445, 1974.

T. Kohonen. Self-organized formation of topologically correct fea-

[LBD+89] Y. LeCun, B. Boser, J. S. Denker, D. Henderson, R. E. Howard,W. Hubbard, and L. D. Jackel. Backpropagation applied to hand-written Zip Iode recognition. Neural Computation, 1:541-551,

ture maps. Biological Cybernetics, 43, 1982. 1989.

250 251

Page 135: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[LBD+90] Y. LeCun. B. Boser. J.S. Denker, D. Henderson, R.E. Howard.

W. Hubbard. and L.D. Jackel. Handwritten digit recognition witha back-propagation network. In D.S. Touretzky, editor. NeuralInformation Processing Systems, volume 2, pages 396-404, Denver1989. 1990. Morgan Kaufmann. San Mateo.

[Lin86c]

Lin88]

R. Linsker. From basic network principies to neural architecture:

Emergente of spatial-opponent cells. Proceedings of the National

Acadeny of Sciences, USA, 83:7508-7512, 1986.

R. Linsker. Self-organization in perceptual network. Computer,

21(3):105-117, 1988.

[LdC98]

LdO94]

E. Lacerda and A. de Carvalho. Redes de futres base radial paraavaliao de risco de crdito. In Antônio de Pádua Braga. editor, VSimpósio Brasileiro de Redes Neurais. pages 259-264, Belo Hori-zonte - MG. Dezembro 1998.

T. B. Ludermir and W. R. de Oliveira. WVeightless neural models.Computer Standards ' Interfaces, 16:253-263, 1994.

[LK89]

LLD93]

M. Lemmon and B. V. K Y. Kumar. A model for self-organization

in wta networks and its application to map prediction problems.

In Maureen Caudill and Charles Butler, editors. Int. Joint Conf

on Neural Networks, volume II, pages 509-516, Washington. D.C..

June 1989. IEEE.

D. Lin, P. A. Ligomenides, and J. E. Dayhoff. Learning spatiotem-poral topology using an adaptive time-delay neural network. In

[LDS90] Y. LeCun. J.S. Denker. and S.A. Solla. Optimal brain damage. InD.S. Touretzkv, editor. Neural Information Processing Systems,volume 2. pares 598-605, Denver 1989. 1990. Morgan Kaufmann. [Luc91]

Proc. World Congress on Neural Networks, 1993.

J. Lucy. Perfect auto-associators using ram-type nodes. Electronics

San Mateo. Letters, 27:799-800, 1991.

[LeC85] Y. LeCun. A learning procedure for assymetric threshold network.In Proceeding.s of Cognitiva 85 pages 599-604 1985

[MA88] C. Myers and I. Aleksander. Learning algorithm for probabilistic

neural nets. In Proceedings of the First INNS. Annual Meeting,. . . pages 205-209, 1988.

[Leo94] S. J. Leon. Linear algebra with applications. Prentice Hall, 1994. [MA93] W. Martins and N. M. Allinson. Two improvements for GSN neu-

ral networks. In Weightless Neural Network- 1,I7orkshop'93, Com-[Lev91] E. Levin. Modeling time varying systems using hidden control

neural architecture. In Richard P. Lippmann, John E. Moody.and David S. Touretzky, editors, Advances in Neural InformationProcessing Systems. volume 3, pages 147-154. Morgan KaufmannPublishers. Inc.. 1991.

Mac67]

puting with Log ical Neurons, pages 58-63, University of York,

York. UK, April 1993.

J. MacQueen. Some methods for classification and analysis of

multivariate observations. In 5th Berkeley Symposium on Mathe-

matical Statistics and Probability, pages 281-297, 1967.[LH88]

Lin86a]

K. J. Lang and G. E. Hinton. The developrnent of the time-delayneural networks architecture for speech recognition, 1988. Techni-cal Report CMU-CS-88-152. Carnegie-Mellon University.

R. Linsker. From basic network principies to neural architecture:Emergente of orientation-selective cells. Proceedings of the Na-tional Academy of Sciences, USA, 83:8390-8394, 1986.

[Mal95]

Mam93]

M. Malek. A connectionist indexing approach for cbr systems. In

A. Aamodt and M. Veloso, editors, Proceedings of First Inter-na-

tional Conferente on Case-Based Reasoning Research and Dcrel-

opment, pages 520-527, October 1995.

R. J. Mammone, editor. Artificial Neural Networks for Speech and

Vision. Chapman & Hall, London, 1993.

[Lin86b] R. Linsker. From basic network principies to neural architecture:Emergente of orientation columns. Proceedings of the NationalAcademy of Sciences. USA, 83:8779-8783, 1986.

[Man93] M. Mandischer. Representations and evolution of neural networks.

In R. Albreight, C. Reeves, and N. Steele, editors, Artificial Neural

Nets and genetic algorithms, pages 643-649. Springer verlag. 1993-

252 253

Page 136: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[Mar98] L. F. Marzano . Modelamento de uma caldeira da usiminas através

de redes neurais artificais . Master's thesis, PPGEE-UFMG, 1998.

[MC98] C. Milaré and A. C. P. L. F. Carvalho . Using a neural network

in a case based reasoning system . In International Conferente

on Computational Intelligence and Multímedia Applications, pages

43-48. World Scientific, 1998.

[MD89a]\ D. Montana and L . Davis. Training feedforward neural networks

using- genetic algorithms. In 11 th International Joint Confer-

ence on Artificial Intelligence. pages 762-767. Morgan Kauffmann,

1989.

[MD89b] J. Moody and C. Darken. Fast learning in networks of locally-

tuned processing units. Neural Computation, (1):281-294, 1989.

[MDC95] A. Mpé, S. Deveughéle. and \I. Clément. Usino self- organising fea-

ture maps for water monitoring. In Proceedings of the ICANN 95

Conferente, volume Forecasting & Marketing. pages 1-6, October

1995.

[Min61] M. L. Minsky. Steps towards artificial intelligence. In Proc. of the

Institute of Radio Engineers 49, pages 8-32, 1961.

[\1\170] J. M. Mendel and R. W. McLaren. Adaptirve, Learning, and

Pattern Recognition Systeins: Theory and Applications, chapter

Reinforcement-learning control and pattern recognition systems,

pages 287-318. Ne«- York: Academic Press, 70.

[^IN89] M. Mezard and J. Nadal. Learning in feedforward neural networks:

The tiling algorithm. J. Phys. A: Math and Gen., 22:2191-2203,

19s9.

[MP43] W.S. McCulloch and W. Pitts. A logical calulus of the ideas im-

manent in nervous activity. Bulletin of Mathernatical Biophysics,

5:115-133, 1943.

[MP69] M. Minsky and S. Papert. Perceptrons: an introduction to com-

putational geometry. MIT Press, l\Iassachusetts. 1969.

[MPRV87] R.J. 1\IcEliece. E.C. Posner. E.R. Rodemich, and S.S. Venkatesh.The capacite of the hopfield associative memory. IEEE Transac-

tions on Information Theory. 33:461-482. 1987.

[MPW89] J. Murre, R. Phaf, and G. Wolters. Calco networks: A modular

approach to supervised and unsupervised learning. In MaureenCaudill and Charles Butler, editors,. International Joint Confer-ente on Neural Networks, pages 649-665, Washington, D.C., June1989. IEEE.

[MS89] M. C. Mozer and P. Smolensky. Skeletonization: A technique for

trimming the fat from a network via relabance assessment. InD. S. Touretzky, editor, Advances in Neural Information Process-ing Systems 1, pages 107-115. \Iorgan Kaufmann, 1989.

[MTH89] G. Miller, P. Todd, and S. Hedge. Designing neural networks usinggenetic algorithms. In Srd International Conferente on GeneticAlgorithms, pages 379-384. Morgan Kauffmann, 1989.

[MTW94] J. D. McCauley, B. R. Thabe, and A. D. Whittaker. Fat estima-

tion in beef ultrasound images using texture and adaptive logicnetworks. Transactions of ASAE. 37(3):997-102, June 1994.

[Mur71] S. Muroga. Threshold Logic and its Applications. Wiley, NewYork, 1971.

[Mur94] D. Murray. Tuning neural networks with genetic algorithms. AIExpert, 9:27-31. 1994.

[MWG88] D. A. Mighell. T. S. Wikinson. and J. W. Goodman. Backprop-agation and its application to handwritten signature verification.In R. P. Lippmann, J. E. Moodv.. and D. S. Touretzky. editors,Advances in Neural Information Processing Systems 2. I\IorganKaufmann, 1988.

[Mye89] C. E. I\Iyers. Output functions for probabilistic logic podes. In

First IEE International Conferente on Artificial Neural Networks,pages 310-314. London, UK. October 1989. IEE.

[Ni165] N. Nilsson. Learning MachinFs. Morgan Kaufmann , San Mateo,CA, 1965.

[NP92] K. S. Narendra and K. Parthasaratlrv. Identification and control ofdynamic systems using neural networks. IEEE Trans. on NeuralNetworks, 1(1) :4-27, 1992.

[Oja82] E. Oja. A simplified neuron model as a principal component ana-lyzer. Journal of Methematicol &iology, 15:267-273, 1982.

254 255

Page 137: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[OV97] E. Oja and K. Valkealahti. Local independent component analysisby the self-organizing map. In Proc . ICANN'97. 7th International

Conferente on Artificial Neural Networks, volume 1327 of Lecture

Notes in Computer Science, pages 553-558. Springer, Berlin, 1997.

[Par85] D. Parker. Learning logic: Casting the cortei of the human brain

in silicon. Techiical report, Center for Computational Research in

Economics and Management Science, MIT, 1985.

[PB86] B. Porter and R. Bareiss. PROTOS: An experinient in knowledge

acquisition for heuristic classification tasks. In First International

Meeting on Advances in Learning (IMAL), pages 159-174. 1986.

[PBH90] B. Porter, R. Bareiss, and R. Holte. Concept learning and heuris-tic classification in weak-theorv domains. Artificial Intelligence,

45:229-263, 1990.

[PC87] S. Patarnello and P. Carnevali. Learning net-,sorks of neurons \vith

Boolean logic. Europhysics Letters, 4(4):503-508, 1987.

[Pea92] B. Pearlmutter. Gradient descent: second order momentum andsaturation error. In J. E. Moody, S. Hanson, and R. Lippinann. ed-

itors. Adz'ances in Neura.l Information Processing Systems 2, pages

887--894. 1\Iorgan Kaufmann, 1992.

[Per88] P. Peretto. On learning rules and memory storage abilities of asvm-

metrical neural networks. Journal de Physique (Paris), 49:711-

726, 1988.

[PFF95] V. Porto. D. Fogel, and L. Fogel. Alternative neural network train-ing methods. IEEE Expert, 10:16-22, 1995.

[PG92] L. Pau and T Gotzche. Explanation facility for neural networks.Journal of Intelligent and Robotic Systems, 5:193-206, 1992.

[PGD85] L. Personnaz, I. Guyon, and G. Dreyfus. Information storage andretrieval in spin-glass-like neural networks. Journal de Physique

Letters (Paris), 46:359-365, 1985.

[PGS90] W. D. Penny, K. N. Gurney, and T. J. Stonham. Reward-penaltytraining for logical neural networks. In Conferente on Artificial In-

telligence Applications and Neural Networks, page 4, Zurich, June

1990.

[Pin87] F. J. Pineda. Generalization of back-propagation to recurrent neu-ral networks. Physical Review Letters, 59:2229-2232, 1987.

[PMB98] G. Parma, B. R. Menezes, and A. P. Braga. Sliding mode algorithmfor training multi-layer neural networks. IEE Electronics Letters,34(1):97-98, 1998.

[PNH86] D. Plaut, S. Nowlan, and G. Hinton. Experiments on learning byback-propagation. Technical report, Departament of Computer

Science, Carnegie-Mellon University, 1986.

[PP93] V. Petridis and K. Paraschidis. Structural adaptation based on asimple learning algorithm. In International Joint Conferente onNeural Networks, pages 621-623, 1993.

[PYH95] R. Parekh, J. Yang, and V. Honavar. Contructive neural net-work learning algorithms for multi-category pattern classification.Technical report, Computer Science Department, Iowa State Uni-versity, 1995.

[Qui86] J. Quinlan. Induction decision trees. Machine Learning, 1(1):81-106, 1986.

[Qui93] J. Quinlan. C4.5: Programs for Machine Learning. Morgan Kauf-mann, 1993.

[RC94] E. Reategui and J. A. Campbell. A classification system for creditcard transactions. In M. Keane, J. Haton, and M. Manago, editors,

Preceedings of The Second lEuropean Workshop on Case-BasedReasoning, pages 167-174, November 1994.

[RCB95] E. Reategui, J. A. Campbell, and J. A. Borghetti. Using a neuralnetwork to learn general knowledge in a case-based system. InA. Aamodt and M. Veloso, editors, Proceedings of First Interna-

tional Conferente on Case-Based Reasoning Research and Devel-

opment, pages 528-537, October 1995.

[Ree93] R. Reed. Pruning algorithms - A survey. IEEE Transactions onNeural Networks, 4(5):740-746, 1993.

[RHW86] D. E. Rumelhart, G.E. Hinton, and R.J. Williams. Learning repre-sentations by back-propagating errors. Nature, 323:533-536, 1986.

256 1 257

Page 138: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[Rie94] NI. Riedmiller. Rprop - . description and implementation. details.

Technical report, University of Karlsruhe, 1994.

[RM86] D. E. Rumelhart and J. L.; nlcClelland. Parallel Distributed Pro-

cessing, volume 1: Foundations. The MIT Press, 1986.

[Ros58] F. Rosenblatt. The perceptron: A probabilistic model for informa-

tion storage and organization in the brain. Psychol. Rev.. 65:386-

408, 1958.

[Ros62 ] F. Rosenblatt . Principies of Neurodynamics: Perceptrons and the

theory of brain mechanisms . Spartan Books , New York, 1962.

[SA77] R. Schank and R . Adelson . Scripts , Plans, Goals and Understand-

ing an Inquiry into Human Knowledge Structures . Lawrence Erl-

baum Associates , Publishers, 1977.

[San92] A. Sankar. Neural tree networks. In R. Alammone. editor. Compu-

tational Methods for Signal Recovery and Recognition. pages 327-

367. John Wiley & Sons, 1992.

[SB95] R. Sun and L. A. Bookman, editors. Computational Architectures

Integrating Neural and Symbolic Processes: A Perspective on the

State of the Art. Kluwer Academic Publishers, 1995.

[SBW91] R.S. Sutton, A.G. Barto, and R. J. Willians. Reinforcement learn-ing is direct adaptive optimal control. In Proc. of the American

Control Conferente, pages 2143--2146, 1991.

[SC96] C. Serrano-Cinca . Self-organizing neural networks for financial

diagnosis . Decision Support Systems , 17(13): 227-238. 1996.

[Sch82] R. Schank. Dynamic Memory: A Theory of Reminding and Learn-

iny in Computers and People. Cambridge University Press. 1982.

[SG87] L. C. Shiue and R. O Grondin. On designing fuzzy learning neuralautomata. In 1`laureen Caudill and Charles Butler, editors. IEEE

First International Conferente on Neural Networks. volume II.

pages 541-548, San Diego, California. June 1987. IEEE.

[Sha89] J. L. Shapiro. Hard learning in Boolean neural networks . In Pro-

ceedings of the Aleeting on Neural Computing, London. UK. 1989.

[Sim85] R. Simpson. A computer model of case-based reasoning in prob-lem solving: An investigation in the domain of dispute mediation.Technical report, Georgia Institute of Technology, School of Infor-mation and Computer Science, 1985.

[SJR96] A. Sabanovic, K. Jezernik, and M. Rodic. Neural network appli-cation in sliding mode control systems . In Proc . IEEE Workshopon Variable Structure Systems , USA, 1996.

[SJW91] W. Schiffmann, M. Joost, and R. Werner. Performance evalua-tion of evolutionary created neural network tcpologies . In Parallelproblem solving from nature 2, pages 292-296, 1991.

[S1a91] S . Slade. Reconstructive memory , a computer model. AI Magazine,(7):43-49, 1991.

[SR89] R. Schank and C. Riesbeck. Inside Case-Based Reasoning.Lawrence Erlbaum Associates, 1989.

[SR92] C. Skalak and E. Rissland. Arguments and cases: An inevitabletwining. Artificial Intelligence and Law, An International Journal,(7):3-48, 1992.

[SS96 ] L. Sciavicco and B . Siciliano . Modeling and control of robot maniu-lators . McGraw-Hill, USA, 1996.

[Sut88] R. S. Sutton. Learning to predict by the method of temporaldifferences . Machine Learning , 3:9-44, 1988.

[Syc88] K. Sycara. Using case-based reasoning for plan adaptation andrepair. In Case-Based Reasoning Workshop, DARPA, pages 425-434. Morgan Kaufmann, 1988.

[TA77] A. N. Tikhonov and V. Y. Arsenin. Solutions of Ill-Posed Prob-lems. V.H. Winston & Sons, John Wiley & Sons, WashingtonD.C., 1977. Translation editor Fritz John.

[Tay72] J. G. Taylor . Spontaneous behaviuor in neural networks . Journalof Theoretical Biology , 36:513-528, 1972.

[Tei98 ] R. Teixeira . Controle de um manipulador puma 560 através deredes neurais artificiais com adaptação on-line . Master's thesis,PPGEE-UFMG, 1998.

258 259

Page 139: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[TG91] V. Tyba and K. Coser . Self-organizing feature maps for proc- [WD92]cess control in chemistry . In International Conferente on Artificial

Neural Networks-ICANN '91, pages 847-852, 1991.[Wei90]

C. J. C. H. Watkins and P. Dayan. Q-learning. Machine LearningJournal. 8(3/4), 1992. Special Issue on Reinforcement Learning.

G \Veiss. Combining neural and evolutionary learning: aspects[Tho11] E. L. Thorndike . Animal Intelligence . Darien, 1911. and approaches. Technical report, Technical University of \Iunich.

[TOD95] A. Tickle , M. Orlowski , and J . Diederich . DEDEC: decision de-

tection by rule extraction froco neural networks . Technical report, [Wer74]Queensland University of Technology, 1995.

1990.

P. Werbos. Beyond Regression : New Tools for Prediction andAnalysis in the Behavioral Sciences. PhD thesis, Harvard Univer-sity. 1974.

[TS92] G. Tambouratzis and T. J. Stonham . Implementing hard self-

organising tasks using logical neura 1 networks. In Proceedings of [\Ver90]the ICANN. 92 Conferente , pages 643-646, Brighton , UK, Septem-

ber 1992 . Elsevier.

P. Werbos. Backpropagation trough time: \Vhat it does and to doit. In Proceedings of IEEE, volume 78, pages 1550-1560. 1990.

[WH60] B. Widrow and M.E. Hoff. Adaptative switching circuits. Insti-(UBB95 ] L. Uebel, S. Botelho , and D . Barone . Contrôle inteligente de tute of Radio Engineers, Western Electronic Show and Conren-

robôs móveis autônomos : RAM x Fuzzy. In Anais do II Simpósio

Brasileiro de Redes Neurais , pages 43-48 , São Carlos , Brasil, outu-tion, 1960.

[Utk78]

bro 1995. [WHH+89]

Sliding modes and their application in Variable Struc-V I Utkin

A. Waibel, T. Hanazawa, J.G. Hinton, K. Shikano. and K. Lang.Phoneme recognition using time-delas neural networks. IEEE.4S-

VKR93]

Wai89 ]

. . .

ture Systems. MIR, Moscow, 1978.

[Whi89]S. Venkatamaran , R. Krishnan , and K . Rao. A rule-case based

system for image analysis . In First European Workshop on Case-

Based Reasoning , pages 410-415, 1993.

A. Waibel. Modular construction of time-delay neural networks

SP Magazine, 37:328-339, 1989.

D. Whitley. The GENITOR algorithm and selection pressure: whyrank-based allocation of reproductive trials is best. In 3rd Interna-tional Conferente on Genetic Algorithms, pages 116-121. MorganKauffmann, 1989.

Wan90a]

[Wi171]for speech recognition . Neural Computation , 1:39-46, 1989.

E. A. Wan. Temporal backpropagation : An efficient algorithm

D. J. Willshaw. Alodels of Distributed Associative lllemory. PhDthesis, University of Edinburgh, 1971.

for finite impulse response neural networks . In Proc . of the 1990

Connectionist Models Summer School, 1990.

[Wi195] J. Wilder. Face recognition using transform coding of gray scaleprojections and the neural tree network. In Richard \Iammone,editor, Artificial neural networks for speech and vision , pages 520-

[Wan90b] E . A. Wan. Temporal backpropagation for fir neural networks. InProc. IEEE Int. Joint Conf. Neural Networks, 1990.

530. Chapman and Hall, 1995.

[WP89] R.J. Williams and J. Peng. Reinforcement learning algorithms as[WBLH69] D.J. Willshaw , O.P. Buneman, and H . C. Longuet-Higgins. Non-

holographic associative memory . Nature, 222, 1969.function optimizers . In International Joint Conference on NVeuralNetworks, volume 2, pages 89-95, Washington 1989 , 1989. IEEE,New York.

[WC96] B. Whitehead and T . Choate . Cooperative-competitive geneticevolution of radial basis function centers and widths for time series [WS88] K Y. M. Wong and D. Sherrington . Storage properties of randomlyprediction . IEEE Transactions on Neural Networks , 7:869-880,

1996.connected Boolean ne ural networks for associative memore. Eu-rophysics Letters, 7(3):197-202, 1988 .

260 1 261

Page 140: Redes Neurais Artificiais Teoria e Aplicacoes.sorackalves.uv

[WSE92] D. Whitley, J. Schaffer, and L. Eshelmau. Combinations of genetic

algorithins and neural networks : a survey of Lhe state of the art. In

I?•f•cr-nati.onal Confeicn•cc on. ('ontbi.n.n.ti,oii •, n/' grvu.rti.r algori.th.in.ti

and neural networks , pages 1--37. IEEE Press, 1992.

[WZ89] R.J. Williams and D. Zipser. A learning algorithin for continual-

ly running fully recurrent neural networks. Neural Computation,

1:270-280, 1989.

[XJH95] L. Xu, M. Jordan, and G. Hinton. An alternative model for mix-tures of experts. In G. Tesauro, D. S. Touretzky, and T. K. Leen,

editors, Advances in Neural Information Processing Systems 2,

pages 633-640. Morgan Kaufmann, 1995.

[YKC89] A. L. Yuille, D. M. Kammen, and D. S. Cohen. Quadrature anddevelopmeiit of orientation selective cortical cells by hebb rules.

Biological Cybernetics, 61:183-194, 1989.

[Yod94] M. Yoda. Predicting the tokyo stock market. In G. Deboeck,

editor, Trading on the Edge: Neural, Genetic and Fuzzy Systems

for Chaotic Financial Markets, pages 66-79. John Wiley & Sons,

1994.

[Zad71] L. A. Zadeh. Toward a theory of fuzzy systems. In R. E. Kalmanand N. DeClaris, editors, Aspects of network and systern, theory,

pages 469-490. Rinehart and Winston, 1971.

[ZGLC95] E. Zalama, P. Gaudiano, and J. Lopez-Coronado. A real-time,unsupervised neural network for the low-level control of a mobilerobot in a nonstationary environment. Neural• Networks, 8:103-

123, 1995.

262