Baixe o app para aproveitar ainda mais
Prévia do material em texto
ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 57 REDES NEURAIS Edivaldo Teodoro Resumo Neste artigo procuramos descrever os principais tópicos referentes ‘as redes neurais’, desde seu surgimento até propostas de implementações em inúmeras aplicações atuais. Iniciando com uma introdução sobre o assunto, trazemos ao leitor noções introdutórias sobre como funcionam as redes neurais artificiais, no que elas são e que não são similares ao sistema nervoso biológico, e como pode ser simulada a plasticidade neuronal (base do aprendizado) em uma rede neural artificial. Para tornar mais claras as interessantes aplicações desse novo paradigma, damos um exemplo de uma rede neural artificial que é capaz de reconhecer automaticamente a voz, diferenciando as palavras "branco" e "preto ". Palavras -chave: Redes neurais; Plasticidade; Inteligência artificial REDES NEURAIS Como Funciona o Sistema Nervoso O sistema nervoso detecta estímulos externos e internos, tanto físicos quanto químicos, e desencadeia as respostas musculares e glandulares. Assim, é responsável pela integração do organismo com o seu meio ambiente. É formado basicamente por células nervosas que se interconectam de forma específica e precisa, formando os chamados circuitos neurais. Através desses circuitos, o organismo é capaz de produzir respostas estereotipadas que constituem os comportamentos fixos e invariantes (por exemplo, os reflexos), ou então, produzir comportamentos variáveis em maior ou menor grau. Todo ser vivo dotado de um sistema nervoso é capaz de modificar o seu comportamento em função de experiências passadas. Essa modificação comportamental é chamada de aprendizado e ocorre no sistema nervoso, através da propriedade denominada plasticidade cerebral. ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 58 O Neurônio A célula nervosa, ou simplesmente, neurônio, é o principal componente do sistema nervoso. Considerada sua unidade anatomo-fisiológica, estima-se que no cérebro humano existam, aproximadamente, 15 bilhões dessas células, responsáveis por todas as funções do sistema. Existem diversos tipos de neurônios com diferentes funções, dependendo da sua localização e estrutura morfológica mas, em geral, estas se constituem dos mesmos componentes básicos: • o corpo do neurônio (soma) constituído de núcleo e pericário, que dá suporte metabólico a toda célula; • o axônio (fibra nervosa) prolongamento único e grande que aparece no soma. É responsável pela condução do impulso nervoso para o próximo neurônio, podendo ser revestido ou não por mielina (bainha axonial), célula glial especializada; • os dendritos que são prolongamentos menores em forma de ramificações (arborizações terminais) que emergem do pericário e do final do axônio, sendo, na maioria das vezes, responsáveis pela comunicação entre os neurônios através das sinapses. Basicamente, cada neurônio possui uma região receptiva e outra efetora em relação a condução da sinalização. A Sinapse É a estrutura dos neurônios através da qual ocorrem os processos de comunicação entre os mesmos, ou seja, onde ocorre a passagem do sinal neural (transmissão sináptica) através de processos eletroquímicos específicos, isso graças a certas características particulares da sua constituição. Foto retirada do site: http://www.epub.org.br/cm/n05/tecnologia/nervoso.htm ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 59 Em uma sinapse os neurônios não se tocam, permanecendo um espaço entre eles denominado fenda sináptica, onde um neurônio pré-sináptico liga-se a um outro denominado neurônio pós-sináptico. O sinal nervoso (impulso), que vem através do axônio da célula pré-sináptica chega em sua extremidade e provoca na fenda a liberação de neurotransmissores depositados em bolsas chamadas de vesículas sinápticas. Este elemento químico se liga quimicamente a receptores específicos no neurônio pós-sináptico, dando continuidade à propagação do sinal. Um neurônio pode receber ou enviar entre 1.000 a 100.000 conexões sinápticas em relação a outros neurônios, dependendo de seu tipo e localização no sistema nervoso. O número e a qualidade das sinapses em um neurônio pode variar, entre outros fatores, pela experiência e aprendizagem, demonstrando a capacidade plástica do SN. Organização Funcional Funcionalmente, pode-se afirmar que o SN é composto por neurônios sensoriais, motores e de associação. As informações provenientes dos receptores sensoriais aferem ao Sistema Nervoso Central (SNC), onde são integradas (codificação/comparação/armazenagem/decisão) por neurônios de associação ou interneurônios, e enviam uma resposta que eferece a algum orgão efetor (músculo, glândula). Kandel sugere que o "movimento voluntário é controlado por complexo circuito neural no cérebro interconectando os sistemas sensorial e motor (...), o sistema motivacional". As respostas desencadeadas pelo SNC são tão mais complexas quanto mais exigentes forem os estímulos ambientais (aferentes). Foto retirada do site: http://www.epub.org.br/cm/n05/tecnologia/nervoso.htm ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 60 Para tanto, o cérebro necessita de uma intrincada rede de circuitos neurais, conectando suas principais áreas sensoriais e motoras, ou seja, grandes concentrações de neurônios capazes de armazenar, interpretar e emitir respostas eficientes a qualquer estímulo, tendo também a capacidade de, a todo instante, em decorrência de novas informações, provocar modificações e rearranjos em suas conexões sinápticas, possibilitando novas aprendizagens. A Plasticidade Neural Pesquisas em Neurobiologia têm comprovado que a plasticidade do sistema nervoso é uma característica única em relação a todos os outros sistemas orgânicos. Conforme deGroot, "a plasticidade neural é a propriedade do sistema nervoso que permite o desenvolvimento de alterações estruturais em resposta à experiência, e como adaptação a condições mutantes e a estímulos repetidos". Desenho: http://www.epub.org.br/cm/n05/tecnologia/plasticidade.htm A figura ilustra a expansão da representação cortical das pontas dos dedos no tecido cerebral de um macaco. Conforme a gravura, as pontas dos dedos 2, 3 e 4, que antes da estimulação diferencial apresentavam uma determinada área de representação, expandiram sua área de córtex depois de 3 meses da estimulação (representada por círculos nas pontas dos dedos). Este fato é melhor compreendido através do conhecimento morfológico-estrutural do neurônio, da natureza das suas conexões sinápticas e da organização das áreas ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 61 associativas cerebrais. Sem dúvida nenhuma a "aprendizagem pode levar a alterações estruturais no cérebro" (Kandel). A cada nova experiência do indivíduo, portanto, redes de neurônios são rearranjadas, outras tantas sinapses são reforçadas e múltiplas possibilidades de respostas ao ambiente tornam-se possíveis. Portanto, "o mapa cortical de um adulto está sujeito a constantes modificações com base no uso ou atividade de seus caminhos sensoriais periféricos" (Kandel). REDES NEURAIS ARTIFICIAIS As redes neurais surgiram por volta dos anos 50, quase ao mesmo tempo em que os primeiros computadores que ocupavam prédios inteiros. A idéia era simular as atividades neurais humana, definindo componentes lógicos similares aos neurônios naturais. O neuro biologista McCulloch e o estatístico Pitts foram os primeiros apropôr o conceito de um neurônio como sendo uma unidade de processamento que recebia vários estímulos como entrada e gerava um sinal baseado no resulta do somatório destes estímulos. O que torna as redes neurais atrativas é principalmente a característica peculiar de serem estruturas capazes de aprender comportamentos baseados em um treinamento com ou sem um “tutor”. Claro que o computador não vai freqüentar a escola, o que existe são algoritmos de aprendizagem que modificam as conexões que interligam os neurônios. Estes algoritmos podem ensinar a rede a responder a certos estímulos da mesma maneira. Por exemplo, se a letra “a” (devidamente digitalizada) é mostrada à rede de vários tamanhos e formas, ela poderá generalizar todas estas entradas e dar uma única resposta para o conjunto de “a(s)” apresentado. As redes neurais artificiais representam um novo paradigma metodológico no campo da Inteligência Artificial, ou seja, no desenvolvimento de sistemas computacionais capazes de imitar tarefas intelectuais complexas, tais como a resolução de problemas, o reconhecimento e classificação de padrões, os processos indutivos e dedutivos, etc. Ao contrário dos sistemas heurísticos, assim chamados porque procuram obter sistemas inteligentes baseados em lógica e em processamento simbólico (por exemplo, os sistemas especialistas), as redes neurais artificiais se inspiram em um modelo biológico para a inteligência, isto é, na maneira como o cérebro é organizado em sua arquitetura elementar, e em como a mesma é capaz de executar tarefas computacionais. Da mesma maneira que no cérebro, as redes neurais artificiais são organizadas na forma de ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 62 um número de elementos individuais simples (os neurônios), que se interconectam uns aos outros, formando redes capazes de armazenar e transmitir informação provinda do exterior. Outra capacidade importante das redes neurais artificiais é a auto-organização, ou seja, através de um processo de aprendizado, é possível alterar-se os padrões de interconexão entre seus elementos. Por este motivo, as redes neurais artificiais são um tipo de sistema conexionista, no qual as propriedades computacionais são resultado dos padrões de interconexão da rede. Na indústria, as redes neurais estão sendo muito utilizadas em aplicações para controle de processos industriais; elas se adequam ao uso das redes, pois lidam com parâmetros que mudam com o passar do tempo. As características das redes vêm bem a calhar, porque a cada nova configuração que o processo assume, o software adapta- se respondendo aos novos estímulos, de maneira que pode controlar o processo e seus novos parâmetros. Um modelo baseado em Redes Neurais é chamado um modelo empírico, diferentemente de modelos construídos que se utilizam de princípios básicos (equações químicas ou físicas). Por isso, as redes neurais necessitam de uma boa quantidade de dados para resolver os problemas propostos. Pode-se afirmar que as Redes Neurais são o que há de mais avançado em termos de representação do conhecimento. Nos defrontamos, na realidade, com um sistema capaz de agir de maneira próxima a forma como o humano adquire e representa seu conhecimento. Baseado em estudos neurológicos, o desenvolvimento das Redes neuronais procurou formalizar um padrão matemático para as reações elétricas dos neurônios humanos. Desta forma, podemos estabelecer uma representação computacional para este procedimento. A Rede terá tantos ‘nós’ quanto mais precisa for a resposta desejada a um estímulo externo. Por restrições óbvias inerentes a todo conhecimento incipiente, as Redes Neurais não estão capacitadas para lidar com uma diversidade de temas, como o faz o cérebro humano. Atuando sobre um tema específico, a Rede assimila o conhecimento sobre este, não através de regras (como um humano na escola) mas através da experimentação (como um humano na prática). A rede deve ser treinada sobre o tema, ou seja, lhe serão fornecidos dados de entrada e implementadas propagações de forma que a alteração dos pesos ao longo da Rede forneça uma saída compatível com a resposta conhecida àquele estímulo pré-determinado. Desta forma, balanceamos os pesos até obtermos um padrão de respostas aos estímulos, compatível com o que se conhece. Na verdade, o processo de aprendizado é bastante empírico. ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 63 O neurônio artificial O neurônio artificial é uma estrutura lógico-matemática que procura simular a forma, o comportamento e as funções de um neurônio biológico. Assim sendo, os dendritos foram substituídos por entradas, cujas ligações com o corpo celular artificial são realizadas através de elementos chamados de peso (simulando as sinapses). Os estímulos captados pelas entradas são processados pela função de soma, e o limiar de disparo do neurônio biológico foi substituído pela função de transferência. Combinando diversos neurônios artificiais podemos formar o que é chamado de rede neural artificial. As entradas, simulando uma área de captação de estímulos, podem ser conectadas em muitos neurônios, resultando, assim, em uma série de saídas, onde cada neurônio representa uma saída. Essas conexões, em comparação com o sistema biológico, representam o contato dos dendritos com outros neurônios, formando assim as sinapses. A função da conexão em si é tornar o sinal de saída de um neurônio em um sinal de entrada de outro, ou ainda, orientar o sinal de saída para o mundo externo (mundo real). As diferentes possibilidades de conexões entre as camadas de neurônios podem gerar n números de estruturas diferentes. Exemplo de uma Rede Neural Artificial de 2 camadas com 4 entradas e 2 saídas ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 64 As variantes de uma rede neural são muitas e, combinando-as, podemos mudar a arquitetura conforme a necessidade da aplicação, ou ainda, conforme o gosto do projetista. Basicamente, os itens que compõem uma rede neural e, portanto, sujeito a modificações, são os seguintes : • conexões entre camadas • camadas intermediárias • quantidade de neurônios • função de transferência • algoritmo de aprendizado Auto-Organização O processo da plasticidade cortical em uma rede neural artificial foi implementado em uma rede neural do tipo Kohonen, que foi escolhida por possuir certas similaridades funcionais com redes neurais biológicas, como é o caso da auto-organização da rede, processo fundamental nos sistemas orgânicos vivos. O esquema básico do modelo de Kohonen constitui uma rede neural de treinamento não supervisionado e de apenas duas camadas. Diz-se que esse tipo de rede possui um paradigma topológico, uma vez que a rede pode apresentar qualquer formato geométrico bidimensional em sua camada de saída, como hexagonal, retangular, triangular e outras. Depois de escolhida a rede neural e definida a sua arquitetura, segue uma fase chamada de treinamento, ou seja, uma fase cuja tarefa é "treinar" a rede neural com uma coleção de estímulos (sinais complexos, voz, imagens, etc.) que se deseja que a rede reconheça quando em operação. ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 65 Na fase treinamento, os neurônios da camada de saída competem para serem os vencedores a cada nova iteração do conjunto de treinamento. Ou seja, sempre que é apresentada, à rede neural, uma entrada qualquer, existe uma competição entre os neurônios da camada de saída para representar a entrada apresentada naquele momento. Esse aprendizado, nada mais é do que modificações sucessivasnos pesos dos neurônios de forma que estes classifiquem as entradas apresentadas. Dizemos que a rede neural "aprendeu" quando ela passa a reconhecer todas as entradas apresentadas durante a fase de treinamento. Assim é que se traduz o aprendizado da rede neural, pois, havendo pelo menos um neurônio que represente uma determinada informação (um estímulo apresentado na entrada), sempre que este estímulo for apresentado a esta rede neural, aquele neurônio que foi treinado para representá-lo, automaticamente irá ser disparado, informando assim, qual o estímulo que foi apresentado para a rede neural. Lembramos ainda que, uma forte característica das redes neurais é a capacidade de reconhecer variações dos estímulos treinados. Isto significa, por exemplo, que apresentando um estímulo X qualquer, semelhante a um estímulo Y que fez parte do conjunto de treinamento, existe uma grande probabilidade de que o estímulo X seja reconhecido como o estímulo Y treinado, revelando, assim, a capacidade de generalização da rede neural artificial. Simulando a Plasticidade A implementação da plasticidade foi realizada, oportunizando a rede neural ampliar a quantidade de neurônios vencedores na camada de saída. Dessa forma, diversos neurônios do córtex artificial assimilam as informações do conjunto de treinamento, diferentemente da rede neural de Kohonen que, originalmente, possui poucos neurônios como vencedores, deixando os neurônios restantes da camada de saída como inativos. Expansão do número de neurônios vencedores ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 66 Esse aumento dos neurônios vencedores foi realizado mudando alguns parâmetros da função de transferência do neurônio artificial, cuja analogia poderia ser feita com a mudança do limiar de disparo dos neurônios biológicos. Alterados, os neurônios disparam com menos energia acumulada, assimilando informações apresentadas nas entradas da rede neural. Isso provoca um aumento razoável de neurônios, representando informações na camada de saída. É claro que não significa que todos os neurônios serão vencedores, mas a maior oferta de neurônios aptos a vencedor aumenta também a probabilidade da existência de vencedores. Um Exemplo de Aplicação Para verificação da atuação da plasticidade como fator relevante na elevação da taxa de acerto da rede neural, foi projetada uma rede com 20 neurônios dispostos em 5 linhas e 4 colunas. Essa rede, possuindo todos os atributos da rede de Kohonen, mais a implementação da plasticidade, foi treinada para reconhecer apenas duas palavras faladas: /branco/ e /preto/. Essas palavras foram lidas a 8000 Hz e reduzidas a 100 sinais de entrada mediante diversas técnicas de processamento de sinal digital. Espectro do sinal de voz das palavras /branco/ e /preto/. Configurada para iterar 3000 vezes o conjunto de treinamento de duas palavras, a rede apresentou a seguinte plasticidade durante o tempo de treinamento (realizado em um computador tipo 486 DX 2 100 MHz com 24 Mbytes de memória ram) : ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 67 1 Iteração no : 650 vizinhança : 4 2 Iteração no : 1200 Vizinhança : 3 3 Iteração no : 1500 vizinhança : 2 4 Iteração n o : 3000 vizinhança : 0 Neurônios Verificando a evolução do quadro acima, os neurônios vencedores mudam dinamicamente durante o tempo de treinamento. Nesses quadros, a principal mudança é verificada do 3o para o 4o quadro, onde os neurônios [1,0], [1,1] e [1,2], que representavam a palavra falada /preto/, passam a representar a palavra falada /branco/. Outro aspecto que pode ser notado é a mudança da posição do neurônio vencedor principal, que acontece do quadro 1 para o quadro 2. No quadro 1, o principal neurônio vencedor para a palavra /branco/ é o neurônio [4,0] (apontado com preenchimento cinza), já no quadro 2, com 550 iterações a mais que o quadro 1, o ponto ótimo é transferido para o neurônio [3,0]. Quando uma entrada é apresentada, apenas um neurônio é apontado como vencedor, porém, pronunciando-se a mesma palavra diversas vezes, nem sempre é o mesmo neurônio o vencedor. Isto significa que, apesar da palavra pronunciada ser a mesma, ela não traz na sua forma de onda a exata semelhança com a onda usada para o treinamento e, dessa forma, poderá não tender exatamente para o mesmo neurônio, podendo disparar algum outro neurônio da região primária, ou mesmo de uma região secundária. Esta mudança de neurônio vencedor, conforme o estímulo recebido, ocorre somente quando existe a possibilidade de mudar de neurônio vencedor, ou seja, quando existem outros neurônios que representam a mesma informação. Isto é um fato real e constante na plasticidade artificial. ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 68 Assim, a figura 10 apresenta todos os neurônios vencedores apontados durante o treinamento, sendo que, na parte acinzentada, podemos verificar os neurônios ativados durante a fase de testes. Nota-se, na figura 10, que três neurônios, tanto para a palavra /preto/ quanto para a palavra /branco/, são os mais sinalizados durante o uso da rede treinada, mesmo havendo outros neurônios habilitados para a mesma tarefa. Principais neurônios ativados Na tabela abaixo, podemos verificar que, para a palavra /branco/, os neurônios [0,1] e [0,3] são os mais ativados, enquanto que para a palavra /preto/, de longe, o neurônio [2,1] é o mais ativado. A diferença de ativação neuronal se deve ao fato de ter havido pequenas mudanças de entonação na pronúncia. /branco/ /preto/ Neurônio Vencedor Taxa de resposta Neurônio Vencedor Taxa de resposta 0,0 10 % 3,0 15 % 0,1 35 % 2,1 40 % 0,3 40 % 4,3 25 % Total 85 % Total 80 % Pronunciando a palavra /branco/ com mais ênfase na 1a sílaba /bran/, o neurônio ativado é o [0,0], e havendo maior ênfase na 2 a sílaba /co/, o neurônio ativado é o [0,1]. CONCLUSÃO Redes Neurais são técnicas computacionais que apresentam um modelo matemático inspirado na estrutura neural de organismos inteligentes e que adquirem conhecimento ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 69 através de experiência. Uma grande Rede Neural Artificial pode ter centenas ou milhares de unidades de processamento, já o cérebro de um mamífero pode ter bilhões de neurônios. O estudo das Redes Neurais é um dos ramos da Inteligência Artificial que mais se desenvolve, atraindo pessoas de diversas áreas do conhecimento. A neuro computação, técnica que emula sistemas nervosos biológicos em programas ou circuitos de computador, foi concebida há mais de cinqüenta anos, mas só recentemente experimentou ampla utilização prática, graças à intensa pesquisa teórica nesse campo e ao enorme desenvolvimento na área dos microprocessadores. A grande característica das redes neurais é sua capacidade de aprendizado, ou seja, a possibilidade de estabelecer, de forma precisa, relações complexas entre diversas variáveis numéricas, sem que seja imposto qualquer modelo pré concebido. É uma abordagem revolucionária, que contrasta com a filosofia hoje consagrada para o tratamento de dados, a computação programada, que requer algoritmos rigorosamente detalhados para processá-los. Ela apresenta diversas vantagens em relação a outras técnicas de modelamento e controle, como regressão estatística, sistemas especialistas e, talvez, modelos matemáticos. Os campos de aplicação para as redes neurais são vastos: análise e processamento de sinais, controle de processos, classificação de dados, reconhecimento de padrões, análise deimagens, diagnósticos médicos e outros. Na área industrial destacam-se as utilizadas na prevenção de desvios de processo e em sistemas híbridos, associados a técnicas de lógica difusa e sistemas especialistas, para a detecção de problemas de manutenção. Trata-se normalmente de problemas com quantificação matemática difícil, ineficaz ou impossível. Apesar de ser uma técnica que já encontrou inúmeras aplicações na vida real, ela ainda apresenta alguns aspectos obscuros. A pesquisa sobre elas ainda continua em ritmo febril, e é de se esperar num futuro próximo que seu uso se torne ainda mais fácil, mesmo para usuários inexperientes. ARTIGO © Network Technologies, Nova Odessa, v.1/2, n.1/2, p.57-70, 2002/2003 – ISSN: 1677-7778 (versão impressa). 70 REFERÊNCIAS ANDRÉ, S. A. e MARCO, A. N. P. Inteligência artificial e redes neurais. 1997. Disponível em: <http://sites.uol.com.br/santin/trabalhos/inteligencia.htm>. Acesso em: mar. 2003. VELLASCO, M. M. Redes neurais. Núcleo de Pesquisa em Inteligência Computacional Aplicada – PUC Rio. 2001. Disponível em: <http://www.ele.puc- rio.br/labs/ica/icahome.html>. Acesso em: mar. 2003. Sites utilizados: www.epub.org.br www.geocities.com/capecanaveral/runway/4303/ www.ele.ita.br/cnrn www.din.uem.br/ia/neurais/ www.dca.fee.unicamp.br/~vonzuben/courses/ galaxy.einet.net/.../engineering-and-technology/computer-technology/artificial-inteligence/ Edivaldo Teodoro Faculdades Network E-mail: ediweb@bol.com.br
Compartilhar