Introdução às Redes Neurais Artificiais - Apostila

Embed Size (px)

Citation preview

Indroduo `s ca a Redes Neurais ArticiaisJorge M. BarretoLaboratrio de Conexionismo e Cincias Cognitivas o e UFSC -Departamento de Informtica e de Estat a stica 88040-900 - Florianpolis - SC o

e-mail: [email protected]

4/2002 Uma verso preliminar deste texto foi apresentada na Escola de Computaao da Regio a c a Sul em 1997

1

Redes Neurais Articiais

2

Sumrio a1 Redes Neurais e Inteligncia Articial e 1.1 Alguns Fatos Histricos das Redes Neurais . . . . . . . . . . . . . . . . . . . . . . o 1.2 Que Esperar da IAC? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Fundamentos Biolgicos o 2.1 O Sistema Nervoso . . . . . . . . . . . . 2.2 Descobrimento de Neurnio . . . . . . . o 2.2.1 Organizaao geral . . . . . . . . c 2.2.2 Potencial de Ao . . . . . . . . ca 2.2.3 Transmisso da Informaao entre a c 3 Vocabulrio Bsico a a 3.1 Modelos de Neurnios . . . . . . . o 3.1.1 Modelo de McCulloch-Pitts 3.1.2 Modelo Geral de Neurnio . o 3.2 Caracterizao de RNA . . . . . . ca 4 Topologias das RNAs 4.1 Redes diretas (Feedforward) 4.2 Redes com ciclos . . . . . . 4.3 Redes simtricas . . . . . . e 4.4 O que as RNAs no so! . . a a 6 6 7 10 11 11 11 12 13 13 13 14 14 16 17 19 20 21 22 22 23 23 23 24 24 24 25 27 28 29 29 30 30

. . . . . . . . . . . . . . . . . . . . . . . . Neurnios o

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

5 Aprendizado 5.1 Aquisio do Conhecimento: Aprendizado . . . . . . . . . . . . ca 5.1.1 Classicaao quanto ` Independncia de quem Aprende c a e 5.1.2 Classicaao Segundo Retroao do Mundo . . . . . . . c ca 5.1.3 Classicaao quanto ` Finalidade do Aprendizado . . . c a 5.2 Regras de Aprendizado Conexionistas . . . . . . . . . . . . . . 5.2.1 Aprendizado Hebbiano . . . . . . . . . . . . . . . . . . . 5.2.2 Regra Delta . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.3 Retropropagao . . . . . . . . . . . . . . . . . . . . . . . c 5.2.4 Aprendendo com a Natureza . . . . . . . . . . . . . . . 5.2.5 Aprendizado Competitivo . . . . . . . . . . . . . . . . . 5.2.6 Aprendizado Reforado . . . . . . . . . . . . . . . . . . c 5.2.7 Aprendizado Aleatrio . . . . . . . . . . . . . . . . . . . o 5.2.8 Aprendizado Evolutivo . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

Redes Neurais Articiais 6 Mquina de Resolver Problemas a 6.1 Tipos de Computadores . . . . . . . . . . . . . . . . . . 6.2 Teoria de Problemas . . . . . . . . . . . . . . . . . . . . 6.3 O Computador na Resoluao de Problemas . . . . . . . c 6.4 Equivalncia de Computabilidade . . . . . . . . . . . . . e 6.5 Pontos de Dvida . . . . . . . . . . . . . . . . . . . . . . u 6.6 No Equivalncia de Complexidade . . . . . . . . . . . . a e 6.7 Alguns Resultados Sobre Complexidade de RNA . . . . 6.8 Aprendizado de RNA como Paradigma de Programaao c 6.9 Um Pouco de Ficao . . . . . . . . . . . . . . . . . . . . c 7 Aplicaoes das RNAs c 7.1 Reconhecimento de Padres . . . . . . . . . . . . . . . o 7.1.1 Em que Consiste o Reconhecimento de Padres o 7.1.2 Reconhecimento de Padres como Classicador o 7.1.3 Principais Aplicaoes . . . . . . . . . . . . . . . c 7.1.4 Reconhecimento de Caracteres . . . . . . . . . 7.1.5 Reconhecimento de Faces . . . . . . . . . . . . 7.2 Sistemas Especialistas Conexionistas . . . . . . . . . . 7.2.1 SE Conexionistas . . . . . . . . . . . . . . . . . 7.2.2 SE usando Redes Diretas . . . . . . . . . . . . 7.2.3 SE implementados com BAM . . . . . . . . . . 7.3 Controle de Processos . . . . . . . . . . . . . . . . . . 7.3.1 Controle Neural . . . . . . . . . . . . . . . . . 7.3.2 Topologias de Controle . . . . . . . . . . . . . . 7.3.3 Malha Aberta . . . . . . . . . . . . . . . . . . . 7.3.4 Controle com Retroao . . . . . . . . . . . . . ca 7.3.5 Modelos Internos . . . . . . . . . . . . . . . . . 7.4 Sries Temporais . . . . . . . . . . . . . . . . . . . . . e 7.5

3 30 30 31 32 33 35 35 36 37 38 38 39 39 39 40 40 41 41 41 41 42 43 43 43 43 44 44 45 45 46 46 47 47 47 48 48

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

Monitoramento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8 Implementao ca 8.1 Simulaao de RNA . . . . . . . . . . . . . . . . . . c 8.2 Implementaes por Circuitos . . . . . . . . . . . . co 8.2.1 Implementaao da Sinpse . . . . . . . . . . c a 8.2.2 Implementaao do Neurnio . . . . . . . . . c o 8.2.3 Implementaao do Aprendizado . . . . . . . c 8.2.4 Implementaoes Digitais versus Analgicas c o

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

Redes Neurais Articiais 9 Ep logo Referncias bibliogrcas e a

4 49 51

Redes Neurais Articiais .

5

Redes Neurais Articiais J. M. BarretoResumo

Redes neurais articiais podem ser consideradas como metodologia de resolver problemas caracter sticos da inteligncia articial. Aps apresentao e o ca de alguns fatos histricos e dos fundamentos biolgicos so apresentados os o o a conceitos de neurnio e rede neural articial. Sendo a capacidade de apreno der por exemplos a grande motivadora do uso de redes neurais, os principais paradigmas de aprendizado so apresentados. Segue-se uma comparao das a ca possibilidades destas redes na resoluo de problemas dando-se uma viso de ca a computabilidade e complexidade em termos de redes neurais. Finalmente so a apresentadas alguns campos de aplicao e como so atualmente estas redes ca a implementadas.

Redes Neurais Articiais

6

1

Redes Neurais e Inteligncia Articial e

Pode-se dizer que redes neurais articiais consistem em um modo de abordar a soluo de probleca mas de inteligncia articial. Neste caso, em lugar de tentar programar um computador digital e de modo a faz-lo imitar um comportamento inteligente (saber jogar xadrez, compreender e e manter um dilogo, traduzir l a nguas estrangeiras, resolver problemas de matemtica tais como a se encontram nos primeiros anos dos cursos de engenharia, etc.) procura-se construir um computador que tenha circuitos modelando os circuitos cerebrais e espera-se ver um comportamento inteligente emergindo, aprendendo novas tarefas, errando, fazendo generalizaes e descobertas, co e frequentemente ultrapassando seu professor. Da mesma forma, estes circuitos neurais articiais podero se auto-organizar, quando apresentados a ambientes diversos, criando suas prprias a o representaes internas e apresentar comportamentos imprevis co veis. E, melhor ainda, (ou pior) ter um comportamento que nem sempre pode-se prever e compreender, tal como hoje no a compreendemos mecanismos do nosso prprio crebro. o e Fico cient ca ca? No! Trata-se sim de nova tecnologia que depois de um tempo de latncia, a e emerge encontrando aplicaes concretas, algumas das quais sero mencionadas mais adiante. co a

1.1

Alguns Fatos Histricos das Redes Neurais o

O primeiro esforo conjunto para estudar inteligncia articial (IA) foi o encontro no Darthc e mouth College, em 1956. No livro publicado a seguir [83] com o t itulo de Automata Studies, o primeiro artigo tratava de redes neurais como um paradigma da arquitetura computacional Pode-se dizer que a nasceram simultaneamente os dois paradigmas da inteligncia articial: e simblica e conexionista. o Na IAS (Inteligncia Articial Simblica), o comportamento inteligente global simulado, e o e sem considerar os mecanismos responsveis por este comportamento. Na IAC (Inteligncia a e Articial Conexionista) acredita-se que construindo mquina que imite a estrutura do crebro a e ela apresentar inteligncia. Progressivamente as duas correntes para IA separaram-se, e as a e pesquisas em redes neurais (corrente conexionista) andaram lentamente enquanto a corrente da manipulao simblica se acelerou. ca o E interessante notar que um motivo para esta separao foi o livro de Minsky & Papert [71]. ca Este livro, entretanto, constitui um dos primeiros estudos sobre a complexidade do problema e a correspondente capacidade das redes neurais para resolve-lo: uma perceptron de uma unica camada incapaz de resolver o problemas linearmente no separveis. Possivelmente admine a a istradores dos USA, responsveis por distribuir fundos de pesquisa conclu a iram que o assunto no era interessante e cortaram os investimentos em redes neurais. Os anos que seguiram o a encontro Darthmouth foram anos de grande otimismo e o trabalho feito estava centralizado principalmente em pesquisas de laboratrio. Entretanto, o progresso em muitos destes camo pos caminhava lentamente. Um exemplo estava no campo da traduo automtica, onde os ca a

Redes Neurais Articiais

7

problemas apresentavam-se muito mais complexos que o esperado. Por outro lado, muito se estava aprendendo sobre linguagens adequadas para pesquisar em IA! Entretanto, necessrio e a no esquecer que em alguns outros campos de aplicao a IA obteve sucesso, e que esses seus a ca mritos no so mais considerados como pertencentes a IA. Como exemplos, temos o xadrez e a a (sendo considerado agora como um jogo, e no como um desao) e fazer matemtica simblica, a a o onde diversos programas comerciais fazem nos esquecer que so resultado de tcnicas de IA. a e

1.2

Que Esperar da IAC?

A IAS j deu muitos frutos, alguns atualmente to populares que nem so mais considerados a a a como produtos da IA. Exemplos so: jogo de xadrez, sistemas especialistas que fazem apoio ` a a deciso mdica, programas de matemtica simblica, etc. a e a o E a IAC? Pode-se dizer que se espera da IAC uma performance melhor que a da IAS em problemas mal denidos, onde falta o conhecimento expl cito de como realizar uma tarefa. Nestes o conhecimento dado atravs de exemplos. Alem disso, caracter e e sticas encontradas nos seres vivos so esperadas e diculdades em realizar tarefas de natureza intr a nsicamente algor tmicas. As principais caracter sticas so: a Degradao progressiva e qualidade. Signica que a performance de um sistema ca baseado na IAC diminue lenta e monotonicamente em presena de informaes falsas ou c co ausentes. Para ilustrar a idia, tome-se a pesquisa em uma base de dados em que se deseje e obter o nome de um artigo que seja do interesse de um certo leitor caracterizado por seu perl de interesse. Usando tcnicas conexionistas, na falta de um documento satisfazendo e aos requisitos da busca, um mais prximo ser escolhido. o a Racioc nio por Default. E outra propriedade intr nseca de RNA, coisa que requer bastante esforo se for usada a IAS. c Generalizao. Uma vez uma rede aprendendo um conceito ela capaz de funcionar com ca e conceitos similares que no foram aprendidos e isto sem esforo suplementar. Roisenberg a c [76], [77] estuda no caso de interceptar um objeto voador esta capacidade.

