• Nenhum resultado encontrado

Redes Neurais Artificiais Teoria e Aplicacoes

N/A
N/A
Protected

Academic year: 2021

Share "Redes Neurais Artificiais Teoria e Aplicacoes"

Copied!
140
0
0

Texto

(1)
(2)

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)

(3)

Capa: Dan Palatnik

Direitos exclusivos para a língua portuguesa

Copyright © 2000 by

LTC - LIVROS TÉCNICOS E CIENTÍFICOS EDITORA S.A.

Travessa do Ouvidor, 11

Rio de Janeiro, RJ - CEP 20040-040

Tel.: 21-221-9621

Fax: 21 -221-3202

Reservados todos os direitos . É proibida a duplicação ou 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)

A Wanda e Mateus,

A Valéria e Beatriz,

(4)

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 douconta-tora- 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, o que gerou também nos últimos anos no Brasil uma grande demanda por aplicações nos setores industrial, comercial e de serviços. Com a inclusão de disciplinas de RNAs em vários dos 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 uma visã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, os modelos mais difundidos são então apresentados. Em todo o livro, o assunto é abordado com a profundidade adequada para que o leitor adquira a autonomia necessária para o desenvolvimento de suas próprias aplicações. Como existe na literatura uma diversidade muito 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;

(5)

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 para aqueles que se dedicam à área e também como incentivo para aqueles que se iniciam no assunto.

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 gostaria de agradecer a Gustavo G. Parma e a Alessandra L. Carvalho pela ajuda na elaboração dos gráficos das Figuras 10.2, 10.3 e 10.6. André gostaria de agradecer especialmente aos alunos Cláudia Milaré, Edmar Martineli, Elson Mendes Filho, Ernesto Vargas, Estefane Lacerda, 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ítulos 1 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 Braga André 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 Engenharia Elétrica em 1995 pelo Imperial College (University of London) na área de Redes Neurais Artificiais. É atualmente Professor Adjunto do Departamento de Engenharia Eletrónica da UFMG, onde orienta vários alunos de doutorado, mestrado e graduação na área de Redes Neurais. Publicou vários trabalhos em periódicos e em anais de conferências naci-onais e internacinaci-onais na área deste livro. Organizou o V Simpósio Brasileiro de Redes Neurais e é coordenador da Comissão Especial de Redes Neurais da Sociedade Brasileira de Computação. É atualmente co-editor chefe do periódico internacional International

Journal 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ção pelo Departamento de Informática da Universidade Federal de Pernambuco em 1987 e 1990, respectivamente. Em 1994, obteve seu PhD em Redes Neurais pela University of Kent 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 Universidade de São Paulo, Campus de São Carlos. Em 1998, tornou-se Professor Associado do referi-do departamento, de onde está licenciareferi-do. Atualmente, é Professor Associareferi-do da Univer-sity of Guelph, Canadá. Publicou vários artigos em congressos e periódicos nacionais e internacionais e dois livros. Organizou o II Simpósio Brasileiro de Redes Neurais e foi coordenador da Comissão Especial de Redes Neurais da Sociedade Brasileira de Compu-tação. É atualmente co-editor chefe do periódico internacional International Journal of

Computational Intelligence and Applications, publicado pela Imperial College Press, de

Londres, 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 Departamento de Informática da Universidade Federal de Pernambuco, sendo hoje coordenadora do curso de 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 e organizou o III Simpósio Brasileiro de Redes Neurais, tendo sido também coordenadora

(6)

Sumário

1 Introdução ... 1

1.1 O que São Redes Neurais Artificiais? ... 1

1.2 Histórico ... 2

1.3 Motivação para as RNAs: Redes Biológicas ... 4

1.3.1 Neurônios Biológicos ... 5

1.3.2 A Comunicação no Cérebro ... 6

1.4 Neurônios Artificiais: Modelo MCP ... 7

1.5 Funções de Ativação ... 10

1.6 Principais Arquiteturas de RNAs ... 11

1.7 Estrutura do Livro ... 13 2 Aprendizado ... 15 2.1 Introdução ... 15 2.2 Aprendizado Supervisionado ... 16 2.2.1 Correção de Erros ... 17 2.3 Aprendizado Não-supervisionado ... 19 2.3.1 Aprendizado Hebbiano ... :... 20 2.3.2 Modelo de Linsker ... 21 2.3.3 Regra de Oja ... 23 2.3.4 Regra de Yuille ... 23

