Cone
xionismopor
Luís Simões da Cunha
Índice Geral
1
. Condições históricas da emergência do conexionismo2.
Princípios gerais de redes neuronais3.
Textos históricos do conexionismoWarren S. McCulloch e Walter Pitts (1943,1947)
4.
Textos do conexionismo recenteMisha Mahowald e Carver Mead (1991)
Neuro-n: Aplicação prática de uma rede neuronal
Instruções de utilização do programa
Condições históricas da emergência do conexionismo
"Este é um artigo muito interessante sobre o comportamento humano. Mas o que é que ele nos diz sobre os ratos ?"
Anos 60, uma conferência de psicologia (pergunta da assistência)
O cérebro é uma rede. Gerações e gerações de cientistas têm tentado compreender como é que essa rede funciona e muitas ideias têm sido testadas e aperfeiçoadas ao longo dos tempos.
Não é verdade que saibamos pouco sobre o cérebro. Bastará procurar bibliografia na área das neurociências para verificar-mos que a produção de conhecimento neste domínio vem já desde longa data e atinge hoje um ritmo alucinante. É apenas quando comparamos a complexidade do nosso objecto de estudo com aquilo que sabemos dele que a percepção do abismo é inevitável. E, realisticamente, se gerações e gerações houve de investigadores nesta área, mais gerações e gerações (e gerações...) serão necessárias até que obtamos as respostas de que andamos à procura.
Provavelmente, muitas perguntas que colocamos agora estão erradas. Seja como for, elas terão uma resposta, que agora podemos não compreender ou compreender erradamente. Qualquer interacção com o objecto de estudo produz conhecimento - esta tem sido a base de toda a investigação científica: compreender como é que um objecto sobre o qual incide a nossa atenção se comporta face às vicissitudes e/ou manipulações do meio.
O conexionismo parte do princípio de que os neurónios são unidades de processamento de informação. Quando estamos a falar em "neurónios" não estamos a falar necessariamente de neurónios biológicos. O objectivo último é compreender como é que o nosso cérebro funciona, mas por enquanto temos de nos contentar com modelos menos sofisticados...
Os cientistas cognitivos procuram uma teoria profunda que lhes permita explicar a mente. Mas nem todos procuram essa teoria da mesma maneira. Eles provêem das mais diversas áreas: da psicologia, da antropologia, das neurociências, das ciências de computadores, da linguística e mesmo da filosofia.
O conexionismo inscreve-se no âmbito das ciências cognitivas, embora tradicionalmente a perspectiva clássica do processamento da informação (information processing ou IP) tenha ofuscado os seus pressupostos.
Podemos encontrar as suas raízes nos trabalhos pioneiros de William James que, em 1890, publicou Psychology (Briefer Course), livro didáctico em que expunha algumas ideias que, à parte da terminologia utilizada, típica do século XIX, podiam ser directamente transportadas para o estudo actual das redes neuronais.
Nessa obra, James expõe o principio associativista de que "quando dois processos mentais estão activos simultaneamente ou em sucessão imediata, um deles tende a transferir a sua excitação para o outro". Descreve também uma regra somática para o funcionamento cerebral que - resumidamente - relaciona a actividade de um determinado "ponto mental" com o dos outros pontos a que está conectado. Nestes conceitos vislumbram-se enunciados embrionários da dinâmica dos processos neuronais.
Em 1949, numa das primeiras utilizações do termo "conexionismo", Hebb afirma que a psicologia inspirada nos dados neurobiológicos sobre o funcionamento do cérebro não é uma psicologia "de estímulo-resposta", à maneira behaviorista. Pelo menos se por resposta estivermos apenas a considerar as manifestações motoras. Este acreditava que as ligações neuronais do cérebro servem para o estabelecimento de actividade central autónoma, indispensável para a ocorrência de aprendizagens.
Quando John von Neumann definiu a arquitectura que universalmente viria a ser aceite para o computador digital (em 1945), já manifestava o seu interesse pelas relações entre o cérebro e o computador. Tal é claramente perceptível pelas citações que faz aos pioneiros do conexionismo Warren McCulloch e Walter Pitts que, em 1943, publicaram um artigo em que procuravam explicar o funcionamento dos neurónios.
Em "The Computer and the Brain", artigo póstumo de von Neumann que será tratado adiante, este investigador afirma que a natureza pouco precisa das computações dos neurónios tem implicações no tipo de processamento de informação que o cérebro leva a cabo.
Nos anos cinquenta e nas décadas imediatamente a seguir, a expressão "cérebro electrónico" foi usada, muitas vezes, como equivalente de computador digital (sequencial). Essa expressão reflecte uma certa ideologia, então dominante, de que o computador tinha um funcionamento análogo ao funcionamento do cérebro, e que o facto de se basear em componentes electrónicos precisos lhe dava uma supremacia potencial sobre o órgão biológico. É uma expressão que, apesar de absolutamente datada, reflecte os temores e expectativas que as novas máquinas criaram na sociedade.
O facto de a arquitectura do cérebro ser muito diferente da arquitectura dos computadores convencionais, em nada refreou os ânimos e as pretensões dos cientistas que insistiam em ver nele o instrumento onde a mente podia ser cristalizada. Esta atitude reflecte a aceitação da perspectiva mentalista, segundo a qual não interessa como o cérebro faz o que faz, mas sim aquilo que ele faz: a mente.
O advento do computador, enquanto instrumento científico, traz consigo métodos de trabalho inovadores. Em psicologia, permitiu fazer o corte com o behaviorismo, que até então fora dominante: o computador foi a lanterna que iria permitir iluminar a "caixa negra" de Skinner. Os psicólogos cognitivos derrubam o velho edifício afirmando que o comportamento não é apenas o resultado de estímulos e respostas, mas antes um processo no qual as representações mentais servem de mediadoras.
Muitos trabalhos surgem nesta época. Um dos autores mais marcantes das ciências cognitivas é Noam Chomsky, que se interessou pelo modo como as frases podiam ser geradas.
Chomsky considera que a sintaxe pode ser compreendida autonomamente e que é independente de outras características da linguagem, como a semântica e a pragmática. A convicção de Chomsky é de que existe um nível separado na mente - o nível transformacional - em que operam regras bem definidas, capazes de transformar uma dada frase noutra frase gramaticalmente correcta.
Noutra área, a do estudo da visão, David Marr (1976) postula que a informação visual é processada em módulos separados, cada um dos quais responsável pelo tratamento de uma determinada característica da imagem. Trata-se de mais uma versão da atitude mentalista.
Estes modelos partem do pressuposto de que a actividade cognitiva da mente pode ser simulada num computador.
O empreendimento a que viria a ficar conhecido como Inteligência Artificial (IA ou AI, de "Artificial Intelligence") começou com um grande entusiasmo. Muitas aplicações começaram a surgir: programas capazes de disputar uma partida de xadrez, sistemas periciais (ou peritos) que eram capazes de manipular regras para responder a muitas questões sobre um domínio específico de conhecimento, programas de processamento de linguagem natural que, em alguns casos, eram capazes de se fazer passar por interlocutores humanos, etc.
Tornou-se claro, no entanto, que os métodos usados por esses programas nada tinham a ver com a forma como nós, seres humanos, pensamos.
Alguns investigadores teceram sérias advertências quanto o facto de o papel do contexto não estar a ser levado em linha de conta, em áreas como os programas de linguagem especializados em tradução e a investigação sobre a visão. O fracasso dos programas tradutores de primeira geração vieram dar-lhe razão. Na área da visão, criticava-se a direcção seguida pela IA tradicional, por considerar que a perspectiva dos investigadores era cartesiana, encarando a relação entre observador e objecto como se de uma relação meramente fotográfica se tratasse. Segundo ele, é necessário ter-se em conta o papel activo do indivíduo no processo de observação, algo para que já os psicólogos da Gestalt haviam alertado no princípio do nosso século.
A propósito de um fracasso da IA devido ao problema do contexto, Carl Sagan (1979) relata-nos o episódio em que numa recepção formal, um embaixador, convidado pelos orgulhosos inventores de uma tradutora de inglês-chinês automática a proferir uma frase, aventou: "longe da vista, longe do coração"; a maquineta traduziu a frase para caracteres chineses, mas como o embaixador não sabia chinês, pediu para que ela voltasse a traduzir o texto para inglês; assim foi feito, mas - para embaraço generalizado - a frase era agora "idiota invisível". A semântica não é desprezível.
O suporte da mente humana é o cérebro. E o modo como o cérebro trata a informação é muito distinta da forma como um computador sequencial opera.
O cérebro caracteriza-se por uma grande diversidade de capacidades, pelo seu poder de generalização, pelo seu comportamento adaptativo e pela sua dependência do contexto de onde recolhe informação.
Um sistema perito, um dos tipos de programa a que a estratégia da IA deu origem, pode conter um sem numero de dados sobre uma área, mas revelar-se-á inútil numa situação inesperada.
O computador sequencial, por seu lado, é uma máquina que tem as suas limitações, algumas das quais brilhantemente descritas por Alan Turing, já em 1937. Encerra também muitas possibilidades.
Na verdade, qualquer dispositivo de computação serial, em cuja linguagem esteja contido um conjunto mínimo de instruções - a que Turing chama de "código curto" -, pode imitar outro dispositivo de computação, quer seja serial, paralelo ou misto. Para isso, precisa apenas de dois recursos: memória e tempo. Diz-se que o computador sequencial tem, por isso, capacidade de emulação. Esta propriedade permite que usemos computadores digitais sequenciais para simular, por exemplo, redes neuronais, que são sistemas não sequenciais e, em muitos casos, não digitais.
É um facto que não podemos ter ainda a certeza de como funciona um neurónio, embora a neurobiologia nos forneça dados para construirmos os nossos modelos. Trabalhos recentes, como os de Wiesel e Hubel (1970), que estudaram como grupos de neurónios da retina reagem diferentemente a linhas com várias orientações, permitem-nos compreender melhor a forma como os neurónios reais se comportam em rede. Ainda assim, importa frisar que quando se está a falar de redes neuronais artificiais estamos a referir-nos a estruturas que se supõe terem um funcionamento semelhante ao das redes de neurónios do nosso cérebro, embora também possa acontecer que assim não seja.
Para dar uma ideia da dimensão do problema, os seguintes factos são elucidativos: o número de neurónios do nosso cérebro estima-se entre 10^11 e 10^12. Cada neurónio dispõe de um número de ligações que varia entre a ordem das unidades e a das centenas de milhar. O número médio de ligações por cada neurónio situa-se na ordem dos milhares.
As redes que simulamos em computador têm tipicamente algumas dezenas de unidades, cada uma das quais com três ou quatro ligações. Ainda assim, tem sido possível a aprendizagem com estas pequenas redes. Os estudos preliminares sobre redes neuronais já produziram os seus frutos. Um exemplo é a "Retina de Silício", concebida em 1991 por Mead e Mahowald e cujas versões mais recentes começam agora a ser usadas para recuperar parcialmente a visão de pessoas cuja retina tinha sido lesionada.
Incipientemente, começamos a compreender os princípios do funcionamento de algumas redes neuronais do nosso cérebro. Os neurónios da retina são objecto de muitas investigações porque a retina é uma terminação do cérebro cuja função é menos desconhecida do que a de outras zonas. O facto de sabermos que a retina processa informação visual permite-nos mais facilmente fazer as perguntas certas sobre o seu funcionamento. O modo real do cérebro humano processar informação é um enigma de longa data. O estudo das capacidades que são afectadas por determinados traumatismos cerebrais têm dado aos cientistas novos dados sobre a forma como outras zonas superficiais e periféricas do cérebro estão relacionadas com certas funções específicas.
A competição intelectual que caracterizou as relações entre os grupos de investigação de IA e do conexionismo tende hoje a diminuir. Mas tempos houve de acesa rivalidade.
Em 1949, Donald Hebb publica "Organization of Behavior", onde procura explicar como pode uma rede aprender. Este investigador postulava que quanto mais vezes a ligação entre duas "unidades" fosse utilizada, mais forte ela se tornaria. Esta regra viria a ser conhecida por lei de Hebb e inspiraria a construção de dispositivos artificiais capazes de efectuar aprendizagens: as máquinas de aprendizagem competitiva, que pela primeira vez demonstram, na pratica, muitas das ideias do conexionismo.
Verificou-se que, se é fácil fazer as "máquinas de aprendizagem competitiva" aprenderem coisas simples, torna-se extraordinariamente difícil que elas levem a cabo aprendizagens complexas. Ainda hoje, nenhuma máquina de aprendizagem pode reconhecer duas fotografias diferentes da mesma pessoa, algo que para nós é trivial.
Um dos confrontos mais dramáticos entre a perspectiva clássica da IA e o primeiro conexionismo surgiu com a disputa entre Marvin Minsky e Frank Rosenblatt, e que culminou com a publicação, por Minsky e outro investigador - Seymour Papert - de "Perceptrons", em 1969.
Minsky, que juntamente com McCarthy, Newell, Simon, entre outros, tinha sido um dos fundadores da IA, critica de uma forma demolidora os trabalhos que uma boa parte da comunidade do conexionismo desenvolvia em torno dos perceptrões. O conceito de perceptrão, um tipo especial de rede neuronal (ou neural) com o qual se pretendia obter uma classificação para cada padrão de entrada, tinha sido sugerido por Rosenblatt em 1962, e desde então muitos trabalhos de um grande número de investigadores tinham sido publicados.
Apesar de os perceptrões poderem ser simulados em computadores sequenciais convencionais, Rosenblatt acreditava que, devido às suas propriedades estatísticas, os perceptrões eram, de algum modo, superiores.
No livro que Minsky, em colaboração com Seymour Papert, dedica à análise dos seus limites, a análise matemática rigorosa é implacável com os perceptrões. Hoje sabe-se que as criticas então formuladas eram válidas apenas para os perceptrões mais simples, não se aplicando a sistemas com unidades ocultas. Seja como for, à época esta obra teve um efeito devastador, levando à interrupção abrupta e dramática da investigação das redes neuronais.
Rosenblatt foi o proponente do conexionismo mais controverso, mas não foi o único.
Em 1955, Oliver Selfridge concebeu um sistema que exemplificava a utilização de mecanismos interactivos dinâmicos na percepção. Chamou-lhe Pandemónio.
Nos anos setenta, Grossberg escreveu artigos de profunda análise matemática das redes neuronais e preocupou-se com a forma como o cérebro construía um código cognitivo.
O interesse pela perspectiva conexionista viria a re-emergir nos anos 80, com novo vigor. Hoje, ela constitui a abordagem dominante na simulação da inteligência.
Em 1986, o Grupo de Investigação de Processamento Distribuído Paralelo (PDP) faz publicar Parallel Distributed Processing: dois volumes em que o trabalho de investigadores como Rumelhart, McClelland, Hinton, entre outros, é compilado. Esta obra irá ter um profundo impacte na orientação teórica da investigação sob a bandeira do conexionismo.
Os modelos de PDP são os novos modelos da perspectiva conexionista. É neles que se baseiam os avanços mais recentes. Por esse motivo lhes daremos uma atenção especial.
Contrariamente aos computacionistas clássicos, autores como Rumelhart e McClelland estão confiantes na fertilidade do terreno das redes neuronais para os fenómenos cognitivos.
Numa rede de PDP existem neurónios que não constituem unidades de entrada nem de saída. São a componente distintiva destes sistemas e tomam o nome de "unidades ocultas"; é informação interna da rede, representações internas de informação.
A tese conexionista é que, numa rede, o conhecimento é distribuído pela totalidade do sistema. No entanto, o problema da localização/distribuição das funções cerebrais causa ainda um acesso debate.
Contrariamente à abordagem da IA, que pretendia simular o comportamento inteligente através da manipulação de símbolos que representavam directamente objectos e conceitos, a investigação conexionista procura compreender os processos subsimbólicos a que atribui a cognição.
Paul Smolenski (1986) afirma que "o nível mais poderoso de descrição dos sistemas cognitivos está abaixo do nível que é descrito normalmente pela manipulação simbólica".
Os investigadores de PDP afirmam que os símbolos que a IA pretendia manipular são - afinal - macrosímbolos e que, ao nível subsimbólico, é possível fazer interagir as componentes desses símbolos macroscópicos e trabalhar assim directamente com a matéria-prima da cognição.
Para terminar esta breve incursão pela história do conexionismo, é importante deixar patentes algumas reservas que, com toda a legitimidade, podem ser colocadas a esta abordagem.
Os cientistas que trabalham em PDP já não apregoam aos sete ventos as suas realizações, como era hábito nos primeiros tempos da IA e do conexionismo.
Como foi dito, o funcionamento dos neurónios dos modelos conexionistas pode ter pouco a ver com o dos neurónios biológicos.
Do ponto de vista neurobiológico, a nossa compreensão do cérebro é ainda tão incipiente que hipóteses como a de os neurónios constituírem apenas o suporte para um sistema químico sofisticado de onde a mente emerge podem ser sustentadas (apesar de, como vimos, trabalhos como os de Hubel e Wiesel, 1970 sobre a retina permitirem reforçar a ideia do neurónio como processador de informação significativa).
Além disso, a tentativa de representar informação ao nível subsimbólico tem-se defrontado com a complexidade com que os chamados símbolos "macroscópicos" são tratados pela rede. A verdade é que ninguém sabe como é que se lida com informação subsimbólica. É difícil de representar aquilo que não é simbólico ou de abordar analiticamente representações não simbólicas.
Há um mar de caos tempestuoso a barrar o caminho das ciências cognitivas, e o conexionismo aventura-se no mar alto com frágeis embarcações.
Para transpor o caos é preciso descobrir regularidades e com elas construir leis de navegação. Alguns têm mostrado que desafiar o Adamastor poderá levar mais além. É, por exemplo, o caso de Walter Freeman (1991) que, na actividade aparentemente caótica de milhões de neurónios, conseguiu descobrir um comportamento colectivo complexo; ou o caso de John Hopfield (1982) que descobriu o modo como da dinâmica de sistemas de neurónios muito complexos emergem novas propriedades.
Conta a lenda que quando Ícaro quis voar arranjou umas asas feitas de penas de aves. As redes neuronais do primeiro conexionismo podem ser vistas como as nossas asas de penas. Permitiram-nos voar, imaginariamente, e com elas quisemos atingir a mente, como Ícaro pretendia o Sol. Fracassámos e caímos, para só voltarmos a voar em aparelhos que em nada se pareciam com os pássaros: foi o tempo dos balões da IA tradicional. Com os modelos de PDP actuais, estamos a tentar voltar ao antigo sonho de voar com asas, mas ainda será preciso muito tempo até que as nossas "passarolas" façam grandes viagens. E quanto ao Sol, o melhor é não pensarmos nisso agora...
(divagação "incorrecta": nota do autor)
Nos anos cinquenta, os pequenos chuviscos que mal molhavam o solo fértil do behaviorismo, provenientes especialmente de escolas europeias (a Gestalt alemã e o estruturalismo de Piaget e Saussure), são substituídos por uma intensa chuva de criticas.
Não conseguindo fazer acalmar a ira dos seus opositores, da mesma forma que Noé foi impotente para sossegar o Demiurgo, os defensores do behaviorismo tiveram de enfrentar a prova de um dilúvio no seu território teórico. Como Noé, embarcaram na sua arca todos os seus ratinhos, chimpanzés, pombos, ..., cavalos. Também levaram a sua célebre "caixa-negra", que jamais poderia ser aberta (a menos que houvesse um acidente).
Confiantes, enfrentaram o mar que entretanto lhes roubara o pé. Sabiam que, apesar dos seus pecados, haviam contribuído muito para que a psicologia se desenvolvesse e ganhasse prestigio enquanto ciência experimental e que isso não era menosprezável.
Só que, ao contrário da lenda de Noé, os pombos do behaviorismo, por muito condicionados e supersticiosos que fossem, nunca voltaram à arca com a rama de oliveira a anunciar terra firme.
À deriva, a barca errou para o norte até que, num dia cinzento, o homem do leme não conseguiu evitar um iceberg e aconteceu o naufrágio. A 'caixa negra', com tantos mistérios para revelar, perdeu-se em águas profundas e frias.
Com o passar do temporal, novos continentes teóricos começaram a emergir e a tomar consistência. A época era agora de bonança, o terreno estava fértil e rapidamente surgiram esplendorosas árvores.
Apareceu, por exemplo, um grande bosque de árvores gramaticais na terra que Noam Chomsky enriqueceu com a sua Gramática Generativa. Especialmente, as suas ideias sobre a natureza criativa do acto linguístico e sobre as estruturas mentais em que pode assentar a linguagem fizeram surgir uma árvore nova e promissora, que alguns teriam espezinhado, não fosse ela protegida por alguns acérrimos defensores: era a árvore das ciências cognitivas.
Á medida que esta árvore se desenvolvia, o número de investigadores que se juntavam na sua sombra ia aumentando, atraídos pela promessa que ela encerrava. Quando apareceram os primeiros frutos, alguns tentaram prová-los: em vão, eles rapidamente apodreciam antes de que se pudesse sentir-lhes o sabor; ou transformavam-se em frutos artificiais, de plástico, que apenas serviam para decoração. Corria a lenda de que os frutos da árvore só não seriam proibidos àqueles que soubessem um segredo escondido numa caixa negra, que estava no fundo dos frios mares do Norte.
Foi então que os mais intrépidos investigadores, mais ou menos acompanhados, começaram a partir para o Norte.
Como os mares da razão são rigorosos, todos os cientistas quiseram ir nas melhores e mais modernas embarcações que havia então: os computadores digitais, projectados por um tal John von Neumann, havia poucos anos. Quando chegaram aí, depressa perceberam porque motivo eram tão pouco exploradas aquelas águas: antes de haver embarcações bem construídas e fiáveis qualquer travessia estava destinada ao fracasso. Mas agora seria diferente, porque agora havia modernos computadores capazes enfrentar as rigorosas vagas de dados e responder-lhes acertadamente. Mas ainda havia que encontrar a "caixa negra", escondida nas profundezas.
Lançaram-se sondas, passaram-se os anos com os dados salpicantes a molhar cada convés, mas a malfadada caixa não havia maneira de aparecer. Alguns conjecturavam sobre a aparência da caixa, outros sobre o seu conteúdo, mas ninguém se atrevia a dizer que tinha uma ideia de onde ela estava, pois dela nem rasto. Quando, sem alcançarem o seu objectivo, os investigadores quiseram recuperar forças junto da sua prometedora árvore, verificaram que os seus esforços não tinham sido em vão, pois alguns dos seus frutos, os mais pequenos, podiam já ser saboreados à vontade.
Contentes por verem o seu esforço reconhecido, os investigadores partiram de novo, rumo ao Norte, aos mares que o entendimento da razão entrepõe a todos os aventureiros. Consigo levaram todo o conhecimento que a viagem anterior lhes tinha proporcionado, reunido num manual de bordo com uma capa muito sugestiva e onde se podem ler as palavras: "Teorias de Processamento de Informação, Orientação para os Mares da Cognição".
Em vez de se limitarem a repetir os métodos usados da última vez, os investigadores começaram a dar mais atenção aos objectos que, no fundo marinho, fossem muito parecidos com o que procuravam: sabiam que a 'caixa negra' era feita de umas células chamadas neurónios, por isso, apenas procuravam objectos e estruturas baseadas em neurónios.
Não encontraram a caixa negra, mas regressaram felizes, pois sabiam que se tinham esforçado, e que isso lhes daria acesso a frutos melhores, na sua árvore das ciências da cognição.
Estavam a recuperar forças para nova e intrépida aventura a Norte quando lhes chega a notícia: um explorador português, de nome António Damásio, encontrou vestígios do que poderá ser a "caixa negra" em águas bem mais a Sul, próximo do Cabo da Boa Esperança.
É lá que a aventura deve continuar.
Post-scriptum:
"As correntes, marinhas ou teóricas, podem arrastar objectos e sujeitos a distâncias incomensuráveis"
Extraído de um Diário de Bordo
Princípios gerais de redes neuronais
O modelo conexionista geral baseia-se numa rede composta por unidades interligadas, análogamente aos neurónios do cérebro.
Cada unidade recebe uma entrada, ou "input", integra-a e fornece uma determinada resposta (ou "output").
As redes conexionistas são conhecidas por redes neuronais, ou sistemas neuromórficos. A palavra neuronal é um neologismo da nossa língua; também se pode dizer neural.
Os neurónios biológicos não são binários, i.e. produzem respostas dentro de um espectro contínuo de frequências. Apesar disso, alguns modelos de rede tratam-nos como processadores binários discretos, para assim se facilitar a sua análise matemática.
A actividade dos diferentes elementos da rede é descrita por um vector, chamado vector de estado. O conjunto das ligações entre os elementos da rede é tratado como uma matriz, chamada matriz de conectividade.
Tipicamente, os elementos de uma rede neuronal agrupam-se em camadas. Os sistemas compostos por elementos inter-ligados de uma mesma camada chamam-se sistemas auto-associativos.
Os sistemas de uma única camada ou aqueles que possuem duas camadas são relativamente simples de utilizar e as suas potencialidades tornaram-nos muito estudados pelo primeiro conexionismo. As críticas que, em 1969, Minsky e Papert teceram a um sistema neuronal simplificado, o "perceptrão" (Rosenblatt, 58) levariam ao quase abandono da corrente conexionista durante mais de uma década. Actualmente, os próprios Minsky e Papert reconhecem que as críticas feitas então não são extensíveis a redes neuronais mais complexas, especialmente aquelas que dispõem de "unidades ocultas".
A década de 80 assistiria ao renascimento do conexionismo.
A inserir quando dispuser de mais espaço no servidor
Fig. 1 Exemplo de uma rede neuronal, com unidades de entrada, saída, ocultas e respectivas ligações
Antes de servir para um qualquer fim, uma rede neuronal precisa de passar por uma fase de aprendizagem. Durante essa fase, as ligações entre os elementos da rede são modificadas. Como, na maioria dos casos, não se podem definir à partida quais devem ser os pesos de cada ligação, é necessário deixar a rede passar por uma fase - dita de aprendizagem -, em que ocorrem modificações na matriz de conectividade.
Consegue-se que uma rede aprenda mediante a utilização de algoritmos de aprendizagem. Um desses algoritmos, descrito por Hinton et al, será apresentado adiante.
O estudo dos procedimentos pelos quais é possível levar as redes neuronais a aprender de forma eficiente tem sido o cerne da investigação em conexionismo, pelo menos desde há três décadas.
A forma como o conhecimento é representado numa rede neuronal reveste-se de uma especial importância.
Para que os sistemas neuromórficos nos sejam úteis, é necessário que saibamos fornecer-lhes dados de entrada adequados. Também devemos ser capazes de compreender a resposta que a rede nos dá aos dados que lhe introduzimos. Este é um problema muito debatido, na área da investigação do processamento paralelo distribuído.
Dentro da fase aprendizagem segue-se uma sub-fase em que se apresenta um determinado padrão/vector de entrada com o qual se está à espera de obter uma resposta específica.
Dada a complexidade que muitos sistemas neuronais apresentam, torna-se difícil compreender exactamente o que se passa desde a entrada da informação na rede e a resposta que dela obtemos.
Este problema levanta questões epistemológicas pertinentes, como a consideração de Dominique Massaro de que se terá passado de uma para várias "caixas negras", com a abordagem conexionista. Segundo Massaro (1989), este problema constitui a barreira científica actual a uma aproximação do que ela considera ser um dos problemas mais prementes das ciências cognitivas: o da relação mente-corpo. Estas e outras objecções serão discutidas adiante.
Aos modelos conexionistas actuais de processamento paralelo distribuído o erro não é um estranho: ele é um elemento intrínseco do funcionamento da rede e a sua interferência deve ser sempre tida em conta.
Como se verá na descrição do "Algoritmo de Aprendizagem por Propagação Retrógrada de Erro" (Hinton et al, 1986), a "falta de precisão" que autores como von Neumann (von Neumann, 1958) consideravam ser uma deficiência dos neurónios biológicos pode estar por detrás das maravilhosas capacidades do cérebro humano.
Textos Históricos
Warren S. McCulloch e Walter Pitts (1943,1947)
Descrevem-se sumariamente os principais pontos dos artigos "A Logical Calculus of the Ideas Immanent in Nervous Activity" e "How we Know the Universals", escritos respectivamente em 1943 e 1947 por McCulloch e Pitts. Os dois investigadores procuram aqui compreender, com os dados então disponíveis, o funcionamento dos neurónios e da "actividade nervosa". Estes artigos são pioneiros neste tema, e muitos assuntos importantes do conexionismo são neles descritos pela primeira vez.
McCulloch e Pitts conceberam um modelo de neurónio que havia de ficar para sempre associado aos seus nomes.
O seu modo de funcionamento é simples. Cada neurónio está ligado a uma série de sinapses excitatórias e inibitórias. Para produzir uma resposta, o neurónio precisa de duas condições: 1) que não receba entradas ("inputs") de nenhuma sinapse inibitória e que 2) a soma das entradas das unidades excitatórias ultrapasse o seu limiar de resposta.
O limiar de resposta de um neurónio pode ser visto como a sua inércia, i.e. o "empurrão" que ele precisa para que dispare uma resposta.
McCulloch e Pitts afirmam que a lógica do sistema nervoso é uma lógica proposicional , na medida em que assenta num funcionamento do tipo "tudo ou nada": verdadeiro ou falso, activo ou inactivo, etc.
Para os autores, as ligações entre proposições simples podem originar proposições sofisticadas. Como o cérebro obedece a este princípio, os autores criaram as bases para que ele fosse encarado como um poderoso processador lógico e computacional. Estes dados viriam a influenciar os trabalhos de autores como von Neumann, a quem nos referiremos adiante.
Não é raro encontrar na literatura actual modelos neuronais assentes no neurónio "McCulloch/Pitts" que pretendem ser boas aproximações ao funcionamento neurofisiológico. No entanto, os próprios McCulloch e Pitts afirmam que a sua concepção de neurónio como sistema de produção de respostas do tipo "tudo ou nada" não é plausível como modelo biológico.
Já em 1943, os autores afirmavam que era necessário terem-se em conta determinados fenómenos de natureza continua que ocorriam, por exemplo, em função da aprendizagem.
Num artigo posterior ("How we Know the Universals", 1947), McCulloch e Pitts debruçam-se sobre um problema que ainda hoje intriga a psicologia, a neurofisiologia e a inteligência artificial: o modo como podemos reconhecer a mesma figura em diferentes imagens (problema dos "universais").
Actualmente, ainda não sabemos com precisão como é que conhecemos certos universais, como a face de uma pessoa em duas fotografias diferentes.
McCulloch e Pitts procuram explicar a forma como é possível a rede reconhecer que uma figura geométrica (por exemplo, um quadrado) é sempre a mesma figura geométrica. Eles discutem a forma como uma imagem que é apresentada pela primeira vez (uma "aparição") é transformada numa representação constante.
Sugerem que existem diferentes níveis de processamento numa transformação. Essa ideia levá-los-á a considerar que, anatomicamente, existem diferentes camadas de neurónios, cada uma especializada num determinado passo da transformação. Admitem ainda que o processo pelo qual uma aparição é transformada numa representação constante é possível pela divisão dos elementos da imagem global em vários elementos parciais reconhecíveis. Conseguem-se assim representações globais das imagens apresentadas, a partir dos seus componentes.
A estratégia seguida no artigo de 1947 é bem distinta daquela que foi seguida pelos autores em 1943. No primeiro artigo, McCulloch e Pitts preocuparam-se especificamente com o funcionamento "lógico" do cérebro. Em 1947, diferentemente, preocupam-se com a forma pela qual o cérebro trata os mapas espaciais que nos permitem coordenar a actividade sensorial com a actividade motora: uma abordagem muito semelhante às abordagens do processamento paralelo distribuído.
Em vez de valorizarem o papel da lógica nas funções cerebrais, em 1947 os autores apontam já para o futuro, ao destacarem as potencialidades das representações espaciais e do funcionamento analógico do cérebro.
John von Neumann (1958)
New Haven: Yale University Press, pp.66-82
Um rascunho que von Neumann escreveu em 1945 celebrizou-se por aí aparecer expressa, pela primeira vez, a ideia de um programa residente: partilhando a memória com os dados sobre os quais opera. Esta ideia servirá de referência para a construção de computadores, até aos nossos dias.
Em 1958, um ano após a sua morte, foi publicado um livro em que este pioneiro se debruça sobre problemas como a importância da memória nos sistemas nervosos biológicos, os aspectos estruturais do cérebro que lhe permitem um funcionamento "lógico" e os limites de "precisão" dos neurónios.
No final dos anos cinquenta, ainda havia um grande desconhecimento da forma como os neurónios permitem reter informação, mistério que - apesar dos importantes avanços das últimas décadas - ainda persiste.
Fazendo uma estimativa, von Neumann afirma que a capacidade total da memória humana deverá situar-se à volta dos 10^20 bits. Em 1986, Tom Landauer, baseando-se em dados psicológicos, calcula que a capacidade da memória a longo prazo (MLP) deve rondar os 10^9 bits. Estes números suscitam-nos uma reflexão.
Fazer a medição da capacidade da memória humana em termos de unidades digitais de informação implica que se aceite que o cérebro humano funcione segundo os princípios dos computadores digitais.
O conexionismo aponta num sentido completamente diferente, postulando que o tratamento altamente distribuído da informação: 1) não obedece a uma quantificação estrita e constante, como, p.ex. numa imagem digitalizada (Mahowald e Mead); 2) o tratamento neuronal da informação está dependente de propriedades emergentes do funcionamento simultâneo de uma grande quantidade de neurónios (Hopfield, 1982), propriedades essas que ainda não conhecemos bem (e algumas das quais, certamente, desconhecemos ainda totalmente).
Todas as apreciações psicológicas dos fenómenos neuronais estão sujeitas ao duplo véu da transformação da actividade neuronal em comportamentos observáveis e da própria percepção do observador.
Uma dificuldade importante pode, por exemplo, advir do facto de a informação ser tratada no cérebro ao nível "subsimbólico" (Pagels, 1989) e interpretada pelo observador externo como se de informação simbólica se tratasse. Antes que possamos tecer considerações acerca da capacidade da memória humana, e muitas outras, é preciso que aprendamos a manipular a informação ao nível subsimbólico. Talvez venhamos a descobrir que o conceito de "bit" não é útil para descrever as redes cerebrais e o que delas emerge.
O número a que chega Tom Landauer é mais um indício da utilização sobre-extensiva do termo "bit". Se 10^9 bits parece ser uma quantidade de informação muito grande (certamente respeitável pelos padrões de 1986), a verdade é que ela corresponde a um décimo da capacidade de um computador pessoal actual.
Eventualmente, o número sugerido por von Neumann (10^20 bits) poderá estar mais próximo, quantitativamente, da capacidade de memorização humana, mas também não a representa. A nossa memória é um sistema dinâmico, em que os processos funcionais pelos quais a informação é tratada se sobrepõem aos aspectos estruturais de suporte.
Isto não deve ser interpretado como um argumento a favor da perspectiva mentalista, que despreza a organização paralela do órgão em que a mente humana emerge. Apenas que, mesmo numa rede neuronal, o principio gestaltico de que o todo é mais do que a soma das partes, é válido.
Numa rede neuronal, os neurónios individuais constituem as partes de um todo em que as suas propriedades colectivas (Hopfield, 1982) emergem. Frank Rosenblatt, um dos pioneiros do conexionismo, já sugerira que as propriedades que resultam do funcionamento global das redes as tornavam superiores aos modelos sequenciais de processamento da informação.
Neste livro, von Neumann recorre a uma ideia essencial do conexionismo, que consta já da literatura neurobiológica desde o século XIX: a hipótese do "fortalecimento pelo uso", segundo a qual quanto mais vezes uma ligação sináptica for utilizada, mais forte ela se torna.
Quando comparados com os componentes electrónicos, os neurónios - considera von Neumann - são lentos e pouco precisos, cometendo "erros de arredondamento" suficientemente grandes para tornarem impossível computações em série rigorosas. Neste aspecto, parece que von Neumann confunde a causa com o efeito, sugerindo que é a falta de precisão dos neurónios que levam o cérebro a fazer um processamento paralelo.
Doutra forma, pode entender-se que o processamento paralelo dispensa um maior rigor dos neurónios, uma vez que o rigor do "input" é substituído pela complexidade do processamento distribuído. Os neurónios não têm mais precisão porque não precisam dela e a natureza não é pródiga a desperdiçar recursos.
Aliás, a avaliação da "falta de precisão" dos neurónios é um juízo de valor assente na ideologia que afirma a supremacia do computador digital em relação aos "computadores" biológicos. Da mesma senda haveria de surgir, mais ou menos na mesma época, a expressão cérebro electrónico, que mais não era senão o reflexo - alimentado por temores e esperanças - de que os computadores digitais eram tão bons ou melhores do que os "lentos" e "pouco precisos" cérebros biológicos.
Importa não esquecer que estas eram ideias pouco contestadas na época de von Neumann, para assim situar-mos no seu contexto as anotações da sua obra que se seguem.
Em "The Computer and the Brain", o investigador afirma que, embora nos primeiros computadores (como o ENIAC, que marca o inicio da era do computador digital) se usassem componentes que se assemelhavam - pelo seu comportamento inter-dependente, dinâmico e activo (circuitos "flip-flop") - aos neurónios, a necessidade de reduzir os custos de fabricação dos computadores subsequentes levou a que se adoptassem memórias de tipo passivo, diferenciadas da componente activa das máquinas.
Von Neumann afirma que toda a actividade nervosa do cérebro, os impulsos nervosos, é de natureza digital (sendo analógicos apenas os processos bioquímicos e musculares). Como já discutimos (referindo o trabalho de Mead e Mahowald), a actividade neuronal global não tem uma natureza digital, mas analógica.
O autor discute o conceito de código curto ("short code"), desenvolvido por Alan Turing em 1937.
Um código curto consiste no mais pequeno conjunto de instruções que permitem a um mecanismo de processamento rudimentar funcionar como o mais sofisticado dos computadores, sequenciais ou paralelos.
Através de um código curto, uma máquina pode emular qualquer outra, i.e. pode funcionar como se fosse ela. Apenas necessita de dois requisitos: memória e tempo.
Apresentando as coisas radicalmente: a nossa mente pode emergir de uma máquina de Turing. Para que a última afirmação faça sentido basta que, como a maioria da comunidade científica, aceitemos que todo o processo mental radica num processo neuronal. É a posição "monista" a que Dominique Massaro de refere no livro que consta da bibliografia (Massaro, 1989).
Mas uma máquina deste tipo é um dispositivo sequencial: quer isto dizer que a IA tradicional tem aqui uma arma contra o conexionismo ?
Não. A diferença de posturas entre IA e o conexionismo esquematiza-se da seguinte forma:
Perspectiva tradicional da inteligência artificial:
(Máquina de Turing/Computador Sequencial) -> Mente
Perspectiva do conexionismo:
(Máq.Turing) -> (Computador Paralelo/Cérebro) -> Mente
Esta é uma boa oportunidade para sublinhar um pressuposto fundamental do conexionismo: a mente precisa das propriedades colectivas de uma rede para emergir.
Mais importante do que computar, é comunicar.
A refrescante afirmação de von Neumann: "o sentido é fornecido pelas propriedades estatísticas da mensagem" podia ser retirada de um livro sobre conexionismo dos nossos dias. Ele sugere mesmo que as propriedades estatísticas das redes de neurónios podem, elas próprias, fornecer mecanismos para tratar a informação. Esses mecanismos seriam uma alternativa ao processamento individual de sinais, por parte dos neurónios.
Por fim, no que respeita às considerações que são feitas sobre a possível "linguagem do cérebro", é importante sublinhar que von Neumann acreditava que o "código de operações" do cérebro devia ser radicalmente do da matemática convencional. Esta ideia pode ser vista como percursora da concepção de processamento "subsimbólico" de vários modelos de processamento paralelo distribuído actuais.
Os comentários finais sobre a linguagem, baseados na ideia de Turing sobre os códigos curtos, suscitam algumas reflexões quando complementadas com dados do conexionismo recente: será que o código curto da mente é de natureza subsimbólica ? Se assim for, poderemos compreende-lo ? Farão sentido as duas perguntas anteriores ?
Estes são problemas muito sofisticados que enunciam com novos termos dúvidas muito antigas.
Frank Rosenblatt, 1958
Psychological Review 65: 386-408
Quando foi descrito pela primeira vez, o "perceptrão" criou grandes expectativas. Era a primeira rede neuronal cujas especificações precisas lhe permitiam ser directamente simulada em computador.
O termo conexionismo surge muitas vezes associado com a descrição dos perceptrões. Aqui estava um modelo do cérebro que podia fazer alguma coisa.
Rosenblatt tinha formação em psicologia, pelo que o perceptrão tratava a informação da maneira que um psicólogo consideraria importante.
A rede de Rosenblatt podia ser configurada de modo a exibir um comportamento de complexidade variável. Os perceptrões mais complexos são verdadeiros desafios à análise matemática. Muitos dos últimos trabalhos sobre estas redes foram feitos por físicos, matemáticos e engenheiros, atraídos pela flexibilidade das suas configurações e pelo seu comportamento adaptativo.
O estudo sobre perceptrões permitiu-nos adquirir um sólido (embora incompleto) conhecimento sobre as limitações e potencialidades das máquinas de aprendizagem baseadas em configurações neuronais.
A arquitectura do perceptrão
O perceptrão básico é composto por uma camada de neurónios superficiais, a que Rosenblatt chama "retina". Cada um destes neurónios está ligado aos da segunda camada, chamados "unidades de associação" (ou "unidades A"). As unidades de associação são neurónios dotados de alguma conectividade aleatória, uma vez que recebem informação de diversos pontos - ao acaso - da retina. Essa informação pode ter um efeito inibitório ou excitatório sobre a unidade de associação em causa. O nível das unidades-A está ligado a uma terceira camada de neurónios: as unidades de resposta ou unidades-R.
A activação de uma dada unidade-R é o objectivo da actividade do perceptrão que assim, segundo Rosenblatt, leva a cabo a classificação do padrão que serviu de entrada. Como é desejável que apenas uma unidade-R seja activada com um determinado padrão, selecciona-se aquela cuja resposta é mais pronunciada.
Rosenblatt tinha a convicção de que os primeiros trabalhos teóricos acerca do funcionamento do sistema nervoso partiam de pressupostos errados, nomeadamente quando consideravam que o cérebro procedia a cômputos de funções lógicas.
Segundo ele, a linguagem da lógica booleana e simbólica não se adapta ao funcionamento de um órgão onde o erro e os efeitos de ruído têm um papel principal. Ao contrário do que von Neumann afirmara, o funcionamento do cérebro não é restringido pela "falta de precisão" dos seus componentes. Antes, os componentes biológicos do cérebro estão perfeitamente adaptados para minimizar o caos que, como partes de um sistema complexo, têm que integrar.
O perceptrão apresenta uma estrutura maleável, em que os parâmetros internos das ligações entre as unidades não são pré-especificadas. Está, assim, preparado para se adaptar a um ambiente ruidoso e variável.
Nos primeiros trabalhos sobre perceptrões, a atenção é mais focada na descrição funcional da rede do que na exploração das regras que lhe permitem aprender.
A regra de aprendizagem mais simples que foi apresentada foi a da chamada "auto-organização", pela qual um estímulo é associado a uma unidade de resposta que não estava definida à partida.
Rosenblatt verificou que a capacidade da rede para aprender padrões ao acaso era limitada, diminuindo a precisão das respostas com o número de padrões apresentados. Pelo contrário, a capacidade da rede para aprender a distinguir padrões regulares mas diferenciados era proporcional ao número de configurações possíveis para os padrões de entrada.
Parecia que, procedendo a "classificações" cada vez mais apuradas, os perceptrões estavam - de alguma maneira - a formar "conceitos".
Como foi demonstrado por Minsky e Papert, isso não ocorria, uma vez que certos padrões de entrada que tinham importantes relações entre si não eram "classificados" da mesma maneira.
No entanto, apesar das suas limitações, os perceptrões tinham propriedades inestimáveis, nomeadamente de generalização e de adaptação. Estas redes podiam responder apropriadamente a padrões nunca vistos, apenas por semelhanças entre eles e padrões conhecidos.
Como sistemas de processamento distribuído, os perceptrões não estão dependentes de nenhuma parte essencial para o seu funcionamento. Como o cérebro, são sistemas redundantes.
Rosenblatt estava ciente de algumas das limitações sérias que as suas redes encerravam. Preocupava-o especialmente a completa falta de habilidade dos perceptrões para tratar abstracções simbólicas, exibindo sempre respostas literais.
Ainda hoje, os investigadores do processamento paralelo distribuído se debatem com a dúvida de se é ou não necessário esperar por inovações radicais à teoria das redes para que assuntos como os que preocupavam Rosenblatt possam ser tratados.
Pandemonio: Um Paradigma para a Aprendizagem
Oliver Selfridge, 1958
Textos de um Simpósio no National Physical Laboratory,
em Novembro de 1958, London HMSO, pp. 513-526
O nome deste autor reveste-se de um significado quase mítico na história das máquinas de aprendizagem. De facto, o seu "Pandemónio", assim chamado por o autor atribuir a cada elemento do sistema a designação de "Demónio" (daí Pan, que significa "todo", + Demónio: o conjunto dos demónios), acabou por ficar inscrito no imaginário das pessoas que acompanham os desenvolvimentos científicos.
Selfridge construiu um modelo em que o paralelismo e a simplicidade são notáveis. Surge aqui implementada a ideia de várias unidades serem postas a receber e processar o mesmo padrão de entrada em simultâneo. Cada unidade produz uma resposta, concordante com a sua configuração interna.
Este conceito, embora simples, é extremamente poderoso.
O autor propõe como regra de aprendizagem a regra "subida de colina", muito semelhante ao procedimento que Hebb utiliza nos seus modelos neuronais. A informação que entra na rede passa pelas diversas unidades de forma diferente, consoante o peso das ligações entre elas. Esse peso pode ser compreendido, analógicamente, como uma subida - maior ou menor - que é preciso vencer para atingir o cume de uma colina.
Este autor sugere, como forma de modificar os pesos da rede, que se façam aumentar os pesos das ligações em todas as direcções possíveis, escolhendo-se depois aquela que produz a melhor aproximação ao resultado desejado. Através deste método, consegue-se que - para cada ensaio de aprendizagem - a rede tenha sempre um desempenho igual ou superior ao so ensaio anterior.
Com esta exposição do método de Selfridge, poder-se-ia pensar que ele conduz a uma aprendizagem potencialmente perfeita. Matemáticamente, assim é. Na pratica, verifica-se que os aumentos de precisão da rede, ao tornarem-se cada vez mais pequenos à medida que aumenta o número de ensaios, fazem com que a aprendizagem de padrões complexos seja extremamente difícil.
Outro fenómeno que dificulta a aprendizagem do Pandemónio é comum a outros esquemas de processamento neuronal: o processo de optimização da rede pode conduzir a uma resposta que, sendo menos precisa, se afasta radicalmente da resposta desejada. Quer dizer: a rede pode "mentir" à entrada (input) inicial e os processos de aprendizagem que têm lugar não garantem que ela venha a responder correctamente - apenas asseguram que a "mentira" será cada vez mais esbatida.
Apesar de estes factos, a verdade é que para muitas aprendizagens simples, a rede funciona. Uma das principais aplicações de redes deste tipo é, por exemplo, o estudo topográfico de superfícies.
Selfridge propõe outro método para optimizar o comportamento do sistema, que implica sucessivas restruturações profundas da rede e não a mera modificação do peso das ligações. O autor sugere a destruição das unidades que não são usadas com um mínimo de frequência ou, pelo menos, a sua recablagem total. Utilizando a sua "representação interna" dos dados de entrada, a rede pode escolher a função das novas unidades que resultam da substituição das antigas. Esta é uma técnica que o cérebro usa em grande escala, para integrar novos estímulos ambientais e as suas representações internas.
Em Cognitive Psychology, Neisser (1967) sugere o modelo de Selfridge para as funções cognitivas humanas de representação de padrões e de processamento de informação. Aí, Neisser discute a forma como o Pandemónio tenta lidar com o difícil problema do reconhecimento de padrões visuais.
Num Pandemónio, cada padrão reconhecível da entrada é tratado como um "demónio cognitivo", que está ligado aos "demónios" dos dados de entrada através dos "demónios conceptuais" (fig. #). Há, assim, três camadas de "demónios" organizadas em três níveis de processamento de informação diferentes. A presidir esta hierarquia está um "demónio decisor", que é responsável pela escolha dos "demónios cognitivos" mais activos. Essa escolha permite à rede formar uma representação interna cada vez mais elaborada dos dados de entrada, que é mesmo que dizer aprender.
Diferentemente dos modelos de processamento de informação sequenciais, que têm um alfabeto limitado de padrões reconhecíveis, o Pandemónio pode aprender a representar qualquer padrão, através do método "tentativa e erro".
Em 1960, Doyle simulou um pandemónio num computador convencional e introduziu-lhe os tipos de letra manuscrita de trinta cartas escritas por diferentes pessoas, sendo cada letra manuscrita comparada com o padrão fixo dessa letra. Após esta fase de aprendizagem, introduziram-se tipos diferentes de letra manuscrita e constatou-se que a rede era capaz de identificar correctamente 90% das novas letras.
Noventa por cento de identificações correctas é um resultado animador, mas não satisfatório: em cada dez letras identificadas, uma é-o erradamente (num texto de uma página, o chorrilho de erros é impressionante).
Actualmente, algumas técnicas de reconhecimento óptico de caracteres associam a técnica neuronal a procedimentos de inteligência artificial clássicos, como a busca num dicionário das palavras que mais probabilidades têm de corresponder à palavra a identificar. Mesmo assim, os resultados não são completamente isentos de erro.
Mesmo recorrendo a um dicionário, a máquina pode ver-se numa situação de decidir entre "Ai" e "Aí", por exemplo, que são ambas palavras correctas. Se a frase for "Ai/Aí, meu amor, estás tão longe…", o problema só pode ser resolvido pedindo ajuda a quem conheça a frase original.
Além disso, uma importante fonte de erros dos sistemas de reconhecimento de padrões manuscritos é outra rede neuronal, de complexidade imensamente superior: o nosso sistema nervoso.
Na sua obra de 1957, Neisser deixa explícita a sua convicção de que modelos neuronais como o Pandemónio não precisam de aprender pelo processo de "tentativa e erro" a fazer a análise das características visuais como a separabilidade. Ele apresenta o exemplo de pessoas que uma operação às cataratas lhes permite, pela primeira vez, ver o mundo exterior. Essas pessoas têm, desde o início, capacidade para percepcionar objectos separados.
Esta ideia de que, na descrição de um sistema complexo é preciso integrar tanto elementos conexionistas como de processamento sequencial é também sugerida por Ackley et al (1986) na descrição de um algoritmo para um tipo especial de máquina de aprendizagem: as máquinas de Boltzmann.
Neisser afirma que a aprendizagem da análise de características classificativas, em si extremamente difícil de fazer com uma rede (Minsky (1969) afirma que ela é impossível…) pode ser substituída por dados de categorização definidos a-priori.
Este texto baseia-se num artigo de 1982, escrito por John Hopfield. O artigo intitula-se "Neuronal Networks and Physical Systems with Emergent Collective Computacional Abilities" e tem um forte cunho da área de formação inicial de Hopfield: a física. Por esse motivo, apresentar-se-ão apenas sumariamente as principais - e muito importantes - ideias que este pioneiro das redes neuronais trouxe para esta área.
O contributo de John Hopfield para o estudo dinâmico de redes antecede em muito este artigo, que é fruto de uma laboriosa investigação anterior deste cientísta.
Considerá-lo um texto histórico é discutível, devendo antes ser considerado como um texto de transição. De facto, os trabalhos de Hopfield, assim como outros (como os de Goldberg), são verdadeiros focos de resistência do conexionismo à hegemonia que os modelos de processamento sequencial vieram a assumir na década de setenta.
Como uma semente que, no rigor do Inverno, espera a Primavera, estes trabalhos seriam fundamentais paar o desabrochar do conexionismo contemporâneo.
John Hopfield equaciona alguns princípios matemáticos que suportam a dinâmica de certos modelos de rede neuronal. O autor optou por construir a sua rede directamente a partir de componentes electrónicos, em vez de a simular num computador.
As ligações entre os neurónios são descritas por uma "matriz de ligações". Essa matriz contem informação sobre a força de ligação "sináptica" de todos neurónios conectados.
Quando se faz funcionar a rede, observa-se que esta assume propriedades notáveis. Nomeadamente, torna-se capaz de aprender; além disso, verifica-se que as memórias são distribuídas por toda a rede, e não apenas por uma zona localizada.
Para explicar o comportamento dinâmico da rede, Hopfield usa o conceito de "ponto-fixo". A informação que existe na rede distribuísse por uma superfície com N-dimensões (em que N é o número de neurónios da rede).
Antes de continuar, talvez seja útil propor uma analogia para compreender-mos mais facilmente os conceitos que serão referidos a seguir.
Podemos ver um ponto fixo como o ralo de uma bacia, para onde escorre a água. A água escorre para lá, porque é o ponto mais baixo da bacia. Numa rede neuronal, a água são os estados do sistema e os pontos fixos são estados para onde a sua dinâmica tende preferencialmente.
Como os pontos fixos exercem uma atracção sobre os estados do sistema, diz-se que são "atractores".
Chamamos "bacia de atracção" de um ponto fixo a toda a área cujos estados tendem para esse ponto fixo.
A matriz de ligações contém a informação necessária para modelar a superfície do espaço multidimensional da rede, especificando todas as bacias de atracção que aí existem. Essa matriz modifica-se com a aprendizagem da rede, pelo que a sua superfície N-dimensional está sujeita a constantes mutações.
É na posição dos pontos fixos que reside a informação aprendida pela rede.
Durante o treino da rede, em que se pretende aumentar a sua aprendizagem, o que ocorre é que a matriz de ligações é sucessivamente modificada de forma a que as bacias de atracção sejam cada vez mais fundas, impedindo assim que a informação se escape.
A informação que foge das bacias de atracção dos pontos fixos constitui a fonte de erro da rede. É por isso que quanto mais fundas forem as bacias de atracção, mais precisa serão as respostas da rede.
Dois fenómenos interessantes a notar nas redes descritas por Hopfield são a redundância e o esgotamento:
Verifica-se que quando se desactiva uma parte da rede esta não perde nenhum dos dados que contém, uma vez que estes estão uniformemente distribuídos.
Constata-se também que se a quantidade de dados ultrapassar os limites de armazenamento da rede dá-se um fenómeno de diluição entre os novos dados e os dados pré-existentes. Não pretendendo ser um modelo directamente extrapolável para os fenómenos cerebrais, não restam dúvidas de que existem certos paralelismos.
Também interessante é o fenómeno de "idée fixe" ou obsessão, que ocorre quando a bacia de atracção de um ponto fixo se torna de tal forma larga e profunda que todas as outras bacias escorrem para lá. Quando isso acontece, a rede tende a produzir sempre a mesma resposta, quaisquer que sejam os dados de entrada.
Um dos pressupostos das redes de Hopfield é o de que as ligações neuronais são simétricas, i.e. as ligações de entrada do neurónio têm o mesmo peso que as suas ligações de saída. Do ponto de vista neurológico, isso não é admissível.
Numa extensão das redes de Hopfield, em que podemos considerar a existência de duas partes de uma redes neuronal, uma simétrica (rede mestra) e outra assimétrica (rede serva), conseguiram-se melhores resultados de aprendizagem. Neste tipo de redes, a parte simétrica funciona como programadora da parte assimétrica.
É interessante verificar como o comportamento das redes de Hopfield tem muitas semelhanças com fenómenos neurofisiológicos.
O reconhecimento de padrões olfactivos, por exemplo, implica uma actividade colectiva dos neurónios do bolbo olfactivo. Constatou-se que essa actividade partilha muitas propriedades com as observadas nas redes de Hopfield.
A compreensão das redes neuronais que Hopfield nos trouxe, importada da física, é bem demonstrativa do carácter interdisciplinar das ciências cognitivas.
A psicologia tem na área das ciências cognitivas uma vasto e prometedor campo de diálogo, comunicação e esperança.
Textos do Conexionismo Recente
Misha A. Mahowald e Carver Mead (1991)
Scientific American, Vol. 264, Nº 5, pp. 40-46, Maio de 1991
Este artigo é extremamente interessante na medida em que, baseando-se nos estudos sobre a retina, demonstra como os princípios do processamento neuronal da informação permitem a concepção de novos dispositivos que, além de clarificarem alguns aspectos da natureza da computação biológica, laçam luz sobre zonas inacessíveis, profundas, do cérebro.
A retina é uma janela para o cérebro. A sua função é a de converter a luz em sinais nervosos que, depois de um processo ainda mal conhecido, serão interpretados como imagens visuais.
As condições ambientais a que a retina humana se tem que adaptar variam da escuridão de uma noite sem estrelas até ao brilho ofuscante do primeiro dia de sol a seguir a um nevão.
A fina camada de tecido que a compõe, constituída por neurónios cujo funcionamento é cerca de um milhão de vezes mais lento do que o dos dispositivos electrónicos actuais, consegue realizações que até hoje nenhum supercomputador conseguiu.
Na retina, os neurónios estão ainda mais compactados do que no cérebro. No pequeno volume que é o seu, a retina humana contém 1/1000 dos neurónios do cérebro.
Os dispositivos electrónicos convencionais de processamento de imagem assemelham-se pouco à retina humana. Consistem tipicamente em matrizes de fotoreceptores que transformam em sinais a luz que sobre cada um incide. Esses sinais são enviados a um computador potente que tenta extrair figuras geométricas dos dados assim reunidos.
Por contraste, a retina contém cinco camadas de células, através das quais a informação flui, tanto na vertical (de uma camada para outra) como na horizontal (circulando pelas várias células da mesma camada).
Os autores defendem que a retina não capta passivamente a informação visual. Pelo contrário, tratar-se-á de um processo dinâmico e sofisticado.
Das camadas de neurónios da retina, aquelas que conhecemos melhor são as três mais superficiais: a camada dos fotoreceptores, a camada das células horizontais e a camada das células bipolares.
É importante descrever sumariamente o que se sabe de cada uma destas camadas, dada a importância que o conhecimento do funcionamento de redes de neurónios reais tem para a construção de modelos de redes simuladas. Os autores deste artigo, por exemplo, usam esse conhecimento para construírem uma retina artificial, que descreveremos adiante.
Sabe-se que a primeira camada (a dos fotoreceptores) é composta por células finas ("rod cels") e células em cone. Estas células convertem a luz incidente em sinais eléctricos.
As células horizontais da segunda camada estão intrincadamente ligadas entre si. Cada uma delas, ainda, é responsável pela ligação de um fotoreceptor a uma célula bipolar, da terceira camada. As células bipolares estão especializadas na comparação dos sinais recebidos de uma célula fotoreceptora e de uma célula horizontal. A sua resposta está relacionada com a maior ou menor discrepância entre o sinal de ambas.
Das células bipolares, a informação é transmitida para a camada das células amacrinas, para ir depois atingir as células gangliares. Daí, a acção passa a decorrer nos escuros bastidores do cérebro profundo.
A função das células amacrinas e gangliares é ainda mal conhecida, daí ela não ser descrita. Mead e Mahowald usaram apenas três camadas na sua retina artificial, correspondente às três primeiras camadas da retina humana.
Sabemos que os neurónios da segunda camada, as células horizontais, têm propriedades de conectividade interessante. Como foi dito, elas estão interligadas mas o grau como são afectadas pela actividade das vizinhas depende da sua maior ou menor proximidade. Isto tem repercussões notáveis ao nível do processamento de imagens, como veremos.
A função adaptativa, que permite à retina humana obter informação do exterior em condições de luminosidade diversas é muito importante. A retina recorre a alguns truques biológicos para desempenhar a sua função: as células finas estão especializadas na captação de luz ténue, enquanto que os cones captam luz mais intensa. Os cones têm, além disso, a propriedade de auto-modificar os limites da sua resposta fotosensitiva, consoante o tempo que estiverem expostos a uma dada luminosidade.
O processo de adaptação não permite apenas obter informação mais detalhada sobre uma imagem, mas também suprime características supérfluas: vastas zonas uniformes produzem sinais mais fracos, porque a informação que os fotoreceptores captam é atenuada com o sinal das células horizontais. Os contornos, por outro lado, causam forte actividade nas células bipolares porque os receptores da luz de cada lado do contorno captam uma nítida diferença de luminosidade.
Uma outra característica interessante é a percepção de movimento. Acontece que as células horizontais têm um funcionamento mais lento que os fotoreceptores, pelo que quando um fotoreceptor capta indícios de movimento num objecto, a camada das células horizontais ainda está a processar a informação anterior. Ao contrário de uma câmara de vídeo, que capta uma imagem de cada vez, a retina aposta muito na análise das modificações que ocorrem numa dada imagem.
A partir da segunda metade da década de 80, consideram Mahowald e Mead, as neurociências já dispunham de um sólido conhecimento sobre o modo como os neurónios operavam. Havia já muita confiança na possibilidade de simular em dispositivos electrónicos muita actividade neuronal relevante.
A retina artificial
No modelo que os autores conceberam, cada ponto da imagem é tratado por três unidades de níveis distintos, procurando-se imitar a retina real: um fotoreceptor, uma célula horizontal e uma célula bipolar.
Também na retina artificial cada fotoreceptor produz um sinal proporcional à intensidade luminosa que capta. Possui, além disso, um circuito de retorno ("feed-back") para tornar mais lenta a adaptação a diferentes intensidades luminosas da imagem, imitando-se assim as células de tipo cone naturais.
Para imitar o comportamento das células horizontais, Mahowald e Mead recorrem a circuitos electrónicos que avaliam a luminosidade média captada pelos fotoreceptores numa dada área e podem ainda enviar um sinal aos fotoreceptores no sentido de pressiona-los a reduzir a sua resposta a uma dada iluminação uniforme.
O resultado final do dispositivo é produzido pelos componentes electrónicos que imitam a função das células bipolares, comparando a actividade de cada fotoreceptor com a da célula horizontal a que este está ligado.
A inserir quando dispuser de mais espaço no servidor
Fig. 2 Esquema da retina artificial, com os seus três níveis de tratamento da informação
Semelhanças com a retina natural
As experiências com a retina artificial demonstraram que esta apresenta comportamentos muito semelhantes aos observados na retina natural.
Verificou-se, nomeadamente, que as reacções à modificação da luminosidade de uma área restrita, à alteração da intensidade luminosa total e à alteração do fundo da imagem eram similares às reacções da retina biológica.
Ilusões ópticas
Eis algo que certamente iria despertar a atenção de Wertheimer, pioneiro e impulsionador da psicologia da gestalt: os testes com a retina artificial vieram a demostrar que ela era ludibriável por algumas ilusões ópticas que iludem a percepção dos seres humanos.
A retina de Mahowald e Mead respondia, por exemplo, à situação de um quadrado cinzento projectado num fundo branco e num fundo preto da mesma forma que nós o fazemos: considerando mais claro o quadrado em fundo escuro (ilusão do contraste simultâneo).
Outras ilusões a que a retina artificial é sensível são a ilusão de Mach (em que surgem bandas ilusórias numa zona de grande contraste luminoso) e a ilusão de Herring (que consiste na percepção de zonas cinzentas nas intersecções de uma rede de linhas brancas).
Estas ilusões ópticas explicam-se pelo carácter selectivo com que a retina trata a informação visual. O facto de se encontrarem no modelo artificial permite-nos ganhar confiança na interpretação do funcionamento da retina biológica.
Ao contrario do paradigma digital que domina os modelos computacionais do processamento da informação, a modelação neuronal demonstra como o ruído e a degradação da informação não podem ser descurados na simulação de qualquer propriedade que tenha emergência num sistema neuronal (para uma opinião semelhante, veja-se o resumo do artigo de Rosenblatt).
Ao contrario dos modelos sequenciais e digitais de processamento de informação, para os quais a mudança é sempre uma fonte de dificuldades e de problemas para resolver, os modelos neuronais precisam intrinsecamente da mudança para poderem operar. Estão, por isso, melhor adaptados aos contextos reais. Também por esse motivo, os modelos neuronais permitem uma maior imersão no ambiente, contrariamente aos modelos digitais que supõem uma separação entre o sistema de percepção e o meio exterior.
Aos autores não restam dúvidas de que os sistemas neuronais têm mais capacidade para se adaptarem a situações imprevisíveis e a novos contextos do que outros modelos, pois não estão tão dependentes do valor absoluto das variáveis do meio (como as condições de iluminação), sendo capazes de atenuar as diferenças ambientais.
Mas até que ponto se pode expandir esta estratégia para estudar a restante actividade cerebral ? Mahowald e Mead deixam algumas reflexões:
A zona funcional de troca de informação, no cérebro, ocupa apenas um ou dois por cento do espaço total. O volume restante é preenchido pelas infra-estruturas que a suportam. O cérebro teve necessidade de optimizar a sua organização interna, já que as possibilidades de conectividade, sendo extraordinárias, não são infinitas.
Esta pista pode servir como principio orientador da investigação futura do cérebro.
Os futuros desenvolvimentos nesta área deverão ir no sentido de melhorar a qualidade da visão das retinas artificiais (o que implica aumentar a resolução das imagens e acrescentar as funções das células amacrinas e gangliares).
Recentes aplicações das retinas artificiais (1996) permitiram devolver parcialmente a visão a pessoas que tinham sofrido danos de retina. Podemos nunca vir a compreender a mente, mas com recompensas destas todo o esforço vale a pena.
que aprendem com a experiência
Geoffrey E. Hinton
Todos os textos que foram apresentados são muito importantes para compreender-mos a perspectiva conexionista. Sem conhecermos os aspectos históricos e (pelo menos) alguns dos "textos angulares" de um dado campo científico, dificilmente compreenderíamos certas limitações e potencialidades que os autores contemporâneos apontam nos seus trabalhos.
Este é um texto em que se espelham os últimos avanços no estudo dos sistemas neuromórficos. Hinton faz parte do grupo de investigadores mais activo da última década, no âmbito do conexionismo.
O artigo, escrito em 1986, com David Rumelhart e Ronald Williams (vd. Bibliografia) intitulado "Learning Internal Representations by Back-propagating Error" foi extremamente inovador. Nele era apresentado um algorítmo, desenvolvido por Paul Werbos em 1974, que permitia a aprendizagem eficaz de representações internas por uma rede neuronal.
Apesar do algoritmo da retropropagação já contar com mais de dez anos, quando Hinton, Rumelhart e Williams (1986) o aplicaram numa situação pratica de aprendizagem, ele foi re-descoberto, em vários centros de investigação ao mesmo tempo. Tal aconteceu pelo imperativo urgente de se encontrar um método de optimização da aprendizagem de redes.
Nesta secção, um artigo de Hinton, publicado em 1991, será apresentado nos seus aspectos gerais. Não se entrará aqui em explicações detalhadas dos procedimentos que o autor expõe, uma vez que isso será tratado na Parte II.
Uma das características mais impressionantes do cérebro humano, considera Hinton, é a sua capacidade para aprender sem que para isso seja necessário fornecer-lhe instruções explícitas de alguma espécie.
Existem muitas teorias acerca da forma como o cérebro processa a informação. A construção de modelos artificiais de redes neuronais serve, também, para contrastar algumas dessas teorias.
Quando construímos uma rede devemos é necessário debater quais as características essenciais dos neurónios e das suas interligações. Depois, é preciso conceber-se um programa de computador com vista à simulação das características propostas.
O conhecimento que temos dos neurónios é incompleto. Também o poder de computação de que dispomos é limitado.
Como vimos no primeiro texto introdutório, o número de neurónios do nosso cérebro situa-se algures entre 10^11 e 10^12, cada um com milhares de interligações. Por muito impressionados que possamos estar com as "proezas" dos computadores artificiais actuais, é bom termos sempre de reserva a humildade que nos permite superar as vertigens do abismo computador/cérebro.
Todos os modelos neuronais, diz-nos Hinton, são uma mera aproximação grosseira da realidade, i.e. das redes de neurónios biológicas. Ainda assim, estes modelos estão a ajudar-nos a compreender como logra o cérebro realizar tarefas baseadas numa actividade auto-didática.
Um neurónio típico do cérebro humano recolhe sinais procedentes de outros neurónios através de um conjunto de estruturas denditricas. A emissão das respostas é feita através dos axónios, que podem ramificar-se numa miríade de sub-ligações.
A aprendizagem é produzida pela variação da efectividade das sinapses.
As redes de neurónios artificiais são compostas por "unidades" interligadas. Cada sinapse tem um determinado peso, que é modificável. Cada unidade converte a actividade total das ligações aferentes num número único. Se esse número for maior do que o limiar de resposta daquela unidade, então produz-se uma actividade que é comunicada às ligações eferentes.
A inserir quando dispuser de mais espaço no servidor
Fig. 3 Representação idealizada de um neurónio e da sua estrutura funcional de comunicação
A conversão da informação que chega ao neurónio pelas unidades aferentes faz-se em duas etapas. Em primeiro lugar, cada actividade aferente é multiplicada por um coeficiente de ponderação (ou "peso"). A soma de toda a actividade comunicada pelas unidades aferentes constituí a "entrada total ponderada". Em segundo lugar, o neurónio produz uma resposta, que resulta da transformação da entrada total numa actividade de saída.
É possível fazer variar o comportamento das redes neuronais artificiais através da modificação dos coeficientes de ponderação e do tipo de função de transferência empregue.
A função de transferência pode ser enquadrada em um de três tipos: linear, umbral ou sigmóide. A diferença entre estes tipos de função será explicada na Parte II. As funções de tipo sigmóide são aquelas que mais se aproximam de uma descrição do comportamento real dos neurónios biológicos. De qualquer modo, é importante saber que qualquer uma delas é apenas uma aproximação grosseira.
A inserir quando dispuser de mais espaço no servidor
Fig. 4 Representação dos processos implicados na actividade de um neurónio numa situação simplificada em que consideramos apenas uma unidade aferente e uma ligação para um dado neurónio.
O tipo de rede mais comum organiza-se estruturalmente em três níveis. Existe um nível das unidades de entrada, que comunica com o nível intermédio das unidades ocultas, por sua vez ligadas ao nível das unidades de saída.
As unidades de entrada recebem a informação "bruta" que é subministrada à rede. A actividade de cada unidade oculta é determinada pelas unidades de entrada e pelos pesos das conexões entre si e as unidades de entrada. Da mesma forma, a actividade das unidades de saída é determinada pelas ligações entre elas e as unidades ocultas, assim como pelo próprio nível de actividade das unidades ocultas.
A inserir quando dispuser de mais espaço no servidor
Fig. 5 Exemplo de uma rede neuronal, com unidades de entrada, saída, ocultas e respectivas ligações
O grande interesse deste tipo de rede advém das unidades ocultas, que têm liberdade para construir as suas próprias representações da entrada.
Os processos através dos quais se procura ensinar estas redes a desempenhar tarefas é abordado na secção "Princípios Gerais de Redes Neuronais", cuja leitura prévia é recomendável.
Hinton dá o exemplo de uma tarefa específica: suponhamos que queríamos ensinar uma rede a reconhecer escrita manual. É sugerido um de muitos procedimentos possíveis.
O autor constrói uma rede em que a actividade de uma matriz de sensores de dezasseis por dezasseis (num total de 256 sensores) recebe os dados de uma dada região e codifica-os. A rede proposta têm, assim, 256 unidades de entrada.
O número de unidades de saída é de dez, de modo a que cada unidade de corresponda a um digito. O número de unidades ocultas não é especificado.
Inicialmente, as respostas são ao acaso. Quer dizer, existe uma discrepância entre a actividade produzida pela rede e a actividade desejada. Para que a resposta da rede se aproxime cada vez mais daquela que nós pretendemos, é preciso modificar cada peso da rede, de modo a que todas as ligações sejam optimizadas para a tarefa em questão.
Cada peso, ao ser modificado, interfere de maneira diferente na variação do erro da rede, i.e. nem todos os pesos têm a mesma importância. Por essa razão, "a magnitude da modificação de cada peso deve ser proporcional à taxa relativa da variação do erro respectivamente à variação desse peso" (Hinton, 1991). Este conceito não é apenas difícil de compreender e expor verbalmente: ele envolve o cálculo de derivadas e, como Hinton nos diz, é difícil de calcular.
O método usado para aplicar este procedimento de ajuste das ligações de uma rede de neurónios apareceu primeiro descrito na tese de doutoramento de Paul Werbos. Na Parte II faremos uma discussão detalhada dos diversos passos do algoritmo.
Este procedimento chama-se retroprogagação (ou propagação retrógrada). Designa-se assim por se basear no ajustamento dos pesos da rede no sentido contrário ao da circulação da informação até que se atingir uma resposta adequada. Tira-se partido da matriz de conectividade de modo a saber-se quais são as unidades ocultas e de entrada que estão ligadas a uma unidade de saída cuja resposta se pretende corrigir.
Suponhamos que uma dada unidade de resposta, unidade-R, produz "7" quando se pretendia que ela produzisse "5". Seria necessário ir corrigindo todos os pesos da rede que estão implicados na resposta de unidade-R, diminuindo-os até se obter "5". Note-se que "7" e "5" não têm, necessariamente que corresponder a quantidades. Podíamos escrever "X" e "Z", "#" e "&", ou quaisquer outros símbolos, desde que seja possível estabelecer uma relação de grandeza entre eles. O importante é que o programa que controla a rede saiba que, se estiver a ser produzida uma resposta "7" quando se pretende "5", é necessário atenuar o sinal que chega à unidade.
Até ao momento de se obter a resposta pretendida, é preciso ir reduzindo o factor de ajustamento dos pesos da rede, i.e. a rapidez de variação dos pesos em cada ensaio. Isto porque a rede não passa, discretamente de "7" para "5".
Imaginemos que o factor de ajustamento dos pesos da rede é 2. Ao procurar passar da resposta inicial ("7") para a resposta desejada ("5"), a rede irá fazer ajustes sucessivos até que a resposta produzida se situe cada vez mais no intervalo "4" a "6". Ao reduzir-se o factor de ajustamento para 1, a rede acabará provavelmente por produzir a resposta desejada, "5". Diz-se "provavelmente" porque as redes tendem a ser sistemas complexos, e muitas vezes o caos é determinante na sua dinâmica.
Na verdade, o exemplo anterior é uma simplificação, como se pode apreender de uma leitura atenta. O peso do factor de ajustamento não está tão obviamente relacionado com a resposta produzida. Além disso entre "5" e "7" não há, necessariamente uma diferença de duas unidades. De qualquer forma, é um bom exemplo para se começar a compreender o procedimento exposto neste artigo, que é um dos mais importantes - ou talvez mesmo o mais importante - do conexionismo actual (a Parte II apresenta-o com mais profundidade).
O grande interesse do algoritmo de retropropagação tem a ver com o facto de ele ser surpreendentemente eficaz no treino de redes com vários níveis e, em especial, daquelas que possuem uma ou mais camadas de unidades ocultas. Podemos mesmo arriscar-nos a dizer que o renascimento no conexionismo foi possível graças a este procedimento, uma vez que passou a haver um método suficientemente bom para treinar redes cuja complexidade é de várias ordens de magnitude superior às sugeridas pelo primeiro conexionismo.
Nestas redes, as unidades ocultas produzem representações internas dos dados que são fornecidos ao nível de entrada. Para que o algoritmo seja eficaz é preciso que a rede esteja num meio rico em estímulos ambientais.
Com redes deste tipo, os investigadores têm conseguido conceber redes capazes de reconhecer dígitos manuscritos ou prever taxas cambiarias. Como curiosidade, refira-se que a Bolsa de Valores de Nova Iorque tem feito uso deste procedimento para ajudar os correctores. Um outro exemplo, menos economicista, é a aplicação das redes neuronais artificiais na área da detecção de células pré-cancerosas.
Uma critica que foi, desde o inicio apresentada ao algoritmo da retropropagação tem a ver com a alegada discrepância do modelo com as redes de neurónios biológicos. A contestação que foi feita ao modelo baseia-se na crença de que, nas redes biológicas, a informação nunca circular em sentido contrário. O próprio Hinton reconhece essa objecção, mas afirma que ela não deve ser sobrestimada. Este investigador alerta-nos para o facto de o cérebro ser muito rico em redes (uma ironia ?) e que é perfeitamente plausível que existam circuitos de re-alimentação em cada rede. Quer dizer, no cérebro não é preciso que a informação circule em sentido contrário através da própria rede, uma vez que aí se pode dar ao luxo de usar redes de suporte cuja única finalidade pode ser reconduzir a informação ao nível de entrada, até que se obtenha uma resposta satisfatória.
A prova de que existem ligações estreitas entre o procedimento da propagação retrógrada e o funcionamento do cérebro pode ser encontrada nos trabalhos de autores como Richard Andersen (MIT) e David Zipser (UCSD) (que Hinton cita, mas não dá indicação da data dos estudos). Esses cientistas demonstraram que a actividade de neurónios que, no cérebro, recebem e transforma a informação da retina, é muito semelhante à das unidades artificiais ocultas.
Outra grande critica que os investigadores fizeram prende-se com a ideia de que as redes deste tipo tendem a produzir respostas que se adequam bem a um contexto local, mas que não são generalizáveis: i.e. globalmente tenderiam a ser inúteis.
O que se veio a verificar é que, contrariamente ao que se supunha, não é necessário que os resultados globais sejam muito bons para que a rede tenha um funcionamento adequado.
As pessoas que tentarem usar um programa para simulação de redes de neurónios em computadores poderão constatar uma outra objecção ao algoritmo de retropropagação: a velocidade com que a rede aprende depende de forma inversa e exponencial com o tamanho da rede (em especial com o número de camadas, e - estritamente - com o número de ligações) bem como com a finura da aprendizagem desejada.
Dizer-se que o tempo que a rede demora a realizar uma tarefa cresce exponencialmente é o mesmo que dizer-se que ele aumenta muito mais depressa do que o tamanho da rede. Isto constitui uma limitação do procedimento, em particular na sua extensão a redes cujo número de ligações seja comparável às que existem no cérebro.
É importante demorar-nos um pouco neste pormenor para reflectir um pouco sobre o que já apresentámos.
O problema de se saber se existe ou não um método mais eficaz para lidar com redes muito complexas é crucial. Está em jogo saber-se se existe a possibilidade de simplificar a organização do cérebro humano, mantendo funcional uma estrutura que permita a emergência da mente humana.
A questão, posta a nu é: será que o cérebro humano só pode ser imitado (ou emulado - ver, no artigo de von Neumann, a exposição das ideias de Alan Turing) por ele mesmo ?
Compreende-se a importância desta questão se atender-mos ao facto de que o conexionismo considera a mente como resultante das propriedades emergentes de uma rede. Se não for possível conceber um desenho mais eficaz para as estruturas cerebrais do que aquelas que a lotaria da natureza e da evolução criou, então haverá que esperar até que algum dia, eventualmente, a tecnologia nos permita simular 10^15 ligações neuronais em escassos milisegundos. É das poucas vezes que não faz muito sentido esperar que nos saia a lotaria.
Uma vez que o cérebro é uma estrutura circular, em que não se pode falar claramente de níveis de entrada e de saída independentes, é razoável acalentar esperanças de usar procedimentos de aprendizagem mais simples do que o da propagação retrógrada de erro. Hinton sugere até que a circulação da informação na rede pode ser, ela própria, uma forma de temporizar a sua actividade e, também, de lograr um comportamento sequencial sincronizado.
Continuando a exposição do artigo de Hinton, é de ressaltar um outro aspecto em que se espelha outro problema por resolver pelos modelos conexionistas.
De facto, nós aprendemos espontaneamente, sem que seja necessário estarem constantemente a apresentar-nos exemplos. A grande questão é a de se saber como pode uma rede artificial ser pro-activa, carecendo de conhecimentos e de professor.
Para ensinar redes a reconhecer padrões novos, os investigadores têm sugerido a utilização de proto-conceitos de qualidade.
Por exemplo, no reconhecimento de uma face, não é necessário terem-se em conta todas as faces de um conjunto aprendido previamente, bastando apenas que exista uma descrição geral mínima dos elementos que constituem uma face e a sua localização aproximada numa imagem.
O objectivo é conseguir-se um procedimento de aprendizagem não supervisionada.
Nesses procedimentos, joga um papel fundamental o conseguir-se que a rede produza ao nível de saída uma aproximação da informação apresentada ao nível de entrada. Para isso, fazem-se competir as unidades ocultas da rede, de modo a que seja seleccionada a configuração mais adequada, ao longo de aproximações sucessivas. A isto chama-se "aprendizagem competitiva".
A grande dicotomia que tem dividido os autores nesta área tem sido a do carácter totalmente distribuído, ou mais localizado da informação na rede. De modo a atingir-se uma maior economia de codificação, usaram-se métodos cujo resultado final acabou por ser a menor flexibilidade da rede, devido a um tratamento mais localizado da informação.
O facto de o cérebro ser bastante tolerante às falhas e aos erros é um sinal de que o caminho não deve ser por aqui. De qualquer das formas, às vezes os caminhos menos apelativos escondem surpresas: "aventurar a vida, tudo está nisso", já dizia Santa Teresa.
Outros procedimentos de aprendizagem são apresentados por Hinton, no seu artigo. Em particular, o método de codificação demográfica é muito interessante e Hinton debate-o em pormenor.
O principal interesse do procedimento de tratamento demográfico de características de informação tem a ver com a ideia de uma existem unidades da rede especializadas na resposta a certas características, como, no caso de uma imagem da face: o nariz, a boca, os olhos, e a sua localização relativa. Isto é, a rede pode estar a reconhecer um nariz, mas - por este estar num sítio errado da imagem - as unidades que reconhecem uma face não são activadas (fig. #).
Continuamos sem saber quais são os procedimentos de aprendizagem e as representações que o cérebro utiliza. Geoffrey Hinton deixa patente a sua forte convicção de que, mais cedo ou mais tarde, os métodos descobertos através dos modelos de redes neuronais artificiais acabarão por convergir com aqueles que a evolução seleccionou.
Existem já potentes algoritmos de aprendizagem, muitos dos quais têm já importantes aplicações praticas. Esses procedimentos serão cada vez mais aperfeiçoados através dos dados empíricos que resultarão da investigação sobre o cérebro.
Da mesma forma, também o estudo das estruturas cerebrais tem ganho com os avanços do conexionismo.
Para podermos aspirar a um saber sobre a os aspectos profundos da mente temos que atravessar um caminho cheio de desafios e obstáculos.
O portal que dá acesso a um dos caminhos das ciências cognitivas é sustentado por dois pilares: o da investigação neurobiológica e o da investigação sobre sistemas neuronais artificiais. No passado, aqueles que se interessaram pelo estudo da mente escolheram outras portas e percorreram longos caminhos sem alcançarem a "sabedoria".
O curso que percorremos agora é mais exigente, e não existem tantas boleias de conceitos mal definidos para nos ajudar. Também nada nos garante que tenhamos escolhido a via correcta.
Resta-nos seguir em frente e, se nos tivermos enganado, aqueles que ainda tiverem força podem tentar ainda outro portal, sustentado por outros pilares.
É que, de facto, estamos a chegar a um ponto - em ciência - em que todo o progresso (da lógica e da matemática à psicologia e à sociologia) está comprometido com o entendimento desse enigma ancestral que é a mente.
Aplicação Prática de uma Rede Neuronal
Nesta segunda parte, apresenta-se um programa concebido com o objectivo de demonstrar o funcionamento de um tipo específico de rede neuronal. O procedimento usado pelo programa baseia-se nos passos do algoritmo de "Retropropagação de Erro" (Werbos, 1974), descritos em 1986 por Hinton et al, na revista Nature e apresentados em Neurocomputing: Foundations of Research (vd Bibliografia).
Provavelmente, não teria muito cabimento fazer uma descrição detalhada, nem das fórmulas matemáticas que servem de base à simulação computacional (que são uma simplificação de um algoritmo muito sofisticado, que envolve procedimentos de cálculo só domináveis através de uma formação matemática de nível superior), nem dos procedimentos de programação em que se transformam essas fórmulas.
Ainda assim, as pessoas mais interessadas nos aspectos minuciosos da concepção do programa, podem encontrar comentários diversos na listagem de Neuro-n em QBASIC. Os comentários estão em inglês, porque os próprios comandos das linguagens de computador são nessa língua, de modo que é comum os programadores fazerem uso da língua inglesa também para as anotações ao código-fonte. A versão em Pascal foi concebida para ser o mais rápida possível, sacrificando em certa medida o aspecto gráfico da apresentação, onde se gasta muito tempo de computação.*
Alguns dos comentários têm apenas como função facilitar futuros desenvolvimentos do programa, que está longe de ser perfeito.
De seguida, apresentam-se as instruções elementares para fazer uso do programa Neuro-n.
Instruções de Utilização
0. Para instalar o programa:
a) no Windows 95:
- seleccionar Iniciar ("botão" do canto inferior esquerdo do ecrã);
- aí, seleccionar Executar (penúltima opção do menu);
- escrever, na linha de comandos:
a:\instalar;
b) no MS-DOS:
- escrever a: e cd a:\ ;
- escrever instalar ;
1. Para iniciar o programa:
depois de instalado o programa - ver anterior - deve-se:
a) no Windows 95:
- seleccionar Iniciar;
- escolher Executar;
- escrever, na caixa de comandos:
c:\develop\neuro1, ou c:\develop\neuro2, ou c:\develop\neuro3;
b) no MS-DOS:
- escrever, na linha de comandos:
c: e, em seguida: cd c:\develop ;
- escrever:
neuro1, ou neuro2, ou neuro3.
2. Para sair de uma parte do programa ou para terminá-lo:
- carregar em "." (ponto final);
(escolhendo "." no ecrã de abertura, interrompe-se o programa);
3. Para iniciar novamente a execução do programa, após interrupção:
carregar simultaneamente em "Shift" e em "F5";
4. Para fechar o programa:
- interromper a sua execução (ver ponto 2);
- escolher "File" (Alt + F);
- aí, seleccionar "Close".
Notas: é possível inspeccionar o programa e experimentar introduzir-lhe alterações, interrompendo-o (como descrito no passo 2) e modificando o código-fonte.
Como fazer o Neuro-n aprender a representar palavras:
1. Quando o programa começa, pergunta se se pretende modificar a configuração da rede e a palavra a aprender.
* Imagem
Se quisermos que a rede aprenda outra palavra, com - digamos - quatro letras, é preciso modificar a configuração da rede. Para isso respondemos com "Yes" (Y) à pergunta "Change ?" que o programa nos faz.
De seguida a rede pede-nos os novos dados. Podemos experimentar à vontade. É preciso apenas ter presentes algumas regras elementares.
Assim, nC deve ser sempre coincidente com o número de letras da palavra que queremos fazer a rede aprender. Para aprender "CASA", a rede deve estar configurada com nC=4, por exemplo.
O parâmetro nL diz respeito ao número de camadas que a nossa rede vai conter. Habitualmente nL é 3, mas podem-se experimentar redes com o número de camadas que o nosso computador permitir.
Por fim, nX, diz respeito ao número de ligações (sinapses) eferentes que cada neurónio tem. É aconselhável que nX não seja menor do que nC, porque pode acontecer que algum neurónio fique sem nenhuma ligação ao nível anterior, tornando-se, nesse caso, numa fonte de erro incontrolável para o sistema.
Como se verá, as versão Neuro2 é mais potente do que a versão Neuro1, e a versão Neuro3 aprende palavras maiores do que a Neuro2. A diferença entre as três versões é, portanto, de uma capacidade crescente.
Também se verá que muitas aprendizagens mais complexas são inacessíveis, mesmo para o Neuro-n, versão 3.
Quando a rede começa a aprender uma palavra, as ligações entre os neurónios têm um peso ao acaso. Por isso, a resposta da rede é completamente desencontrada daquela que pretendemos no fim.
* Imagem
A figura anterior exemplifica o início do treino de uma rede com três camadas (nL=3). Os restantes parâmetros da rede são nC=3 (três unidades por camada, uma para cada letra da palavra "Sim") e nX=3 (três ligações por neurónio).
Repare-se nos restantes indicadores da imagem.
No canto superior esquerdo, temos o factor de ajustamento (fa), que inicialmente é 0.5. Quanto mais pequeno for o valor do factor de ajustamento, mais precisos são os ajustamentos dos pesos. Começa-se com um valor elevado até que a rede fique em estado de equilíbrio estacionário. Podemos verificar se a rede já chegou a um estádio de equilíbrio, se o sinal das unidades do nível de saída está a variar entre +(1) e -(1) em cada ensaio: esta é a utilidade e o significado dos números "1" que aparecem na linha de baixo da imagem.
O valor de EN, no canto superior direito, representa o número do ensaio, i.e. o número de vezes que se apresentou "Sim" (ou outra palavra) à rede. O estranho conjunto de caracteres que aparece no canto superior esquerdo, abaixo do fa, é a resposta que a rede, no ensaio número 12 (EN=12) dá à palavra "Sim": a sua interpretação do padrão de entrada "Sim", com as suas representações internas do momento. Os tons de cinza, que espero ficarem perceptíveis na impressão, representam a actividade dos neurónios (que são representados pelos quadrados)e a força das suas ligações (que são as linhas que os unem).
*
ImagemA figura anterior mostra a mesma rede, mas após o ensaio 203. As actividades das unidades de saída já são muito próximas daquelas das unidades de entrada (tons de cinza semelhantes). Em vez de "Oik", a rede já reconhece o padrão de entrada como "Sim". Foi preciso reduzir o factor de ajustamento até 0.003125 para que as ligações ficassem calibradas como desejado.
A modificação do factor de ajustamento fez-se carregando em "+" e "-" de cada vez que a rede atingia um equilíbrio estacionário (os "1s" da fila de baixo a variarem entre "-1" e "+1" para cada novo EN.
Aqui chegados, carregamos em ".", uma vez que a rede já alcançou uma resposta satisfatória. O programa questiona-nos então se desejamos conceber outra rede de neurónios. Se o desejarmos devemos responder com "Yes" (Y).
* Imagem
Para terminar-mos, basta carregar em "N".
Em caso de se desejar fazer melhorias ao programa, podem ser consultadas as listas do mesmo em diversas linguagens, que se apresentam no final deste trabalho.
É possível que o disco que acompanha estas páginas contenha uma versão melhorada de Neuro-n, ou mesmo outros programas que se venham a fazer relacionados com esta área.
Nota: tenciono substituir as versões de Neuro-N em QBasic e Turbo Pascal por uma versão em Visual C++. Mantive as instruções das primeiras versões do programa porque podem servir de ilustração do modo como funcionam os programas deste tipo.