Racioc nio impreciso. Mas, o mais importante o racioc e nio impreciso, que pode ser tratado na IAS pela a lgica nebulosa. o Em resumo, a IAC se baseia no seguinte princ pio: Princ pio 1 Princ pio da Rplica: Se for constru um modelo sucientemente preciso do e do crebro, este modelo apresentar um comportamento inteligente. Se apenas uma pequena parte e a do crebro for reproduzida, a funo exercida por esta parte emergir do modelo. e ca a

Redes Neurais Articiais

8

Atualmente as duas abordagens esto cada vez mais sendo usadas juntamente, e `s duas se a a junta ainda uma outra fam de abordagens: as inspiradas na evoluo biolgica e constituem lia ca o 1 que sero abordados no captulo ??, os sistemas evolucionrio, tambm chamados evolutivos a e a base da Inteligncia Articial Evolucionria ou IAE. e a Tambm esta se baseia em um princ e pio conhecido com o nome de Seleo Natural, tirado ca dos trabalhos de Darwin [24] e que pode ser enunciado como: Princ pio 2 Princ pio da Seleo Natural: Dada uma populao de indivduos vivendo em ca ca um determinado ambiente, os mais aptos `s condies de vida oferecidas, tem mais probabilidade a co de se reproduzir do que os menos aptos. Desta forma, com o correr do tempo e aps geraes o co sucessivas a populao tende a car cada vez mais adaptada ao ambiente. ca Este paradigma permite a resoluo de problemas ser feita considerando vrias solues ca a co poss veis como os indiv duos da populao e o problema a resolver como o ambiente. A adaptao ca ca seria ento a qualidade da soluo permitindo consideraes sobre o quo inteligente seria a a ca co a soluo comparada com as demais [31]. ca Com o que foi dito poss dividir as fases da histria da IA2 com nos seguintes per e vel o odos [9]: 1. Epoca pr-histrica (Nesta poca nada se conhecia sobre os mecanismos da mente, nem e o e sob o prisma siolgico nem psicolgico e por esta razo vai at 1875 quando Camillo Golgi o o a e visualizou o neurnio.) o Objetivo: Criar seres e mecanismos apresentando comportamento inteligente. Metodologia e Conquistas: Mecanismos usando mecnica de preciso desenvolvida nos a a autmatos, mecanismos baseados em teares, etc. Apelo ao sobrenatural. o Limitaoes: Complexidade dos mecanismos, diculdades de construo. Insucesso dos c ca apelos ao sobrenatural. 2. Epoca Antiga (1875-1943) (Epoca em que a Lgica formal apareceu (Russel, Gdel, o o etc) bem como se passou a reconhecer o crebro como rgo responsvel pela inteligncia. e o a a e Hilbert imaginava um mundo paradis aco, em que tudo poderia ser axomatizado e reduzido ` Lgica. Entretanto, assim como o nal do sculo XIX viu o desmoronamento do a o e mundo Euclidiano, Gdel abalou o mundo de Hilbert com seu teorema da imcompletude o da aritmtica. Foi a poca em que, tal como os lsofos gregos zeram, so colocadas e e o a as bases da IAS e IAC, terminando com a publicao do trabalho de McCulloch e Pitts ca modelando o neurnio [66]): oNeste texto sero usados indistintamente e como sinnimos, os dois termos evolutivo e evolucionrio. a o a Note-se que os termos usados no se referem a per a odos da histria da humanidade e sim histria da IA. o o Assim, o tremo pr-histria nada tem a ver com a poca em que seres humanos no deixaram documentos e o e a escritos.2 1

Redes Neurais Articiais Objetivo: Entender a inteligncia humana. e

9

Metodologia e Conquistas: Estudos de psicologia e de neurosiologia. Nascimento da psicanlise. a Limitaoes: Grande distncia entre as conquistas da psicologia e da neurosiologia. c a 3. Epoca Romntica (1943-1956) (E o otimismo desordenado, que tal um jvem rapaz a o 3 , cr que tudo poss romntico a e e vel. Acaba com a reunio no Darthmouth College): a Objetivo: Simular a inteligncia humana em situaes pr-determinadas. e co e Metodologia e Conquistas: Inspirao na Natureza. Nascimento da Ciberntica. Primeiros ca e mecanismos imitando funcionamento de redes de neurnios. Primeiros programas imo itando comportamento inteligente. Limitaoes: Limitao das capacidades computacionais. c ca 4. Epoca Barroca (1956-1969) (Tudo fcil e ser conseguido. O livro Perceptrons [71] e a a mostra que nem tudo poss e vel. Alm disto, grandes fabricantes de computadores, intere essados em vender suas mquinas para aplicaes de escritrio, tiveram grande interesse a co o em desmisticar o computador que na poca chegou a ser chamado pelo grande pblico e u de crebro eletrnico. Estes dois fatos marcaram o m da poca.): e o e Objetivo: Expandir ao mximo as aplicaes da IA tanto usando a abordagem simblica a co o quanto a conexionista. Metodologia e Conquistas: Perceptron. Primeiros sistemas especialistas usando a abordagem simblica. Grandes esperanas da IAS. o c Limitaoes: Diculdades em tcnicas de aprendizado de redes complexas. c e 5. Epoca das Trevas (1969-1981) (Paralizao de quase todas as pesquisas em IA por falta ca de verbas. Acabou quando em outubro os japoneses anunciaram seus planos para a Quinta Gerao de Computadores e em outro ambiente Hopeld publica clebre artigo sobr redes ca e neurais. Uma caracter stica interessante que o renascimento de IA simblica se fez em e o ambiente de computao e o de redes neurais em um ambiente interdisciplinar. ca Assim como a Idade Mdia da Histria da humanidade viu orescer idias novas, esta e o e poca no foi de total trevas. Nasceram as primeiras aplicaes dos conjuntos nebulosos e a co de Zadeh [87] nascendo o controle inteligente com Mamdani [54, 64]. Alem disto os sistemas especialistas se rmaram com Shortlie [84]) Objetivo: Encontrar para a IA aplicaes prticas. co aPara satisfazer a uma minha aluna que teve a gentileza de ler e sugerir melhoras no texto, troquei a jvem o romantica por rapaz romntico evitando conotaao machista. a c3

Redes Neurais Articiais

10

Metodologia e Conquistas: Sistemas especialistas. Aplicaes principalmente em labco oratrios. Os computadores usados principalmente para aplicaes administrativas o co e numricas. Interesse dos fabricantes de computadores de desmisticar a mquina e a 4. levando a pouco interesse em IA Limitaoes: Interesses econmicos. c o 6. Renascimento (1981-1987) (Comeou a corrida para IA. Os resultados obtidos nas pocas c e anteriores atingiram o p blico em geral. Sistemas especialistas se popularizaram. Primeira u conferncia internacional em Redes Neurais marca o nal do per e odo. Note-se que redes neurais evoluiu independentemente da IA simblica.): o Objetivo: Renascimento da IA, simblica e conexionista. o Metodologia e Conquistas: Popularidade da linguagem Prolog, adotada pelos japoneses. Crescimento da importncia da Lgica. Proliferao de mquinas suportando a o ca a ferramentas para IA. Alguns poucos pesquisadores continuaram seus trabalhos em RNAs, Grossberg, Kohonen, Widrow, Hinton, etc. No nal do per odo, trabalhos de Hopeld, do grupo PDP, etc., criaram condies para a fase seguinte no que diz co respeito `s RNAs. a Limitaoes: a IAS e a IAC evoluindo separadamente. c 7. Epoca Contempornea (1987 - atual): (Logo no in do per a cio odo Gallant [36] publica seu clebre artigo sobre sistemas especialistas conexionistas. Foi o ponto de partida para a e unio das duas abordagens de IA, tornando a abordagem dirigida problemas a abordagem a atual. E a abordagem adotada neste trabalho. Objetivo: Alargamento das aplicaes das IAs. Uso em tomograa, pesquisas em campos co de petrleo, e bases de dados inteligentes. o Metodologia e Conquistas: Redes diretas como aproximador universal. Lgica nebuo losa usada largamente em ind strias para controle inteligente. Sistemas especialistas u se torna tecnologia dominada. Bons resultados em problemas mal denidos com sistemas usando hibridismo neural-nebuloso. Novo paradigma de programao: proca gramao conexionista. ca Limitaoes: Quem sabe???. Uma possibilidade uma grande expanso das bases de c e a dados inteligentes.

2

Fundamentos Biolgicos o

Supondo que grande parte dos leitores deste texto no esto mais familiarizados com conceitos a a biolgicos em que as redes neurais se inspiram, pequena introduo aqui feita. o ca e4

Um exemplo a referncia ` IA como sendo ignorncia atrevida, usual a t e e a a tulo de humor.

Redes Neurais Articiais

11

2.1 2.2

O Sistema Nervoso Descobrimento de Neurnio o

Um dos primeiros passos na neuroanatomia foi a descoberta do italiano Camillo Golgi em 1875 [50]. Ele encontrou um mtodo, aparentemente ao acaso, pelo qual apenas uma pequena poro e ca de neurnios so corados durante um tempo, e essas clulas so completamente coradas. Com o a e a esse mtodo poss e e vel isolar e observar neurnios individuais. Golgi foi contemporneo de o a Santiago Ramn y Cajal, um Espanhol, que dedicou sua vida usando o mtodo de Golgi para o e cada parte do sistema nervoso. Nesta poca as junes entre neurnios eram desconhecidas, e co o principalmente porque o mtodo de Golgi revelou um grande n mero de clulas isoladas mas e u e sem sugerir junes entre estas no sentido de formar uma rede. co Entretanto os estudos de Cajal apresentaram dois resultados principais. Primeiro Cajal adotou a noo de sistema nervoso, postulando sobre a comunicao entre as clulas pela sinapse. ca ca e A segunda foi de que a interconexo entre neurnios seria altamente espec a o e ca e estruturada. Ele descreveu diversas estruturas cerebrais. Isto fez com que as pesquisas se voltassem no a apenas para a estrutura dos neurnios mas tambm para o desconhecido campo das muitas o e estruturas neuronais. 2.2.1 Organizao geral ca

O sistema nervoso juntamente com o sistema endcrino proporciona muitas das funes de o co controle do corpo. O sistema nervoso de que o crebro faz parte, controla as reaes rpidas do e co a corpo, como uma contrao muscular (funo motora) e controla a velocidade e equilibra a taxa ca ca de secreo de muitas glndulas endcrinas. Partes do corpo que tm as funes controladas ca a o e co pelo sistema nervoso tem tempo de resposta relativamente rpido. O sistema endcrino, por a o outro lado, controla muitas funes do metabolismo do corpo e sua atuao mais lenta. co ca e Um neurnio Existem dois tipos principais o de clulas no crebro, os neurnios e a glia. e e o comum atribuir aos neurnios as principais E o funes cerebrais j que a funo da glia ainda co a ca tem muito a ser descoberto. Existem aproximadamente 1011 neurnios (um fator de 10 o e razovel como expectativa de erro) no crebro a e humano. Eles podem ser de diversos tipos. Um neurnio t o pico apresentado na gura ao lae do. O neurnio tem um corpo celular chamado o soma e diversas ramicaes. As ramicaes conhecidas como dendritos, conduzem sinais das co co extremidades para o corpo celular. Existe tambm uma ramicao, geralmente unica, chamada e ca axnio, que transmite um sinal do corpo celular para suas extremidades. As extremidades do o

Redes Neurais Articiais

12

axnio so conectadas com dendritos de outros neurnios pelas sinapses . Em muitos casos, um o a o axnio diretamente conectado com outros axnios ou com o corpo de outro neurnio. o e o o As sinpses tem um papel fundamental na memorizao da informao e so principalmente a ca ca a as do crtex cerebral e algumas vezes de partes mais profundas do crebro que armazenam esta o e informao. Pode-se imaginar que em cada sinpse, a quantidade de neurotransmissores que ca a podem ser liberados para uma mesma frequncia de pulsos do axnio representa a informao e o ca armazenada nesta sinpse. a Ora, pode-se imaginar, que seguindo um princ pio frequentemente vlido em biologia, o de a que o uso de um rgo favorece seu desenvolvimento, que cada vez que uma sinpse ativada e o a a e encontra ativado ou consegue ativar outro neurnio o nmero de neurotransmissores liberados o u aumenta na prxima vez que o neurnio for ativado. Isto representa um aumento da conexo o o a entre os dois neurnios. Este processo chama-se facilitao. Um neurnio tem de 1000 a 10000 o ca o sinpses e pode receber informao de perto de 1000 outros neurnios. a ca o O mecanismo de facilitao inspirou a conhecida Lei de Hebb: A intensidade de uma conexo ca a sinptica entre dois neurnios aumenta quando os dois neurnios esto excitados simultaneaa o o a mente. Note- se que a Lei de Hebb bsica de muitos algoritmos de aprendizagem de RNA. e a 2.2.2 Potencial de Ao ca

Existe dentro e fora da clulas concentraes diferentes de N a+ e K que provocam um ponto e co de equil brio de -85 milivolts, o interior da clula negativo com relao ao exterior. Qualquer e ca perturbao da membrana do neurnio provoca uma srie de modicaes que desaparecem ca o e co tambm rapidamente, e durante as quais o potencial se torna positivo durante um curto espao e c de tempo. A esta onda de variao de tenso chama-se potencial de ao. ca a ca A formao de um potencial de ao pode ser causado por uma estimulao eltrica, qu ca ca ca e mica, calor, etc. Um est mulo tem por efeito a destruio das propriedades dieltricas da membrana, ca e em particular as permeabilidades tanto ao sdio como ao potssio, que so aumentadas pero a a mitindo a difuso destes ions atravs da membrana. Aps um certo tempo as coisas voltam ao a e o normal devido a mecanismos de transporte ativo (transporte de molculas atravs da membrana e e celular contra o gradiente de concentrao e com uso de energia). Esta fase chama-se repolarca izao. Logo aps a repolarizao a membrana passa por um per ca o ca odo de tempo durante o qual ela no mais sensvel a outras perturbaes e que se chama perodo refratrio. a e co a Este per odo refratrio tem papel preponderante na transmisso de pulsos eltricos no axnio. a a e o Suponha que por uma razo qualquer aparea no axnio, perto do soma uma perturbao a c o ca provocando um potencial de ao. Ele age com relao ao trecho do axnio um pouco mais ca ca o longe do soma como uma perturbao, provocando o aparecimento de novo potencial de ao um ca ca pouco mais longe e assim por diante at a regio junto ` sinapse onde o potencial de ao tem por e a a ca efeito liberar molculas de neurotransmissores. Estes neurotransmissores liberados se difundem e no espao entre neurnios indo se colar na membrana de um outro neurnio, provocando uma c o o

Redes Neurais Articiais perturbao de membrana do outro neurnio, e o fenmeno continua. ca o o 2.2.3 Transmisso da Informao entre Neurnios a ca o

13

Quando o potencial de ao se propaga pelo axnio, chega a uma de suas terminaes. A ele ca o co provoca modicaes na membrana destas terminaes, as sinpses. Isto permite a liberao co co a ca de molculas, de vrios tipos com o nome genrico de neurotransmissores que se difundem no e a e espao entre o terminal do axnio e um outro neurnio, geralmente o terminal de um dendrito. c o o Molculas de neurotransmissor ao se colar ao dendrito provocam uma modicao na membrana e ca deste que acaba, algumas vezes, provocando um potencial de ao, outras vezes, dicultando ca seu aparecimento. Este potencial de ao, se criado, se propaga at o soma do neurnio que ca e o recebeu o sinal alterando sua frequncia de disparo. e Pode-se dizer portanto que a transmisso de informao entre neurnios depende do tipo de a ca o neurotransmissor e de sua abundncia no terminal sinptico e da sensibilidade da membrana a a dendr tica ` excitaes. Desta forma modicando a intensidade com que um neurnio capaz de a co o e excitar (ou inibir) um outro neurnio, depende de caracter o sticas sinpticas, e so estes valores de a a conexes que globalmente so responsveis pelo comportamento da rede de neurnios. Mudando o a a o valores destas conexes muda-se o comportamento da rede. E estas mudanas de comportamento o c representam um aprendizado da rede. Como o comportamento de uma rede neural depende diretamente dos valores de suas conexes o sinpticas, o estudo de redes neurais tem tambm o nome de Conexionismo. a e

3

Vocabulrio Bsico a a

A terminologia usada em redes neurais articiais apresenta variaes, principalmente em textos co em portugus. Neste trabalho usa-se a terminologia da Teoria de Sistemas tal como apresentada e em [8].

3.1

Modelos de Neurnios o

A construo de redes neurais articiais (RNAs) tem inspirao nos neurnios biolgicos e nos ca ca o o sistemas nervosos. Entretanto, importante compreender que atualmente as RNAs esto muito e a distantes das redes neurais naturais (RNNs) e freq entemente as semelhanas so m u c a nimas. Se verdade que o primeiro modelo de neurnio, proposto por McCulloch e Pitts em 1943 e o [66] tambm um modelo simples, cabe ressaltar que a inteno era de imitar a realidade e e ca biolgica, preocupao no compartilhada pelos muitos pesquisadores atuais. De fato, dois o ca a fatores diferentes motivam a pesquisa hoje em dia: O primeiro modelar o sistema nervoso com suciente preciso de tal modo a poder e a observar um comportamento emergente que sendo semelhante ao comportamento do ser

Redes Neurais Articiais vivo modelado, possa servir de apoio `s hipteses usadas na modelagem. a o O segundo construir computadores com um alto grau de paralelismo. e

14

O trabalho na modelagem do sistema nervoso comeou h um sculo aproximadamente. c a e Depois do trabalho de McCulloch and Pitts [66], Hebb [43], e Rosenblatt [78], muitos cientistas se interessaram pelo campo. O desejo de construir neurocomputadores mais recente [44]. e 3.1.1 Modelo de McCulloch-Pitts

Warren S. McCulloch era um siologista e conhecendo as ondas de potencial de membrana ele interpretou o funcionamento do neurnio como sendo um circuito binrio. Seu modelo [65] o a e portanto binrio e apresentado na gura 1. a eexcitao u1 excitao u2 excitao ui

w1 w2

Neurnio

wi

D

1

resposta y

excitao un

wn

Figura 1: Modelo de McCulloch e Pitts A entrada do neurnio tambm binria e as vrias entradas so combinadas por uma soma o e e a a a ponderada, produzindo a entrada efetiva do neurnio: on

entrada ef etiva =1

i ui

(1)

O resultado na entrada efetiva sofre um retardo D (algumas vzes este retardo desprezado e e tendo-se um neurnio esttico) e serve de argumento a uma funo chamada de funo de o a ca ca transferncia (neste caso de sa binria {0 1} para dar a resposta do neurnio. e da a o 3.1.2 Modelo Geral de Neurnio o

O modelo geral de neurnio mostrado na gura 2, sendo uma generalizao do modelo de o e ca McCulloch e Pitts. Neste modelo as entradas wi ui so combinadas usando uma funo , para produzir um a ca estado de ativao do neurnio que atravs da funo vai produzir a sa do neurnio (corca o e ca da o respondente ` freqncia de descarga do neurnio biolgico). Um valor auxiliar geralmente a ue o o e usado para representar uma polarizao, valor abaixo do qual a sa nula. ca da e

Redes Neurais Articiais

15

u1 u2 u3

w1 w2 w3 wn

x

y

un

Figura 2: Neurnio articial o Note-se que isso poderia tambm ser obtido por escolha adequada da funo , mas seria mais e ca dif de trabalhar. Note-se ainda que as conexes sinpticas so consideradas como externas ao cil o a a modelo do neurnio, tal como ocorre no sistema nervoso biolgico e no como fazendo parte do o o a neurnio, como usado por alguns autores. Se este detalhe pode ter pouca importncia aparente o a no estudo de uma RNA, proporciona a possibilidade de interpretar a matriz de conexes, chamao da matriz de conectividade como a matriz de pesos de um grafo, o grafo representativo da rede neural. Geralmente a soma das entradas. Algumas vezes o produto. Raramente uma outra e funo, se bem que isto seja poss ca vel. Geralmente costuma-se dar o nome conuncia ` combie a nao ponderada das entradas de um neurnio. A no linearidade do neurnio frequentemente ca o a o introduzida na funo tangente hiperblica,, em degrus. A Figura 3 mostra algumas funes e ca o a co comumente usadas.

f(x)

f(x) v +a

f(x)

v

x u u

x -a

x

Figura 3: No linearidades frequentemente usadas no modelo de neurnios de uma RNA. a o O neurnio formal um sistema dinmico por ter memria materializada pelo retardo (ou o e a o equao diferencial). Um neurnio esttico quando o valor de x e de y se referem ao mesmo ca o e a instante que as excitaes ou seja, o retardo nulo. O neurnio dito dinmico se para o clculo co e o e a a de x em um determinado instante necessrio o conhecimento de x em um instante anterior no e a

Redes Neurais Articiais

16

caso do neurnio ser a tempo discreto. o Por esta denio nota-se que o modelo de neurnio proposto por McCulloch e Pitts um ca o e sistema dinmico se o retardo D no for nulo. a a

3.2

Caracterizao de RNA ca

Informalmente uma rede neural articial (RNA) um sistema composto por vrios neurnios. e a o Estes neurnios esto ligados por conexes, chamadas conexes sinpticas. Alguns neurnios reo a o o a o cebem excitaes do exterior e so chamados neurnios de entrada e correspondem aos neurnios co a o o dos rgos dos sentidos. Outros tm suas respostas usadas para alterar, de alguma forma, o o a e mundo exterior e so chamados neurnios de sada e correspondem aos motoneurnios que so a o o a os neurnios biolgicos que excitam os m sculos. Os neurnios que no so nem entrada nem o o u o a a sa so conhecidos como neurnios internos. Estes neurnios internos ` rede tem grande da a o o a importncia e so conhecidos na literatura saxnica como hidden fazendo com que alguns a a o traduzam como escondidos. Os neurnios internos so importantes por vrios aspectos: o a a Importncia biolgica: Por corresponder a uma atividade do sistema nervoso que pode a o apresentar uma independncia de excitaes externas. Com efeito, se entre estes neurnios e co o houver ligaes formando ciclos, e considerando ainda um certo tempo de resposta de um co neurnio, aps cessar toda excitao exterior pode haver nestes neurnios internos uma o o ca o evoluo de um vetor representativo da excitao destes neurnios. Esta excitao pode ca ca o ca provocar uma evoluo durante um tempo relativamente longo e pode ser interpretada ca como uma metfora da mente, onde pensamentos vm e voltam, sem est a e mulo exterior. Importncia matemtica: Desde que se provou que sem estes neurnios imposs a a o e vel uma RNA resolver problemas classicados como linearmente no separveis. a a Para caracterizar uma RNA importante especicar os seguintes pontos5 : e Os componentes da rede: os neurnios: ex; estticos? dinmicos? o a a A resposta de cada neurnio: dicotmica? intervalo dos reais? o o O estado global de ativao da rede: vetor cujas componentes so as ativaes dos ca a co neurnios? o A conectividade da rede dada pelos valores de conexes sinpticas: que dene a o a topologia da rede. Como se propaga a atividade da rede: s ncrona? ass ncrona?5

Inspirado em Rumelhart & al. [80].

Redes Neurais Articiais Como se estabelece a conectividade da rede: aprendizado. O ambiente externo ` rede: esttico? dinmico? aleatrio? determin a a a o stico? Como o conhecimento representado na rede: localizado? distribuido? e

17

4

Topologias das RNAs

De forma a denir as Redes Neurais Articiais ns poderiamos, em princ o ipio, estabelecer (e provar) um teorema mostrando que elas se constituem em sistemas dinmicos, da mesma forma a que foi feito para os neurnios. Todavia, um problema surgiria aqui: nada seria dito acerca o dos pesos das conexes entre os diferentes neurnios da rede. Uma outra abordagem seria a de o o considerar uma rede neural como um sistema dinmico complexo, onde: a Denio 1 Um sistema dinmico complexo uma rede de sistemas interconectados. ca a e Da denio apresentada decorre que um sistema complexo pode ser representado por um ca grafo direcionado ou d grafo, onde os vrtices representam os sistemas componentes (subsise temas) e os arcos as interaes entre subsistemas. co Esta ser a abordagem utilizada aqui. No entanto, antes de desenvover estes conceitos, faza se necessrio apresentar alguns conceitos de Teoria de Grafos. Estes conceitos so baseados a a naqueles apresentados por Harary [41]. Nota: E importante observar que, considerando que, em princ pio, qualquer d grafo possa dar lugar a uma topologia de RNA, esta abordagem vem sendo utilizada em textos surgidos nos ultimos anos, como por exemplo [42], [52] entre outros. No entanto, De Azevedo [25] utilizou esta abordagem ainda em 1993. Denio 2 Um Grafo G consiste de um conjunto no vazio nito de vrtices V = vi juntaca a e mente com um conjunto no ordenado de arcos A conectando certos pares de vrtices. Cada par a e vi , vj de vrtices em V um arc0 de G, e o par vi , vj dito juntar vi e vj . e e e Denio 3 Um Grafo G Rotulado quando os p vrtices so distingu ca e e a veis uns dos outros por nomes ou rtulos. o Denio 4 Um Grafo G Arco Rotulado quando tambm os arcos so distinguveis um dos ca e e a outros por nomes ou rtulos. o Tendo estabelecido o que siginica Grafo, no nosso contexto, ns estamos prontos para o denir as Redes Neurais Artifciais. Denio 5 Uma Rede Neural Articial, RN A, um Sistema Dinmico Complexo represenca e a tado por um grafo arco rotulado em que cada vrtice um Neurnio Articial N A. e e o

Redes Neurais Articiais

18

Nesta denio, rtulos so, naturalmente, valores numricos. Eles correspondem aos valores ca o a e das conexes entre os diferentes neurnios. Todavia, eles podem ser interpretados, tambm, o o e como os valores fuzzy entre as conexes. Neste caso, eles devem pertencer a um conjunto, o que na maioria dos casos, o conjunto [0, 1] 6 . Ambas interpretaes so vlidas para nossos e co a a propsitos. Todavia, se ns escolhermos a segunda interpretao ns poder o o ca o amos repensar a denio de Grafos e, por conseqncia, a de Redes Neurais, conforme segue: ca ue Denio 6 Um Grafo Nebuloso um Grafo Arco Rotulado onde os rtulos so valores de um ca e o a conjunto nebuloso. Denio 7 Uma Rede Neural Nebulosa ou: ca e uma rede neural representada por um grafo nebuloso iu uma rede neural contendo ao mnenos um neurnio nebuloso. o

Tendo estabelecido denies precisas para Redes Neurais e Redes Neurais Fuzzy ns co o podemos denir diferentes tipos de redes. Isto feito atravs de escolhas particulares dos e e conjuntos e funes envolvidas na denio de Redes Neurais como Sistemas Dinmicos. Temco ca a se, por conseguinte: Denio 8 Uma Rede Neural Cont ca nua no Tempo uma rede neural denida em um subcone junto contnuo do eixo do tempo T = . Denio 9 Uma Rede Neural Discreta no Tempo uma rede neural denida em um subconca e junto discreto do eixo do tempo T = Z. Denio 10 Uma Rede Neural Invariante no Tempo ou Rede Neural Estacionria uma rede ca a e neural em que a funo de transio depende de um nico elemento de T e a funo de sada ca ca u ca independente de T . e Neste trabalho ns consideramos ambos os tipos de redes, cont o nuas e discretas. Todavia, todas so invariantes no tempo para permitir uma fcil tratabilidade matemtica. a a a Aqui uma questo surge. Relembremos a denio de automatum. Seguindo esta denio a ca ca um automatum um sistema dinmico discreto e invariante no tempo. A questo que surge e a a : Pertencem as RNA ` classe dos automata ? e a6

Outros intervalos de valores podem ser, tambm, considerados para conjuntos fuzzy. e

Redes Neurais Articiais

19

Alis, esta questo muito importante posto que os Computadores baseados em Instruo a a e ca 7 esto intrinsecamente ligados a Teoria de Automata. A resposta armativa. Pode ser (CBI) a e claramente provado que qualquer rede neural discreta e invariante no tempo um automatum. e Este resultado permite que o formalismo que usado para representar RNA e Computadores e baseados em Redes Neurais (CBRN) seja o mesmo daquele usado para representar CBIs. Este fato torna mais fcil o estudo da integrao das duas abordagens quando do desenvolvimento a ca de computadores h bridos. Nesta direo, um resultado surpreendente que qualquer automatum nito pode ser, ca e essencialmente, substitudo por uma RNA. A prova deste estabelecimento foi feita por McCulloch e Pitts [66]. Arbib apresentou, em [3], uma prova mais didtica. A partir destes resultados a e fcil mostrar as capacidades das RNA para memria e computao. a o ca At agora ns propusemos denies matemticas para NAs e RNAs. Estas denies e o co a co permitem o estudo de diferentes tipos particulares de RNAs como sistemas dinmicos. A a abordagem dinmica para RNA serve como um guia para o estudo da capacidade de memria e a o para formular idias no sentido de uma Teoria da Computabilidade adaptada a RNA. A seguir e sero apresentadas as topologias de RNAs que podem ser derivados de nossos modelos formais. a Nota: Faz-se necessrio dizer que algumas topologias particulares receberam maior ateno dos a ca pesquisadores e so conhecidas com nomes espec a cos.

4.1

Redes diretas (Feedforward)

Denio 11 Redes Diretas (Feedforward) so aquelas cujo grafo no tem ciclos. ca a a Freq entemente comum representar estas redes em camadas e, neste caso, so chamadas u e a redes em camadas. Neurnios que recebem sinais de excitao so chamados da camada de o ca a entrada, ou primeira camada. Neurnios que tm sua sa como sa da rede pertencem a o e da da camada de sa ou ultima camada. Neurnios que no pertencem nem a camada de entrada da o a nem a de sa so neurnios internos ` rede podendo se organizar em uma ou mais camadas da a o a internas (hidden layers). A gura ?? mostra uma rede direta com 3 camadas de neurnios. Observe que nesta gura o os neurnios so apresentados com os seus diversos elementos constituintes conforme a gura ??. o a Estas redes so atualmente as mais populares, principalmente por existirem mtodos de aprena e dizado bastante difundidos e fceis de usar. Um mtodo bastante usado, mas muito ineciente, a e e o backpropagation. Por esta razo alguns autores chegam mesmo a chamar, impropriamente, a este tipo de rede, de backpropagation. Alm disto, estas redes so capazes de aproximar, e a com maior ou menor preciso, dependendo do nmero de neurnios da rede, qualquer funo a u o ca no-linear. Entretanto, mesmo no caso de usarem neurnios dinmicos (equao diferencial de a o a ca7

Para saber mais dos conceitos de CBI e CBRN veja [5], [10] [25], etc

Redes Neurais Articiais

20

primeira ordem ou a uma diferena nita), tm uma dinmica muito limitada no podendo c e a a representar todos os sistemas dinmicos. aN4 u1 N9 N1 N5 N10 u2 N2 N6 N11 u3 N3 N7 N12 N14 y2 N13 y1

N8

Figura 4: Uma rede direta com 3 camadas de conexes o Com efeito, seja por exemplo, uma rede s ncrona de 4 camadas com neurnios denidos por o uma equao contendo um retardo. Neste caso, a rede se comportar como um ltro no-linear ca a a FIR de ordem 4, sendo sua aproximao linear um sistema com todos os polos na origem do plano ca Z no podendo aproximar convenientemente sistemas de resposta indicial de durao innita. a ca

4.2

Redes com ciclos

Denio 12 Redes com ciclos (ou com realimentao, ou com retroao, ou com feedback) ca ca ca so aquelas cujo grafo de conectividade contm, ao menos, um ciclo. a e Um exemplo bem conhecido de rede com ciclos a proposta por Hopeld [47]. e Denio 13 Redes recorrentes so aquelas que, alm de apresentarem ciclos, envolvem neurnios ca a e o dinmicos. a Por esta razo McCulloch chamou-as de networks with cycles, ou redes com ciclos. Duas a destas redes tm particular importncia: as redes propostas por Hopeld [47, 48] e as redes e a bi-direcionais, de Kosko [58], que podem ser usadas em um dos dois principais paradigmas de sistemas especialistas: treinamento com exemplos de uma rede direta e representao do ca conhecimento de modo localizado pelo uso de rede com ciclos, geralmente uma rede simtrica. e Com efeito, o mais popular paradigma usado na implementao de sistemas especialistas com ca redes neurais usa redes diretas e foi proposto por Gallant [36], existindo bastantes resultados neste dom nio [37]. Baseia- se no fato de que as redes diretas so aproximadores universais de a

Redes Neurais Articiais

21

funes. Assim, apresenta-se, na entrada da rede, os dados e ela , ento, treinada para a sa co e a da representar o parecer do sistema especialista. O funcionamento da RNA se torna uma metfora a de um ato reexo que, depois de aprendido, se repete inconscientemente. E este aspecto, que uma das foras do paradigma, pois pode ser largamente empregado, constitui-se, tambm, em e c e um dos seus pontos fracos, pois, tal como um ato reexo, difcil explicar o porqu do ato. e e Assim que, com o uso das redes diretas, existem diculdades em extrair explicaes de como e co 8. o sistema chegou a uma concluso a O segundo paradigma usa redes bidirecionais, caso particular das redes com ciclos, contendo neurnios dinmicos [27]. Neste caso, tanto os dados, como os poss o a veis pareceres do especialista so representados pela ativao de neurnios, o conhecimento sendo representado por valores das a ca o intensidades de conexes sinpticas. Uma consulta feita excitando neurnios representativos o a e o dos sintomas presentes no caso, deixando a rede evoluir at atingir um ponto de equil e brio. A excitao de algum (ou alguns) neurnios, representando pareceres, ser a resposta do sistema. ca o a Este segundo paradigma mais recente e ainda pouco explorado. Os principais pontos fracos e so: a - dif saber se a rede vai, ou no, parar em um ponto de equil e cil a brio; - o tempo correspondente ao transitrio da rede pode ser longo. o As principais vantagens so: a - Uso de representao de conhecimento localizada, facilitando extrao de explica ca caes; co - ausncia de mtodo de aprendizagem ; e e - transitrio da rede pode ser interpretado como metfora de racioc o a nio, podendo-se esperar deste paradigma, mais do que um simples ato reexo.

4.3

Redes simtricas e

Denio 14 Uma rede simtrica aquela cuja matriz de conectividade uma matriz simtrica. ca e e e e

Trata-se de um caso particular das redes com ciclos. Com efeito, os sistemas especialistas mencionados anteriormente e que usam redes com ciclos, usam redes simtricas. Isto foi feito e 9. para assegurar estabilidade do transitrio da rede oNote-se que no artigo de Gallant [36], sugestes de como extrair explicaoes so apresentadas. Mas dif o c a e cil usar estas sugestes em um caso geral. o 9 Pode ser mostrado que tal caso se trata de sistema discreto em que a aproximaao linear tem polos de mdulo c o menor que a unidade. Assim, conforme o teorema de Liapunov da estabilidade local [40] [39], o sistema ter, ao a menos, um ponto de equil brio estvel. a8

Redes Neurais Articiais

22

4.4

O que as RNAs no so! a a

Sim, as RNAs so inspiradas na redes neurais biolgicas (RNB). Mas at onde esta inspirao a o e ca usada? Na realidade, freq entemente esta inspirao muito limitada e as RNA so uma e u ca e a caricatura da realidade biolgica. o RNN no so circuitos digitais. O modelo apresentado por McCulloch-Pitts [66] usava a a sinais binrios. O neurnio biolgico expressa sua ativao pela freqncia que emite pulsos a o o ca ue e esta freqncia tem uma variao cont ue ca nua entre dois valores positivos. RNN no podem ter excitao negativa. Alguns modelos usam valores de excitao a ca ca negativa. RNN no so homogneas. As RNN no possuem todos os seus neurnios de mesmo a a e a o tipo como nas RNA, apenas em algumas regies existe uma certa uniformidade no tipo de o neurnios existentes nas RNN. o RNN no so circuitos s a a ncronos ou ass ncronos. Com efeito, as RNB so sistemas a a tempo cont nuo, logo no cabe a classicao de s a ca ncrono ou ass ncrono. Nem neurnios nem sinapses tem dois valores. Logo a semelhana com o spin do o c eletron no vlida [56]. a e a Circuitos cerebrais no so capazes de clculos recursivos. Isto consequncia a a a e e dos neurnios no serem sistemas discretos, levando a rede a no ser um autmato. Logo, o a a o equivalncia com problemas sol veis por funes recursivas no tem sentido biolgico. e u co a o Entretanto, os neurnios das RNAs fazem das RNAs sistemas equivalentes ` mquina de o a a Turing e portanto capazes de resolver funes recursivas. co

5

Aprendizado

Aprender o ato que produz um comportamento diferente a um est e mulo externo devido ` a excitaes recebidas no passado e de uma certa forma sinnimo de aquisio de conhecimento. co e o ca Em IA comum se falar de aprendizado pela mquina e aprender poder ser considerado como e a atributo fundamental de um comportamento inteligente. RNA possuem a capacidade de aprenderem por exemplos, e fazerem interpolaes do que co aprenderam. No aprendizado conexionista no se procura obter regras como na abordagem a simblica da IA, mas determinar a intensidade de conexes entre neurnios. Como o conhecio o o mento armazenado nas conexes, o uso de RNA est intimamente ligado ao que se chama de e o a conexionismo.

Redes Neurais Articiais

23

5.15.1.1

Aquisio do Conhecimento: Aprendizado caClassicao quanto ` Independncia de quem Aprende ca a e

Quanto ` Independncia de quem Aprende tem-se: a e Memorizao. ca Por ser contado. Por exemplos. Por analogia. Por explorao e descoberta. ca

As RNAs aprendem principalmente por uma mistura dos tres ultimos. 5.1.2 Classicao Segundo Retroao do Mundo ca ca

Um segundo modo de classicar o aprendizado pela presena ou ausncia de realimentao e c e ca expl cita do mundo exterior. Uma realimentao expl ca cita signica que em certos intervalos de tempo um professor assinala erros e acertos. No caso que que a realimentao no exca a e plcita o aprendizado em ausncia de professor. Costuma-se chamar estes dois casos de ensino e e supervisionado e no supervisionado. a Aprendizado Supervisionado Neste caso o professor indica explicitamente um comportamento bom ou ruim. Por exemplo, seja o caso de reconhecimento de caracteres e para simplicar seja reconhecer entre um A ou X. Escolhe-se uma rede direta, com dois neurnios na camada de saida, o uma ou vrias camadas internas e uma conjunto de neurnios na camada de entrada a o capaz de representar com a preciso desejada a letra em questo. Apresentam-se estas a a letras sucessivamente a uma retina articial constituida por uma matriz de elementos fotosens veis, cada um ligado a um neurnio de uma RNA direta (feedforward). Observao se qual dos dois neurnios de saida est mais excitado. Se for o que se convencionou o a representar a letra que for apresentada nada deve ser corrigido, caso contrario modica-se os valores das conexes sinpticas no sentido de fazer a saida se aproximar da desejada. o a Foi exatamente isto que fez Rosenblatt com o seu Perceptron. Como a cada exemplo apresentado uma correo introduzida depois de observar a saida da rede este um caso ca e e de ensino supervisionado. Aprendizado no Supervisionado quando para fazer modicaes nos valores das a e co conexes sinpticas no se usa informaes sobre se a resposta da rede foi correta ou o a a co no. Usa-se por outro lado um esquema, tal que, para exemplos de coisas semelhantes, a a rede responda de modo semelhante. Aprendizado no supervisionado se chama tambm a e

Redes Neurais Articiais

24

descobridor de regularidades ou redes auto-organizadas devido ` propriedade bsica de seu a a funcionamento. O ensino supervisionado tem atraido ateno de muitos pesquisadores. Uma motivao ca ca talvez seja o fato que o aprendizado supervisionado pode ser encarado como um problema de otimizao e usar ferramentas que j mostraram sua ecacidade, tanto em programao linear ca a ca e no linear. Basta para isso considerar o aprendizado com a minimizao do erro entre a saida a ca da rede e uma saida desejada. Entretanto pouco se usou at o momento em ferramentas de e otimizao de sistemas dinmicos para treinamento de RNAs, tais como Programao Dinmica ca a ca a e o Teorema do Mximo de Pontriagin. a 5.1.3 Classicao quanto ` Finalidade do Aprendizado ca a

Um terceiro modo de classicao quanto ` nalidade do aprendizado. Assim temos um auto ca e a associador, um hetero associador ou um detetor de regularidades. Em um auto-associador uma coleo de exemplos apresentado ` rede, a qual suposta ca e a e memorizar os exemplos. Depois, quando um destes exemplos for novamente apresentado de modo deteriorado supe-se que a rede restitua o original sem deteriorao. Neste caso o ca aprende-se a funcionar como um ltro. Um hetero-associador uma variante do auto-associador em que se memoriza um conjunto e de pares. O sistema aprende a reproduzir o segundo elemento do par mesmo que o primeiro se j apresentado de modo contendo pequenas alteraes. Este hetero-associador tambm a co e e conhecido como um reconhecedor de padres, onde o primeiro elemento apresentado o e elemento a reconhecer e o segundo um elemento do conjunto de padres considerado. o O detetor de regularidades um reconhecedor de padres em que os padres poss e o o veis no a denido a priori.O sistema deve se auto-organizar, e criar os poss e veis padres. o

5.2

Regras de Aprendizado Conexionistas

Essencialmente o aprender de redes neurais consiste em colocar valores de conexes sinpticas. o a Em alguns casos estes valores so colocados representando um certo conhecimento, como no a caso usado em sistemas especialistas. Em outros usa-se uma algoritmo para encontr-los. A a este algoritmo chama-se algoritmo de aprendizagem. 5.2.1 Aprendizado Hebbiano

A lei de Hebb, mencionada precedentemente talvez a mais antiga regra de aprendizagem usada. e Uma extenso desta lei : a e

Redes Neurais Articiais Ajuste a intensidade da conexo entre os neurnios A e B de uma quantidade proa o porcional ao valor da ativao simultnea dos dois neurnios. Se no entanto A tenta ca a o excitar B e no consegue a conexo enfraquecida. a a e

25

Uma caracter stica importantissima da lei de Hebb que ela goza da propriedade de localie dade. Isto signica que para alterar o valor de uma conexo sinptica apenas informaes locais a a co a ` sinapse em jogo so usadas dando plausibilidade biolgica ao algoritmo. a o Assim tem-se: wij = xi oj onde: wij intensidade da conexo entre os neurnios i e j a o wij acrscimo da intensidade da conexo entre os neurnios i e j e a o parmetro denindo a intensidade da correo chamado taxa de aprendizado a ca xi estado de ativao do neurnio i ca o oj saida do neurnio j o Apesar da plausibilidade biolgica o uso da lei de Hebb nesta forma apresenta vrios incono a venientes costumando-se usar verses mais sosticadas, tais como a Regra Delta. o Muitos pesquisadores em RNA no se preocupam com plausibilidade biolgica e em muitos a o casos tem razo. Anal avies voam melhor que pssaros e os primeiros tiveram asas inspiraa o a dos nos pssaros. E voam melhor por no terem de bater asas e sim usarem motores a jato, a a desconhecidos como soluo biolgica. Seria mesmo poss ca o ivel dizer que, se o objetivo obter e um artefato com propriedades de generalizao, capazes de aprenderem a realizar tarefas mal ca denidas, a plausibilidade biolgica pode ser desnecessria. Exemplos que se enquadram neste o a caso so in meros. a u Entretanto suponha-se, por exemplo que se esteja interessado em um melhor compreenso de a mecanismos envolvidos na inteligncia. Usa-se um algoritmo que no biologicamente plaus e a e vel e tira-se concluses sobre mecanismos mentais! Que validade tero estas concluses se foram o a o obtidas usando algo que irreal? mesmo que os resultados reproduzam coisas que ocorrem no e aprendizado de seres vivos o que se deveria concluir no que se tem uma idia mais precisa de a e e como o aprendizado ocorreu, E que o aprendizado nada mais do que criar um sistema com um e comportamento determinado. Mas muitos sistemas internamente diferentes podem apresentar o mesmo comportamento externamente, logo o comportamento biolgico que continua ignorado o 5.2.2 Regra Delta (2)

A expresso usada na Lei de Hebb muito simplicada. Com efeito, considerando uma sinapse a e real tem-se:

Redes Neurais Articiais

26

O valor da modicao da intensidade da conexo sinptica para mesmas excitaes dos ca a a co neurnios envolvidos pode variar com o tempo. o A modicao da intensidade da conexo sinptica wij de wij pode depender de wij o ca a a que ser um efeito no linear (anteriormente tem-se um sistema bi-linear por apresentar a a um produto de duas intensidades). Isto ocorre como um efeito de saturao do valor de ca conexo sinptica. a a Pode-se imaginar que a modicao da intensidade da conexo sinptica dependa tambm ca a a e de neurnios vizinhos. o Um modelo um pouco mais completo seria: wij = (xi , di , wij , oj , t) (3)

Note-se que di no local ` sinapse, mas local com relao ao neurnio i. a e a ca o Uma expresso um pouco mais simples seria obtida com a funo dependendo da diferena a ca c entre a excitao real do neurnio i e a que seria desejada. Com isto tem-se a Regra de Widrowca o Ho ou Regra Delta que pode ser expressa como: wij = (di xi )oj (4)

Existem muitas outras variantes para a regra de aprendizado expressa pela equao3. Por ca exemplo, Grossberg propoz a seguinte regra de aprendizado:. wij = xi (oj wij ) (5)

Nesta regra de aprendizado toda a informao necessria ` modicao de uma sinapse ca a a ca e local ` sinapse, sendo portanto um regra de aprendizado plaus biologicamente. a vel interessante notar que a regra delta implementa uma otimizao em H2 isto , minimiza E ca e o erro mdio quadrtico. Com efeito, seja o erro mdio quadrtico correspondente ao exemplo e a e a p : Ep = 1 2 (dpj opj )2 (6)

j

Este erro funo do valor das conexes e portanto para calcular seu m e ca o nimo deve-se encontrar os valores que anulam a primeira derivada. Assim tem-se: Ep wij Ep oipwij oip opj = (dpj opj ) wij =

(7) (8)

Redes Neurais Articiais

27

Considerando a aproximao de primeira ordem para a funo o = (w)) e tomando o ca ca coeciente de proporcionalidade como uma constante (o sinal negativo escolhido para ter o e mesmo sinal da expresso usada na regra delta) , tem-se: a Ep = (dpj opj ) wij (9)

A Regra Delta biologicamente plaus pois usa apenas informao local ` sinapse para o e vel ca a aprendizado. Seu ponto de partida a generalizao da Lei de Hebb e efetua ama otimizao e ca ca que pode ser interpretada como o modelo matemtico de um mecanismo de seleo. a ca 5.2.3 Retropropago ca

Retropropago (Backpropagation) pode ser considerada como a generalizao da Regra Delta ca ca para redes diretas com mais de duas camadas. Neste caso, ao menos uma camada de neurnios o no est envolvida com a entrada ou saida e portanto interna ` rede. Esta camada e suas a a e a conexes quando aprendem a efetuar uma funo, agem como se houvesse uma representao o ca ca interna da soluo do problema. ca Para uma apresentao de como a retropropagao funciona recomenda-se a leitura do artigo ca ca original de Rumelhart et al. [81]. Sem entrar em detalhes a retropropagao uma regra de ca e aprendizado supervisionado. Apresenta-se ` rede um exemplo e verica-se a saida da rede, a saida esta que comparada ` saida esperada dando um erro. Calcula-se o gradiente deste erro e a com relao aos valores sinpticos da camada de saida que atualizada por um passo escolhido ca a e podendo-se ento calcular o erro da saida da pen ltima camada, e assim por diante propagando a u para tras o erro (origem do nome backpropagation) por todas as camadas de conexes. A seguir o apresenta-se mais um exemplo (pode ser o mesmo repetido) e continua-se o processo at que o e erro seja menor que uma tolerncia desejada. a Esta talvez a mais popular regra de aprendizado. A maioria dos programas para tratar RNA e dispem de uma implementao da backpropagation ou na forma original (usando gradiente) o ca ou em uma forma modicada para melhorar a performance da regra. alem de ser a primeira regra inventada para efetuar treinamento supervisionado de redes diretas com mais de duas camadas e consequentemente no limitada a resolver problemas linearmente separveis, tem a a ainda a vantagem de que, se a funo de ativao for uma funo anal ca ca ca tica derivvel, a derivada a pode ser calculada explicitamente, evitando todos os problemas inerentes derivao numrica. a ca e Tal o caso da funo log e ca stica. ypi = 1 1 + e(iwji ypi +j )

(10)

onde j a polarizao (bias). e ca Com efeito, chamando a expresso entre parntesis na equao 10 netpi a derivada : a e ca e

Redes Neurais Articiais

28

ypi = ypj (1 ypj ) netpi Consequentemente o erro em uma unidade de saida dado por: e pj = (dpj ypj )ypj (1 ypj ) e em uma unidade interna: pi = ypj (1 ypj ) kpk wkj

(11)

(12)

(13)

O mximo da derivada ocorre para ypi = 0.5 e o m a nimo para 0 ou 1. Como na backpropagation a correo a cada passo proporcional ` derivada, os pesos mudam mais para as unidades ca e a que tem uma ativao de valor intermedirio o que contribue para a convergncia do algoritmo. ca a e Convem ainda notar que retropropagao pode ser usada (teoricamente) para neurnios onde ca o as entradas so combinadas usando multiplicao, para redes com realimentao ou recurrentes. a ca ca No primeiro caso, como observado por Janson & Frenzel [51] a funo erro pode apresentar ca muitos m nimos locais e no deve ser usada. a Finalmente cabe salientar que nem toda rede direta pode ser treinada pela retropropagao, ca pois devido ao clculo da derivada necessrio que a funo de ativao seja derivvel (o a e a ca ca a treinar redes com ciclos por retropropagao, Perceptron est excluido). Por outro lado possivel a e ca como mostrado no artigo mencionado acima. Portanto, impreciso chamar redes diretas de redes e retropropagao como se faz freq entemente na literatura. ca u 5.2.4 Aprendendo com a Natureza

Em seu interessantissimo livro, Le hasard et la ncssit, Monod [73] seguindo idias Darwinie e e e anas [24], discute como aleatoriedade e luta pela vida servem para os seres vivos aprenderem e com isto evoluirem. A mesma idia pode ser usada no treinamento de RNAs. Aplicada a e populaes esta idia leva aos algoritmos genticos. Aqui ser apresentada a verso usada em co e e a a estudo de manter a posio em p. ca e O processo o corpo da criana de p. A entrada o desejo de car nesta posio. As e c e e ca perturbaes so do tipo vento, algum peso carregado, etc. A realimentao modela os sentidos. co a ca Incorpora-se informaes visuais, do labirinto, proprioceptivas relativas `s posies das juntas, co a co etc. As informaes do labirinto incluem as provenientes de rgos vestibulares tais como os co o a canais semicirculares capazes de detetar acelerao angular e os rgos otol ca o a ticos capazes de detetar acelerao linear. ca Usou-se rede direta como controlados. O comportamento global do sistema controlado e funo do valor das conexes que so inicializadas aleatoriamente como uma matriz W (0) e ca o a observa-se o comportamento durante um certo intervalo de tempo registrando-se o erro mdio e

Redes Neurais Articiais

29

quadrtico (0). A seguir gera-se uma outra matriz aleatria W criando uma nova matriz de a o conexes ( um fator de correo): o e ca W (1) = W (0) + W. (14)

Simula-se novamente o sistema. Se o novo erro is for menor que (0), a nova matriz sinptica a adotada como W (1). No caso contrrio comea-se novamente tirado outra matriz aleatria e a c o W . Repete-se o mesmo algoritmo ate melhorar e atingir erro menor que uma tolerncia quando a se aumenta o tempo de observao. ca O processo se repete at que apenas pequenas oscilaes em torno da posio em p sejam e co ca e observadas. 5.2.5 Aprendizado Competitivo

No aprendizado competitivo, usado nas redes popularizadas por Kohonen [55] neuronios so ina ibidos por outros neuronios de modo a que a competio entre eles leva a apenas um acabar excica tado. Assim, enquanto uma rede neural baseada em um aprendizado Hebiano, vrios neurnios a o de saida podem estar simultaneamente ativos, no caso do aprendizado competitivo, somente um neurnio de saida ca ativo de cada vez. o Fundamentalmente existem tres elementos que caracterizam o aprendizado competitivo: 1. Existe um conjunto de neurnios idnticos, ligados por valores de conexes sinpticas de o e o a valores distribuidos de modo aleatrio. o 2. Existe um valor mximo bem denido para a ativao dos neurnios. a ca o 3. Existe um mecanismo que permite que os neurnios entrem em competio pelo direito de o ca permanecerem excitados. No aprendizado competitivo entradas possuindo alguma semelhana tendem a excitar o mesc mo neurnio na saida. Assim que este paradigma de aprendizado pode servir para sugerir o e classicaes, tal como estudado no caso do estudo do sono [21], [22], [20], [23] em que os vrios co a tipos de sono ainda assunto de debate. e 5.2.6 Aprendizado Reforado c

No Aprendizado Reforado ou Reinforcement learning consiste no aprendizado atravs do c e mtodo da tentativa e erro de modo a otimizar um e ndice de performance chamado sinal de reforo. c Este paradigma de aprendizado tem profunda motivao biolgica, em que comportamentos ca o provocando satisfao tem como consequencia um reforo das conexes que os produziram, e ca c o

Redes Neurais Articiais

30

aqueles provocando insatisfao uma modicao do valor das correspondentes conexes. Um ca ca o exemplo o estudo do controle e seu aprendizado da posio erecta [17]. e ca 5.2.7 Aprendizado Aleatrio o

O aprendizado dito aleatrio quando os passos no sentido de obter o comportamento aprendido e o se baseiam em valores tomados aleatriamente que so testados para vericar sua adequabilidade. o a Assim, em essncia o aprendizado aleatrio segue os seguintes passos: e o Selecione os valores das conexes sinpticas de modo aleatrio. o a o Verique o valor da performance da rede. Provoque uma variao aleatria nas conexes sinpticas e verique o novo valor da perforca o o a mance da rede. SE melhorou retenha este novo valor de conexes. Caso contrrio escolha o a um critrio para escolher noiva variao. e ca Verique se um critrio de parada especicado inicialmente foi satisfeito e neste caso pare e o aprendizado. De uma certa forma o aprendizado aleatrio coincide com o aprendizado com a Natureza, o mencionado acima. 5.2.8 Aprendizado Evolutivo

Aprendizado Evolutivo o paradigma de aprendizado que, tirando inspirao da evoluo bie ca ca olgica capaz de modicar a topologia e os valores das conexes sinpticas de modo a fazer o e o a uma rede se tornar apta a resolver um problema. Este assunto pode servir tanto como algoritmo de aprendizado como para determinar a topologia da rede a ser usado para resolver determinado problema [7, 38].

6

Mquina de Resolver Problemas a

O sucesso das RNAs faz crer que um computador usando estas redes, como bloco bsico, possa a resolver problemas que computadores que no usem esta tecnologia so incapazes, ou ao menos, a a teriam muita diculdade para resolver. Isto nos leva a um estudo comparativo de possibilidades e torna-se conveniente precisar a terminologia empregada.

6.1

Tipos de Computadores

O estudo das possibilidades de RNAs na soluo de problemas implica na existncia de computaca e dores usando estas redes. Chama-se neurocomputador um computador em que o funcionamento interno feito por redes neurais munido de dispositivos de entrada e sa [44], [45]. e da

Redes Neurais Articiais

31

Por outro lado, devemos mencionar computadores que no usam esta tecnologia, que possuem a uma ou mais unidades centrais de processamento, memria. o Muitos destes computadores que no podem ser chamados de convencionais por inclu a rem alto grau de sosticao tm em comum o fato que seu funcionamento se baseia no conceito de ca e instruo. Por esta razo eles sero chamados de Computadores Baseados em Instrues ou CBI ca a a co como proposto em [5]. Em alguns casos pode ser conveniente usar simultaneamente as duas tecnologias tendo-se ento um computador h a brido.

6.2

Teoria de Problemas

Informalmente pode-se dizer que IA serve para resolver problemas, imitando de uma certa forma a inteligncia dos seres vivos (geralmente seres humanos). Mas o que um problema? [6]. e e A palavra problema to familiar que pode at parecer estranho perguntar sobre seu e a e signicado. Durante muito tempo se tratou de problemas, achou-se a soluo de muitos, provouca se que existem ou no soluo para muitos problemas, e muitos ainda desaam a cincia. Polya a ca e [74] sugere que antes de tentar buscar a soluo de um problema procure-se responder as seguintes ca perguntas: Quais so os dados? a Quais so as solues poss a co veis? O que caracteriza uma soluo satisfatria? ca o Estas perguntas podem ser tomadas como guia para formalizar a noo de problema [86]: ca Denio 15 Um problema o objeto matemtico P = {D, R, q}, consistindo de dois conjuntos ca e a no vazios, D os dados e R os resultados poss a veis e de uma relao binria q D R, a ca a condio, que caracteriza uma soluao satisfatria. ca c o Para ilustrar este conceito seja o caso de encontrar as raizes de um polinmio com coecientes o reais. Achar a soluo do problema da busca das ra ca zes de um polinmio com coecientes reais o consiste em associar a cada conjunto de coecientes de um polinmio particular p(x)) de grau n, o n n meros complexos cn de modo a satisfazer a condio de que o valor de p(x) fazendo x = cn u ca para todo n seja nulo. Dene-se ento a soluo de um problema como a funo f : D R, tal a ca ca que d D tem-se (d, f (d)) q. O conceito de problema apresentado se refere a problemas em geral e no a exemplos esa 5 + 3x2 + 3 um caso peccos de problemas. Por exemplo achar as raizes do polinmio 2x o e particular do problema de achar ra de um polinmio de coecientes reais. zes o Como a soluo a um problema uma funo, se for poss implementar esta funo tem-se ca e ca vel ca a soluo do problema. Este fato leva, na abordagem simblica, ` programao funcional e a ca o a ca e base da abordagem conexionista.

Redes Neurais Articiais

32

Com efeito, suponha-se implementada uma mquina abstrata tendo como primitivas um a 10 de funes, alm de um mecanismo de construo de novas funes conjunto bem escolhido co e ca co (recursividade seria um destes mecanismos). A funo soluo do problema poderia ser impleca ca mentada em tal mquina, e esta soluo estaria usando o paradigma funcional de programao. a ca ca Por outro lado, a abordagem conexionista fundamentada no fato de que redes neurais, e e em particular, redes diretas podem ser consideradas como aproximadores universais de funes co [18]. Desta forma, basta criar uma rede direta, sucientemente rica e trein-la para representar a a funo. ca

6.3

O Computador na Resoluo de Problemas ca

O computador pode ser considerado como mquina de resolver problemas, logo, natural imaga e inar que tanto a possibilidade de resolver um problema espec co, como quanto vai ser gasto em recursos na tarefa, dependem da mquina usada. Ao fato de que um problema possa ser a resolvido com recursos nitos chama-se computabilidade [53] e a quantidade de recursos envolvidos complexidade. Fala-se tambm em computabilidade prtica; por exemplo, um problema e a que requeira um tempo de 100 anos do mais rpido computador dispon no praticamente a vel a e computvel. a Para estudar se em um CBI e em um neurocomputador um problema computvel e qual a e a complexidade da soluo, necessrio explicitar como um neurocomputador e um CBI enfrentam ca e a a tarefa de resolver problemas. Em ambos pode-se distinguir os trs pontos seguintes: e a)-Em um CBI tem-se: 1 - o computador virtual (circuitos e programas), 2 - o ato de fazer o computador apto a resolver um problema espec co (carregar o programa no computador), 3 - resolver o problema (rodar o programa). b)-Em um neurocomputador tem-se: 1 - a rede de neurnios com entradas e sa o das (simulado ou materialmente implementado), 2 - um meio de xar os pesos das conexes, muitas vezes usando um algortmo de o aprendizagem (equivalente a carregar o programa), 3 - usar a rede j educada para resolver o problema com os dados a serem usados na a entrada da rede (equivalente a rodar o programa). A computabilidade de um problema depende dos pontos 1 e 2. Com efeito, a possibilidade de resolver um problema depende do apoio material que se dispe e se existe um programa (caso de oA expresso bem escohido equivale, de modo informal a dizer satisfazendo `s seguintes condies: e a a co enumerar as condies necessrias para que a armao que se segue seja vlida. co a ca a10

Redes Neurais Articiais

33

um CBI) ou se existe um conjunto de pesos de conexes (caso de um neurocomputador) capaz o de resolver o problema. Por outro lado a complexidade do problema depende do ponto 3, ou seja rodar o programa ou excitar a rede com os dados a serem usados. Se existe uma teoria de computabilidade e complexidade bem desenvolvida, esta teoria e voltada para os CBI. Com relao aos neurocomputadores existem apenas resultados isolados. ca

6.4

Equivalncia de Computabilidade e

A Tese de Church-Turing diz que todo problema computvel pode ser resolvido por mquina de a a Turing. Se as redes neurais so ou no equivalentes a uma mquina de Turing e em conseqncia a a a ue so capazes de resolver qualquer problema computvel e apenas eles, tem despertado grande a a interesse recentemente. Visto a luz dos trabalhos publicados por Arbib [2], [3] pode-se dizer que em termos de computabilidade CBI e neurocomputadores so equivalentes. Isso quer dizer que um neurocoma putador no sabe resolver nenhum problema que no pudesse ser resolvido com um CBI e vice a a versa. Esta armao pode ser descrita mais precisamente por dois teoremas. ca Theorema 1 Todo problema que pode ser resolvido por uma rede neural poder ser resolvido, a com a preciso que se desejar, por um CBI. a A prova deste resultado fcil [2, 3]. Com efeito, sabe-se que toda RNA pode ser simulada e a em um CBI, geralmente usando um programa que efetua multiplicaes matriciais, implementa co funes, etc. E isto com a preciso desejada. Usando esta simulao e os dispositivos de entrada co a ca e sa do CBI tem-se um neurocomputador (simulado). Ora todo problema que este neuroda computador resolve est na realidade sendo resolvido por um CBI, que a mquina hospedeira a e a da simulao. Assim, pode-se dizer que todo problema resolvido por um neurocomputador pode ca ser resolvido por um CBI. A rec proca deste teorema : e Theorema 2 Todo problema que pode ser resolvido por um CBI poder ser resolvido, por uma a RNA munida de convenientes dispositivos de entrada e sada. Com efeito, usando neurnios articiais (e dos mais simples, aqueles que possuem apenas o sa das binrias) poss a e vel construir os circuitos lgicos e, ou e no alm de circuitos bio a e estveis. a Com efeito, a gura 5 mostra como implementar estes circuitos bsicos. O primeiro, implea mentando um circuito no consiste em um neurnio com entrada feita atravs de uma conexo a o e a inibitria, de valor sinptico unitrio. O neurnio , como em todos os trs considerados na o a a o e e gura, denido por:

Redes Neurais Articiais

34

NO u1 0,5 u -1 y 0,5 u2

E u1 0,5 y 0,5 u2

OU y

Bias = 0,6

Bias = 0,4

u

Figura 5: Circuitos NAO, E. OU implementados com neurnios articiais. o - entrada do neurnio uT : soma dos produtos das excitaes u pelos valores das o co conexes sinpticas; o a - uma entrada auxiliar, chamada bias que usada para alterar a funo de sa e ca da do neurnio; o - neurnio esttico, isto , a sa ocorre no mesmo instante que ocorre a entrada (o o a e da tempo entre estes dois eventos muito pequeno); e - a sa obtida considerando a funo de sa do neurnio, dada pela expresso da e ca da o a abaixo onde uT leva em considerao o bias: ca se uT < 0 ento y = 0 seno y = 1 a a Com estes circuitos pode-se construir um CBI [32] usando tcnicas que os engenheiros de e microeletrnica conhecem e juntando-se dispositivos de entrada e sa o da. Ora, seja um CBI, assim construdo, programado para resolver um problema especco. Este problema estar a sendo resolvido por um conjunto de neurnios articiais ligados de um certo modo, logo por o uma RNA. Logo, pode-se concluir que todo problema que pode ser resolvido por um CBI pode ser resolvido por um neurocomputador. Desta forma ca provada, de modo intuitivo, a equivalncia dos CBI e neurocomputadores e em termos de computabilidade. Prova formal foi apresentada em [66] para o caso de neurnios o com dois estados.

Redes Neurais Articiais

35

6.5

Pontos de D vida u

Para concluir esta discusso sobre a equivalncia de redes neurais articiais (RNA) e mquina a e a de Turing, conveniente apresentar argumentos que mostram que esta equivalncia apenas e e e aproximada. Existem RNAs cujos valores de ativao, sa e entradas so elementos de um intervalo ca da a dos n meros reais. Portanto a cardinalidade destes conjuntos 1 , ou seja a cardinalidade u e do cont nuo. Por outro lado, no caso da mquina de Turing, tem-se cardinalidades nitas, a ou seja, conjuntos enumerveis (memria interna to grande quanto se deseje) sendo a a o a cardinalidade no mximo 0 , ou seja a cardinalidade dos inteiros. Ora, como as cardinala idades so diferentes, no existe bijeo entre estes conjuntos, sendo as RNAs mais ricas a a ca que a mquina de Turing. Uma RNA pode ser simulada em mquina de Turing levando a a em considerao uma certa aproximao. ca ca No caso de neurnios naturais (ou biolgicos), formadores das redes neurais naturais (RNN) o o ou redes neurais biolgicas (RNB), a observao referente ` diferena de cardinalidades o ca a c deixa de ser vlida. Com efeito, a transmisso de informao sinptica se faz por molculas a a ca a e de neurotransmissores e, portanto, quantizada, tendo cardinalidade nita ou no mximo e a 0 . Resta a d vida com relao ao conjunto de excitaes poss u ca co veis: ser que a frequncia a e de descarga dos neurnios pode variar continuamente, ou dar saltos entre frequncias o a e prximas? o A maior parte das RNAs com que se trabalha, so redes s a ncronas. Ora, se isto semelhante e 11 tal no ocorre com as RNN em que aos CBI que trabalham sincronizados por um relgio o a o funcionamento ass e ncrono. Destas observaes pode-se tirar vrias concluses, dentre as quais os teoremas e o corolrio co a o a que existem redes neurais que no podem ser implementadas em CBI. Consequentemente existem a problemas que podem ser resolvidos por neurocomputadores que no podem ser resolvidos pela a Mquina de Turing. a O fato de uma rede neural suave poder ser aproximada com a preciso desejada por uma a outra rede discreta, leva a denir uma equivalncia em termos de computabilidade prtica, dois e a computadores sendo equivalentes, so capazes de resolver os mesmos problemas. Entretanto, a em termos de computabilidade prtica, neurocomputadores e CBI so equivalentes. a a

6.6

No Equivalncia de Complexidade a e

Nas sees precedentes foi discutido o problema de computabilidade de CBI e neurocomputaco dores chegando-se a uma equivalncia prtica em termos de computabilidade. E em termos de e a complexidade?11

Claro que em computao distribu tal no verdade. ca da a e

Redes Neurais Articiais

36

Embora pouco seja conhecido sobre complexidade quando se usa um neurocomputador, sabese que em termos de complexidade as coisas so diferentes em termos de CBI e neurocomputaa dores. Para ver que as coisas so diferentes basta considerar um exemplo simples. Seja o caso de a um circuito implementando uma RNA direta s ncrona com trs camadas. Suponha-se ainda e que ela foi treinada para associar padres (por exemplo um sistema especialista de diagnstico o o associando sintomas aos correspondentes diagnsticos). Como no h realimentaes, o tempo o a a co para a rede dar uma resposta sempre o mesmo: trs ciclos de relgio! E isso para qualquer e e o nmero de sintomas e doenas. u c Ora, este resultado completamente diferente se for usado um CBI. Por exemplo, se for usado e Prolog, o tamanho da rvore de busca aumenta com o n mero de sintomas e diagnsticos. Podera u o se-ia retrucar que no caso do neurocomputador, para muitos sintomas/diagnsticos poss o veis o tamanho da rede aumenta, e isto verdade ao menos em parte. Porque se uma rede maior pode e fazer crer em um resultado mais preciso daquele que obtm se for usada uma rede menor, no e a se sabe ainda ao certo qual o tamanho da rede ideal para resolver um dado problema. Alm e disto, esta armao sobre preciso baseada em resultados anteriores e pode ser considerada ca a e como uma heur stica. Existem muito poucos estudos sobre complexidade de problemas voltada para a soluo por ca neurocomputadores. Note-se que no se trata de falar da complexidade de problemas ligados `s a a RNA, tais como a complexidade de um algoritmo de aprendizado de redes. A complexidade a que o presente estudo se refere a quantidade de recursos em termos de e RNA necessrios para poder resolver um determinado problema, eventualmente considerando-se a uma certa preciso. Estes recursos incluem o tipo de rede a ser escolhido, a topologia da rede, a etc. Um estudo que se tornou famoso foi o apresentado por Minsky e Papert em 1969 [71], [72] e que desviou a maioria das pesquisas de redes neurais para pesquisas em IA usando manipulao ca simblica. Alm deste trabalho, que pode ser considerado o primeiro grande passo na direo de o e ca uma teoria da complexidade voltada para RNA, alguns outros trabalhos isolados tm aparecido. e Para exemplos, ver as referncias que se seguem: [1], [67]. e

6.7

Alguns Resultados Sobre Complexidade de RNA

A complexidade das RNA diz respeito a dois pontos: 1. Dado um problema, denir a topologia da rede necessria para sua soluo. Por exemplo, a ca se a rede deve agir como modelo de um sistema de controle adaptativo, e a entrada da rede a sa do processo, ser possvel usar uma rede direta? e da a 2. Dado um problema que pode ser resolvido por uma determinada topologia de RNA, e uma preciso desejada, qual a tamanho m a nimo da rede que deve ser usada?

Redes Neurais Articiais

37

Alguns teoremas com relao ` complexidade das RNAs foram apresentados em [7] que ca a permitem sugerir uma classicao baseada em separabilidade e dinmica. ca a 1. Problemas estticos linearmente separveis. a a Trata-se de problemas envolvendo a implementao de uma funo (por ser um problema ca ca esttico) e que podem ser resolvidos por um perceptron de uma camada de conexes. a o 2. Problemas estticos linearmente no separveis. a a a Trata-se de problemas envolvendo a implementao de uma funo (por ser um problema ca ca esttico) e que podem ser resolvidos por uma rede direta, com neurnios estticos, exigindo a o a ao menos uma camada de neurnios internos. o 3. Problemas dinmicos com dinmica nita. a a Os problemas com dinmica nita so aqueles que a durao da resposta do sistema a a ca aps uma entrada dura um tempo nito. Um exemplo so os ltros FIR (Finite Impulse o a Response). Estes problemas pode ser resolvidos por rede direta com neurnios dinmicos. o a 4. Problemas dinmicos com dinmica innita. a a Os problemas com dinmica innita so aqueles que a durao da resposta do sistema a a ca aps uma entrada pode durar um tempo innito. Um exemplo so os ltros IIR (Innite o a Impulse Response). Estes problemas devem ser abordados por rede com retroao e com ca neurnios ou rede esttica e conjunto de retardos. Neste caso o problema da estabilidade o a da rede, ou seja se a rede encontrar ou no soluo e quanto tempo ser necessrio a a ca a a e problema em aberto.

6.8

Aprendizado de RNA como Paradigma de Programao ca

Ser que a diferena em complexidade justica esforos para construir neurocomputadores? A a c c resposta pode ser encontrada no modo de fazer neurocomputadores aptos a resolver problemas. O ato de fazer um CBI apto para resolver um problema bem conhecido como a atividade e de programar. Programar pode ser considerado como o ato de descrever um algoritmo ou como meio de se comunicar com o computador. Como modo de descrever um algoritmo ca imprprio o falar em programar um neurocomputador, mas no se for considerado como o modo de se a comunicar com ele. Assim considere-se o conceito de programar de um modo mais amplo que seja aplicvel tambm aos neurocomputadores. Ora, neurocomputadores se preparam para a e resolver problemas ajustando os valores das conexes sinpticas entre seus neurnios, o que pode o a o ser feito essencialmente de dois modos: Colocando diretamente os valores como uma representao do conhecimento com sugerica do no livro de exerccios da srie PDP [82], exemplo das gangs Jets e Sharks e que foi e

Redes Neurais Articiais

38

modicado para uso em sistemas especialistas conexionistas com sucesso [25], [15], [13], [11]. Usando um algoritmo de aprendizagem [46]. Mas se isso tambm programar, que paradigma de programao ser este? e e ca a costume mencionar vrios diferentes paradigmas de programao: imperativa, funcional, E a ca lgica, declarativa, orientada a objeto, etc. Estes paradigmas no so excludentes, existindo, o a a por exemplo, funcional orientada objeto, imperativa com parte declarativa, etc. Entretanto, considerando a proximidade com o funcionamento de um CBI pode-se falar em imperativa e declarativa. Na programao imperativa se especicam as aes que o computador deve efetuar para reca co solver determinado problema. Na programao declarativa declara-se o que deve ser uma soluo ca ca para o problema e cabe ao computador transformar esta denio do problema em instrues ca co imperativas a serem executadas. Por exemplo, um interpretador Prolog recebe um programa Prolog em estilo quase declarativo e o transforma, usando entre outras coisas o Princpio da Resoluo proposto por Robinson [75] em um programa imperativo. ca E programar um neurocomputador? Isso pode ser considerado como um novo paradigma de programao, em que no mais necessrio nem denir o algor ca a e a tmo nem denir o problema precisamente. Basta introduzir no computador relaes entre conceitos ou usar exemplos de co problemas parecidos j resolvidos para serem usados na fase de aprendizado. A RNA, usando a sua capacidade de generalizao se torna capaz de resolver o problema desejado. At o presente ca e momento no se conhece teoria permitindo associar a preciso da soluo a esta capacidade de a a ca generalizao, o problema tendo sido abordado de modo experimental, usando simulao [76], ca ca [77].

6.9

Um Pouco de Fico ca

Uma discusso de neurocomputadores e computadores h a bridos motiva especulaes. Quem no co a gostaria de um rob domstico? Poderia limpar a casa, por a mesa, por a loua na mquina, o e c a trazer os chinelos depois de abrir a porta para seu mestre, e com as capacidades neurais de aprender e se adaptar a novas manias do mestre. Mas ele deveria aceitar programao declarativa ca tambm para que se pudesse colocar, por exemplo, as leis da robtica inventadas por Azimov... e o e nunca fazer mal a um ser humano.

7

Aplicaoes das RNAs c

Atualmente as aplicaes das RNAs esto invadindo todos os dom co a nios, saindo das primeiras em reconhecimento de padres, para ir a distribuio de energia eltrica, mercado de capitais, o ca e

Redes Neurais Articiais

39

aplicaes navais, sistemas especialistas, etc. Neste cap co tulo sero abordadas algumas destas a aplicaes. co

7.17.1.1

Reconhecimento de Padres oEm que Consiste o Reconhecimento de Padres o

Reconhecimento de padres talvez uma das primeiras aplicaes de redes neurais. Com efeito, o e co o Perceptron de Rosenblatt [78, 79] foi concebido principalmente como instrumento capaz de reconhecer letras. A principal razo que reconhecimento de padres uma tarefa geralmente a e o e desempenhada muito melhor usando as capacidades cognitivas do homem do que executando um algor tmo. Por exemplo, seres humanos so excelentes no reconhecimento de rostos, m sicas, a u a caligraa de alguem conhecido, etc. Ces so excelente em reconhecer odores e gatos so a a a capazes de sentir o humor de pessoas fugindo daquelas que exprimem caracter sticas agressivas. Isso pode ser atribu a um sistema bastante desenvolvido de reconhecimento de padres. do o Por outro lado os esforos para fazer computadores baseados no conceito de instruo tem c ca encontrado srias diculdades. e 7.1.2 Reconhecimento de Padres como Classicador o

A gura 6 representa esquematicamente um reconhecedor de padres. O transdutor munido de o e um sensor que traduz a forma de energia suporte de informao sobre o objeto (ex: foto-eltrica ca e ou clulas da retina se informao visual, terminaes nervosas do ouvido interno ou microfone e ca co se informao sonora) e traduz esta forma de energia para outra capaz de se