2.3.5 Aprendizado por Competição ... 23

2.4 Aprendizado por Reforço ... 25

2.4.1 Classes de Aprendizado por Reforço ... 26

2.5 Conclusão ... 27

2.6 Exercícios ... 27

3 Redes Perceptron e Adaline ... 29

3.1 Introdução ... 29

3.2 Portas de Limiar ... 30

3.2.1 Portas de Limiar Lineares ... 30

3.2.2 Portas de Limiar Quadráticas ... 32

3.3 Perceptron ... 35

3.3.1 O Algoritmo de Aprendizado do Perceptron ... 36

3.3.2 Teorema da Convergéncia ... 38

3.3.3 Implementação do Algoritmo de Treinamento do Perceptron ... 41

3.4 Adaline ... 43

3.4.1 Atualização dos Pesos pelo Método do Gradiente ... 43

3.4.2 Visão Gráfica do Processo de Aprendizado ... 45

(7)

4 Redes MLP ... 49

4.1 Arquitetura ... 51

4.1.1 Funcionalidade ... 53

4.2.1 Otimização da Topologia Utilizando Pruning ... 56

4.2 Treinamento de Redes MLP ... 59

4.2.1 Derivação das Fórmulas ... 62

4.2.2 Dificuldades no Treinamento ... '.. 67 4.3 Variações do Back-Propagation ... 70 4.3.1 Algoritmo Quickprop ... 70 4.3.2 Algoritmo Rprop ... 71 4.4 Aplicações ... 72 4.5 Conclusão ... 73 4.6 Exercícios ... 73 5 Memórias Matriciais... 77 5.1 Introdução ... 77

5.2 Modelo Não-linear de Willshaw ... 78

5.2.1 Um Exemplo de Utilização da Memória de Willshaw ... 80

5.2.2 Capacidade de Recuperação de Informação ... 80

5.3 Modelo Matricial Linear ... 81

5.4 Exemplo de Utilização da Memória Matricial Linear ... 82

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

5.5 OLAM ... 85

5.5.1 Exemplo de Utilização da OLAM ... 86

5.6 Modelo de Hopfield ... 87

5.6.1 Exemplo de Operação da Rede de Hopfield ... 90

5.6.2 Minimização de Energia ... 93 5.6.3 Capacidade de Armazenamento ... 95 5.7 Conclusão ... 97 5.8 Exercícios ... 98 6 Redes Self-Organizing ... 99 6.1 Redes ART ... 102

6.1.1 Arquitetura Básica da Rede ART 1 ... 103

6.1.2 Treinamento ... 105

6.1.3 Outros Modelos ART ... 111

6.1.4 Aplicações ... 112

6.2 Redes SOM ... 112

6.2.1 Arquitetura ... 115

6.2.2 Melhorando o Desempenho da Rede ... 116

6.2.3 Treinamento ... 117

6.2.4 Exemplo de Categorização de Dados com SOM ... 120

6.2.5 Algoritmo LVQ ... 125

6.2.6 Aplicações ... 126

6.3 Conclusão ... 127

6.4 Exercícios ... 127

i Sistemas Neurais Híbridos ... 129

7.1 RNAs e Algoritmos Genéticos ... 131

7.1.2 Representação ... 133

7.1.3 Seleção ... 134

7.1.4 Reprodução ... 136

7.1.5 Parâmetros Genéticos ... 139

7.1.6 Aplicações ... 140

7.1.7 Projeto Evolucionário de RNAs ... 141

7.1.8 Representação das Redes ... 143

7.1.9 Operadores Genéticos ... 146

7.2 Combinação de RNAs com RBC ... 147

7.2.1 Raciocínio Baseado em Casos ... 147

7.2.2 Histórico de RBC ... 148

7.2.3 Funcionamento de um Sistema de RBC ... 149

7.2.4 Representação de Casos ... 150

7.2.5 Indexação de Casos ... 151

7.2.6 Armazenamento e Recuperação de Casos ... 151

7.2.7 Adaptação de Casos ... 152

7.2.8 Avaliação e Reparo de Casos ... 152

7.2.9 Integrando RNA com RBC ... 152

7.3 Extração de Conhecimento ... 155 7.3.1 Método EN ... 159 7.3.2 Algoritmo Trepan ... 159 7.3.3 Método DEDEC ... 159 7.4 Conclusão ... 160 7.5 Exercícios ... 160

8 Redes Neurais sem Pesos ... 161

8.1 Introdu ção ... 161 8.2 Nodos RAM ... 163 8.3 Discriminadores ... 167 8.3.1 Multidiscriminadores ... 168 8.3.2 WISARD ... 169 8.4 Nodos PLN ... 17 1 8.5 Modelo de Nodo MPLN ... 174 8.6 Nodo GSN ... 175 8.7 GRAM ... 182 8.8 GNU ... ... 184 8.9 pRAM ... 185 8.10 SDM ... 186 8.11 ALN ... 187 8.12 ADAM ... 189 8.13 Estudos Comparativos ... 189 8.14 Conclusão ... 191 8.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

(8)

9.2.2 Redes CasCor ...... ... ... 203

9.2.3 Redes Upstart ... 204

9.2.4 Redes Tiling ... 205

9.2.5 Redes Tower e Pyramid ... 205

9.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 ... 207 208 209 209 210 211 214 215 10 Aplicações ... 217 10.1 Introdução ... 217

10.2 Modelamento e Controle Neural ... 218

10.2.1 Modelamento e Identificação de Sistemas ... 219

10.2.2 Controladores Neurais ... 221

10.2.3 Treinamento On-line em Identificação e Controle ... 225

10.3 Predição ... 227

10.4 Otimização ... 228

10.5 Processamento de Imagens e Sinais ... ... 231

10.6 Classificação ... 232

13.7 Conclusão ... 234

Bibliografia ... 237

Redes Neurais Artificiais:

Teoria e Aplicações

(9)

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 do cérebro humano. Por não ser baseada em regras ou programas, a computação neural 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 destas redes é 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 forma conto estes são representados internamente pela rede e o paralelismo natural inerente à arquitetura das RNAs criam a possibilidade de um desempenho superior 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

(10)

automatica-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 rede aprender através de um conjunto reduzido de exemplos e posteriormente dar respostas coerentes para dados não-conhecidos , é uma demonstração de que a capacidade das RNAs vai muito além do que simplesmente mapear relações de

entrada e saída. As RNAs são capazes de extrair informações não-apresentadas de forma explícita através dos exemplos. Não obstante, as RNAs são capazes de atuar como mapeadores universais de funções multivariáveis, com custo

com-putacional que cresce apenas linearmente com o número de variáveis. Outra característica importante é a capacidade de auto -organização e de

processa-mento temporal, que, aliada àquelas citadas anteriormente, faz das RNAs uma

ferramenta computacional extremamente poderosa e atrativa para a solução de

problemas complexos.

Histórico

O primeiro modelo artificial de um neurônio biológico foi fruto do trabalho pioneiro de Warren 11cCulloch e Walter Pitts em 1943 [11P43]. McCulloch, psiquiatra e neuroanatomista,- dedicou 20 anos à tentativa de representar um evento no sistema nervoso. Pitts, um matemático recém-graduado, juntou-se a ele em 1942. No trabalho publicado em 1943, "A Logical Calculus of the Ideas Immament 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étodos

de 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 em descrever 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 estudo somente 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 foi apresentado por Donald Hebb [Heb49], em 1949. Hebb mostrou como a

plasti-cidade da aprendizagem de redes neurais é conseguida. através da variação dos pesos de entrada dos nodos. Ele propôs uma teoria para explicar o

aprendiza-do em noaprendiza-dos biológicos baseada no reforço das ligações sinápticas entre noaprendiza-dos excitados. A regra de Hebb, como é conhecida a sua teoria na comunidade de RNAs, foi interpretada do ponto de vista matemático, e é hoje utilizada em

vários algoritmos de aprendizado . Mais tarde, Widrow e Hoff [WH60]

suge-riram uma regra de aprendizado, conhecida como regra de Widrow-Hoff, ou

regra delta, que é ainda hoje bastante utilizada . Esta, por sua vez, é baseada

no método do gradiente para minimização do erro na saída de um neurônio com 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 com

nodos MCP poderiam ser treinadas para classificar certos tipos de padrões. Rosenblatt descreveu uma topologia de RNA, estruturas de ligação entre os nodos e, o mais importante, propôs um algoritmo para treinar a rede para executar determinados tipos de funções. O perceptron simples descrito por Rosenblatt possui três camadas: a primeira recebe as entradas do exterior e possui conexões fixas (retina); a segunda recebe impulsos da primeira através de 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 de entrada em regiões distintas para cada uma das classes existentes. Como será visto mais adiante, o perceptron somente é capaz de classificar padrões que sejam linearmente separáveis. Inicialmente, a saída da rede é aleatória, mas, pelo ajuste gradual dos pesos, o perceptron é treinado para fornecer saídas de acordo com os dados do conjunto de treinamento. O que Rosenblatt buscava - e os "novos conexionistas" continuam buscando - era projetar RNAs que fossem capazes de fazer descobertas interessantes sem a necessidade de regras.

Em 1969, Minsky e Papert [MP69] chamaram a atenção para algumas tarefas que o perceptron não era capaz de executar, já que este só resolve problemas 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, conectividade e simetria, que são problemas não-linearmente separáveis. Estes são exem-plos de "problemas difíceis de aprender" (hard learning problems). Problemas difíceis de aprender formam uma classe grande de funções que não pode ser desprezada. O principal argumento de Minsky e Papert era de que o problema

(11)

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 existisse

um algoritmo de aprendizado que garantia a convergência para modelos com uma ú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 citados Igor Aleksander (redes sem pesos) na Inglaterra. Kuniliiko Fukushima (cogni-tron e neocogni(cogni-tron) 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. sem dú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 da Fí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 RNAs de 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 de interesse 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ção fí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 significativos na 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 outros

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 das

redes 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 tem até 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

(12)

Espaço

Siná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ão gerados. 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 paralelo de 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), uma função vital do sistema nervoso e central à sua capacidade computacional. O corpo, por sua vez, combina os sinais recebidos, e, se o valor resultante for acima do limiar de excitação do neurônio, um impulso elétrico é produzido e propagado através do axônio para os neurônios seguintes.

Há uma diferença de potencial (em volts) entre o interior e o exterior do neurô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ássio dentro 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 de ação (impulso nervoso), é preciso que os impulsos das sinapses reduzam este ní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ção ao exterior. Esta inversão de polaridade faz com que o impulso nervoso se propague pelo axônio até suas conexões sinápticas (Figura 1.2). Quando o impulso chega ao terminal de um axônio, os canais controlados por tensão se abrem. Isto libera as moléculas neurotransmissoras para dentro da clave siná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 acordo com o tipo de neurotransmissor liberado, a sinapse poderá ser inibitória ou excitatória. A contribuição de todos os nodos pré-sinápticos na polarização do 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, medido pelo corpo da célula em um pequeno intervalo de tempo. Depois de gerar um impulso, o neurônio entra em um período de refração (período em que o axônio não pode ser novamente estimulado), durante o qual retorna ao seu potencial de 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

(13)

+40m V

Tempo

-50m V

-70mV

Disparo 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 serem inibitó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ção do 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 é obtida atravé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ção original do modelo 1\ICP, a função de ativação é dada pela função de limiar descrita 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 avaliano-dos ao mesmo tempo. Em sistemas biológicos, sabe-se que não existe 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 vamode-lor da próxima saída dos nodos biológicos depende 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;

(14)

+ry iffx>+ry

y = x iff lxl < +ry

-ry iffx <

-ry

A função passo, ilustrada na Figura 1.4c, é similar a uma função sinal no

sentido 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ários outros 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.4 ilustra graficamente quatro funções de ativação diferentes: a função linear, a funçã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 em uma faixa [-ry, +-y], e neste caso a função passa a ser a função rampa como mostra 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>0 y 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 definir várias funções sigmoidais. As funções sigmoidais são encontradas na construção de diversos modelos nas mais variadas áreas. Umas das funções sigmoidais mais importantes é 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 sua concepção, uma vez que ela restringe o tipo de problema que pode ser trata-do pela rede. Redes com uma camada única de notrata-dos 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 seguintes parâ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.

(15)

(2) feedback, ou cíclica -+ a saída de algum neurônio na i-ésima camada da

rede é usada como entrada de nodos em camadas de índice menor ou igual a i (Figura 1.5 d, e).

(a) (c)

X

X3L x4 (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 alguma entrada 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 da

rede não pode ser usada como entrada de nodos em camadas de índice menor 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 à sua importâ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, perceptron de 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 RNAs do tipo perceptron inulticamadas. Redes perceptron multicamadas, do origi-nal Multilayer Perceptron (MLP), são RNAs que apresentam pelo menos unia

(16)

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 alál-goritmo Backpropagation [RHW86] e suas variações.

No quinto capítulo, serão abordados os principais modelos de memórias matriciais 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ós apresentar as principais características destas redes, duas representantes desta classe, 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 origens deste modelo seguido, das definições dos modelos RAM, Discriminadores, PLN, MPLN, GSN, GRAM, GNU, pRAM, SDM, ALN, ADAM. O capítulo também inclui um estudo comparativo entre RNAs convencionais e RNSPs, conclusão e 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 abordagens utilizadas 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 que formarã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 sido utilizadas 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 escolhidas foram 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 exemplos e fazer interpolações e extrapolações do que aprenderam. No aprendizado conexionista, não se procura obter regras como na abordagem simbólica da Inteligência Artificial (IA), mas sim determinar a intensidade de conexões en-tre neurônios. Um conjunto de procedimentos bem-definidos para adaptar os parâmetros de uma RNA para que a mesma possa aprender uma determinada função é chamado de algoritmo de aprendizado. Como era de se esperar, não há um único algoritmo de aprendizado. O que temos é um conjunto de ferra-mentas representadas por diversos algoritmos, cada qual com suas vantagens e desvantagens. Estes algoritmos basicamente diferem pela maneira pela qual o ajuste dos pesos é feito.

A utilização de uma RNA na solução de uma tarefa passa inicialmente por uma fase de aprendizagem, quando a rede extrai informações relevantes de 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 um processo iterativo de ajuste de parâmetros da rede, os pesos das conexões entre as unidades de processamento, que guardam, ao final do processo, o conhecimento que a rede adquiriu do ambiente em que está operando. Uma definição geral do que vem a ser aprendizagem pode ser expressa da seguinte forma [MM70]:

Aprendizagem é o processo pelo qual os parâmetros de uma rede neural são ajustados através de uma forma continuada de estímulo pelo ambiente no qual a rede está operando, sendo o tipo específico

(17)

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

Professor

Saída

Diversos métodos para treinamento de redes foram desenvolvidos, podendo ser agrupados em dois paradigmas principais: aprendizado supervisionado e aprendizado 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ão estudados, juntamente com vários mecanismos de aprendizado encontrados na literatura: correção de erros. aprendizado hebbiano, modelo de Linsker, regra de Oja. regra de Yuille e modelo de Kohonen.

2.2 Aprendizado supervisionado

Este método de aprendizado é o mais comum no treinamento das RNAs, tanto de neurônios com pesos como de neurônios sem pesos. É chamado de

aprendiza-do supervisionaaprendiza-do 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ída fornecidos. 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ída corrente (calculada) comparada com a saída desejada, recebendo informações do 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 pesos das 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 uma soluçã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 custo a 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 conhecidos de algoritmos para aprendizado supervisionado são a regra delta [WH60] e a sua generalização para redes de múltiplas camadas, o algoritmo

backpropaga-tion [RHW86].

Entrada

RNA

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. esta deve 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:

(18)

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

t:

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. . Esta expressã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á mostrado também serem elas equivalentes à Equação 2.1. A dedução destas equações envolve a minimização da soma dos erros quadráticos das saídas, conforme apresentado na Equação 2.2:

k

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

i=o

onde k é o número de nodos de saída da rede, di é a saída desejada para o nodo i, 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ática dos 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. Neste

caso, a superfície do erro poderá ter, além do mínimo global, um ou mais mínimos locais.

Em ambas as situações, o objetivo deste método de aprendizado é partir de um ponto arbitrário da superfície movendo-se até o mínimo global. Na primeira situação só existe um único mínimo global, já que se trata de uma superfície de erro quadrática, facilmente atingido a partir de qualquer ponto inicial sobre a 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 levar a rede a se estabilizar em um mínimo local indesejado. Apesar disso, existem té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 entre os dados de entrada, mas isto será objeto de estudo dos capítulos seguintes.

Meio externo

Estado do

meio externo 1

RNA

Resposta

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á um professor ou supervisor para acompanhar o processo de aprendizado. Este método está ilustrado na Figura 2.2. Apesar da semelhança entre o apren-dizado supervisionado e o aprenapren-dizado dos seres humanos, muitos dos sis-temas biológicos ocorrem através de aprendizado não-supervisionado, como por exemplo 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ário do aprendizado supervisionado , cujo conjunto de treinamento possui pares de entrada 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-se nela uma habilidade de formar representações internas para codificar carac-terísticas da entrada e criar novas classes ou grupos automaticamente. Este tipo de aprendizado só se torna possível quando existe redundância nos dados de entrada . Sem redundância seria impossível encontrar quaisquer padrões ou características dos dados de entrada.

A estrutura do sistema de aprendizado não-supervisionado pode adquirir uma variedade de formas diferentes. Ela pode, por exemplo, consistir em uma camada de entrada, uma camada de saída, conexões feedforward da entrada para a saída e conexões laterais entre os neurônios da camada de saída. Um outro exemplo é uma rede feedforward com múltiplas camadas, em que a livre organização procede na base de camada por camada. Nestes dois exemplos, o processo de aprendizado consiste em modificar repetidamente o peso sináptico de 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.

(19)

2.3.1 Aprendizado liebbiano

Os resultados obtidos por Hebb [Heb49] motivaram os primeiros métodos de aprendizado 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 ativados assincronamente, a sinapse será enfraquecida ou mesmo eliminada. Em outras palavras, se o neurónio pré-sináptico tiver grande influência na ativação do neurô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 pode analisar 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 sinais

contínuos que produz modificações sinápticas locais que são entradas es-pecíficas. É a partir do mecanismo local que sinapses hebbianas efetuam o 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é e pós-sinápticas.

• Mecanismo correlacional ou conjuncional: a sinapse hebbiana pode ser

chamada 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 correlacional porque unia correlação entre estas mesmas atividades também é suficiente para gerar mudanças.

Pode-se expressar o postulado de Hebb em termos matemáticos a partir da seguinte 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 aprenapren-dizado não-supervisionado, já que não existe supervisor externo para verificar a qualidade da 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 abordagem de aprendizado baseada na regra de Hebb [Heb49], estas redes têm mostrado comportamento semelhante ao obtido pelo sistema visual humano. Assim como os nodos dos primeiros estágios do sistema visual, o modelo de Linsker, unia vez 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.

(20)

yj(t) - a1 + xi(

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 dos nodos 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 dos pesos de cada nodo n j para cada padrão de entrada é definido pelos valores das 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 da Equação 2.5 após várias apresentações e utilizar a Equação 2.4 para obter a taxa 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 N

wij = 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. Uma possível solução é a renormalização (wí = awi) de todos os pesos após cada atualizaçã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 a necessidade de normalização. A regra de Oja possui a forma apresentada na Equação 2.8:

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

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

Esta regra é bem semelhante à de aproximação estocástica, e na realidade pode 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 Hebb com o objetivo de limitar os pesos, e Linsker restringiu os pesos wi para o intervalo 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 regra de Oja, mas modificando Iiwil para assumir o valor amor [HKP91]. Este mé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 de informaçã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 de entrada, fazer com que as unidades de saída disputem entre si para serem ativadas. 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

(21)

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 estar ligadas 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 das outras 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 como

winner 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á maior probabilidade de ficar ativa na próxima repetição do padrão.

Um problema neste algoritmo é que uma unidade de saída pode se tornar dominante e ficar ativa todo o tempo, podendo captar para si todo o espaço de entradas. 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 alguma outra, 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 entrada

j com a unidade ativa, xj é o valor do j-ésimo bit de entrada. M é o número

de 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 unidade de 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 supervisionaaprendiza-do. A principal diferença entre o aprendizaaprendiza-do supervisionaaprendiza-do clássico e o aprendizado por reforço é a medida de desempenho usada em cada uni 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 única informaçã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 e erro 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 um animal, 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 é seguida de estados satisfatórios, então a tendência do sistema de produzir esta ação particular é reforçada. Se não for seguida de estados satisfató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.

(22)

Crítico

Reforço/Penalidade

RNA

Açã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. Este

feedback, que é um simples sinal de reforço ( sim/não), é apenas uma avaliação

do desempenho da rede, e não fornece qualquer informação instrutiva de como proceder para melhorar o desempenho. Muitas vezes, este método de apren-dizado é chamado aprenapren-dizado com crítica em vez de aprenapren-dizado 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 por reforço:

• Classe I: No caso mais simples, o sinal de reforço é sempre o mesmo para um dado par de entrada-saída. Com isto existe um mapeamento definido para 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 de entrada são escolhidos aleatoriamente ou pelo ambiente, sem, no entanto, nenhuma referência às saídas anteriores. Um representante para esta classe é a Função de Avaliação, como descrito em [Hay94].

• Classe IL Uma extensão comum é para um ambiente estocástico. Aqui

um par de entrada-saída determina apenas a probabilidade de um reforço positivo. 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 desta classe é o Método de Diferença-Temporal [Sut88].

2.5 Conclusão

Neste capítulo foram apresentados os principais métodos de aprendizado e vários mecanismos de aprendizado encontrados na literatura. No decorrer do capí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-supervisiosupervisio-nado.

2. Qual a diferença entre aprendizado supervisionado e aprendizado por 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 descrita pela Equação 2.4 representam dois métodos diferentes de apren-dizado. Listar as características que distinguem estas regras uma da outra.

27 26

(23)

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 ao modelo 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 do total 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 abordadas inicialmente através da descrição do algoritmo de treinamento por correção de erros descrito por Rosenblatt [Ros62]. Será também demonstrado o teorema de convergência do perceptron, que mostra que o algoritmo de treinamento sempre 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á descrito o modelo Adaline proposto por Widrow e Hoff [\VH60]. Este modelo também

(24)

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 pelo fato de que o erro de saída é calculado em relação à sua saída linear, e não em relação à saída não-linear, como no perceptron e na maioria dos algoritmos de treinamento de RNAs.

3.2 Portas de limiar

As portas do tipo limiar (threshold gates) [Mur71] podem ser divididas em três tipos: linear , quadrática e polinomial. A função executada por cada uma delas é basicamente a mesma : comparação da soma ponderada das entradas com um valor de limiar (threshold). Caso a soma exceda o limiar, a saída é ativa-da, permanecendo desativada em caso contrário. No entanto, estes modelos diferem entre si pela complexidade com que seus pesos são calculados. Quanto mais complexos os termos associados a cada um dos pesos, mais complexas as superfí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ão descritas 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 forma

semelhante ao nodo MCP, conforme mostrado na Figura 3.1 e em sua descrição formal 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 por meio de uma reta (ou um hiperplano para o caso n-dimensional). A questão da 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ão ser descrita na forma geral da equação de uma reta onde x2 = f (xl ), conforme mostra a Equação 3.2. Portanto, a superfície de decisão de uma porta de limi-ar linelimi-ar está restrita a uma reta, ou um hiperplano plimi-ara o caso n-dimensional. A Figura 3.2 mostra a solução para o problema do E lógico através de uma porta 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 limiar linear. 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 a valores binários, tem-se que y : {O, 1}" {O. 1} para w E R". Apesar de

Referências

Documentos relacionados

da lesão na orelha interna e isto pode alterar o senso da posição da cabeça destas crianças, tornando-as mais sus- ceptíveis ao surgimento de alterações na

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

Esta realidade exige uma abordagem baseada mais numa engenharia de segu- rança do que na regulamentação prescritiva existente para estes CUA [7], pelo que as medidas de segurança

Através das observações realizadas em campo, buscamos enfatizar de forma simples a perspectiva dos conselhos escolares como peça essencial para o desenvolvimento do trabalho

Embora o momento ideal para obtenção de sementes de alta qualidade, seja logo após a maturidade fisiológica, a alta umidade da semente e da própria planta, associada ao

Traçar um perfil das mulheres trabalhadoras não trata apenas de definir características dessas mulheres, mas também de compará-las aos homens trabalhadores, para

Contudo, não é possível imaginar que essas formas de pensar e agir, tanto a orientada à Sustentabilidade quanto a tradicional cartesiana, se fomentariam nos indivíduos

Se os “crews” (tripulações, em inglês, gíria que designa os grupos que se reúnem para pichar) podem ser identificados àqueles grupos marginais (que Lefebvre diz serem