- Por Pablo de Assis
- 18 de Setembro de 2009
A humanidade sempre desenvolveu máquinas para nos auxiliar. Elas aperfeiçoam nossa potência ou velocidade, reduzindo o tempo de trabalho ou aumentando nossa força. São poucas as máquinas que fazem o que o ser humano não faz, mas todas fazem o que fazemos de uma forma muito mais eficaz.
Recentemente, principalmente a partir da Terceira Revolução Industrial, com o desenvolvimento de computadores e a implantação de sistemas informatizamos no trabalho, muitos pesquisadores vêm desenvolvendo máquinas para nos ajudar a pensar melhor. Conseguimos até agora, com bastante eficácia, melhorar nossa força, nosso rendimento, nossa velocidade, mas mal arranhamos a capacidade de melhorar nossa inteligência. Isso acontece principalmente porque mal conhecemos como ela funciona.
Muitas pessoas defendem que a inteligência é fruto do pensamento lógico e desenvolveram vários sistemas lógicos diferentes, culminando na criação dos computadores. Outras pessoas defendem que a inteligência humana é fruto de como nosso cérebro é organizado. Esse grupo desenvolveu, na década de 1940 e 1950, a teoria das Redes Neurais.
Essas redes eram tão promissoras, que vários pesquisadores acharam que isso não daria certo ou esse modelo nunca alcançaria as previsões feitas até então. Durante mais de 20 anos, as pesquisas sobre redes neurais caíram em descrédito e mais ênfase foi dada à computação lógica conhecida e utilizada atualmente.
Porém, de um tempo para cá, principalmente devido ao avanço das neurociências, as pesquisas sobre redes neurais foram retomadas e muita coisa foi desenvolvida. Existem pesquisas, por exemplo, para o desenvolvimento de neurocomputadores. Para se entender melhor o que são as Redes Neurais e como seria os computadores baseados nelas, vale à pena conhecer como funcionam os neurônios.
O Comportamento dos Neurônios
Os neurônios são as células que formam o nosso cérebro. Elas são compostas basicamente por três partes: os dentritos, que captam informações ou do ambiente ou de outras células, o corpo celular ou Soma, responsável pelo processamento das informações, e um axônio, para distribuir a informação processada para outros neurônios ou células do corpo. Só que uma célula dificilmente trabalha sozinha. Quanto mais células trabalharem em conjunto, mais elas podem processar e mais eficaz torna-se o trabalho. Logo, para o melhor rendimento do sistema são necessários muitos neurônios.
Dos Neurônios às Redes Neurais
Foi pensando em como os neurônios trabalham que pesquisadores desenvolveram neurônios artificiais. Cada um tem dois ou mais receptores de entrada, responsáveis por perceberem um determinado tipo de sinal. Eles também possuem um corpo de processadores, responsável por um sistema de feedback que modifica sua própria programação dependendo dos dados de entrada e saída. Finalmente, eles possuem uma saída binária para apresentar a resposta “Sim” ou “Não”, dependendo do resultado do processamento.
Um neurônio artificial é capaz de um único processamento. Cada entrada recebe somente um tipo de sinal ou informação. Como um neurônio pode possuir várias entradas, então ele pode perceber diferentes sinais. Porém, ligar vários neurônios similares em rede, faz com que o sistema consiga processar mais informações e oferecer mais resultados.
Por exemplo, é possível criar um sistema para identificação de bananas e maças. Para tal, cria-se neurônios sensíveis a cor e forma. Os de cor percebem o amarelo e o vermelho. Os de forma percebem o redondo e o comprido. Cada neurônio, então, possui quatro entradas, uma para cada informação.
Para obter um melhor rendimento do sistema, cria-se uma rede em camadas: uma primeira camada com quatro neurônios (um para cada sinal de entrada), uma segunda camada oculta de processamento com três neurônios e uma camada de saída com dois neurônios, um para avisar quando é uma maça e outro para avisar quando é uma banana.
O segredo não está na arquitetura dessa rede, mas na forma como ela processa: Redes Neurais não rodam programas, elas aprendem!
O aprendizado das Redes Neurais
Não existe uma programação pré-definida dos neurônios artificiais, como existem nas portas lógicas utilizadas nos circuitos computacionais. Ao invés disso, eles possuem um sistema de feedback que modifica sua programação. Cada informação processada gera um peso, dependendo do resultado. Se for um acerto, ela ganha um ponto, se for um erro, ela perde meio ponto.
Dessa forma, a rede neural do exemplo acima testa várias vezes a percepção do objeto. A cada acerto, os neurônios envolvidos no processamento ganham um ponto e aquela rede é reforçada. A cada erro, esses neurônios perdem meio ponto. Dessa forma, o sistema cria a rotina de seguir o caminho com mais pontos sempre. Quanto mais tentativas, mais aprimorado fica o sistema, chegando, ao final de um processo de aprendizado, a executar tarefas quase sem erro algum.
A grande vantagem disso é que para executar tarefas, uma rede neural não precisa guardar instruções de comando e executá-las de forma lógica, como num computador tradicional. Ao invés disso, a rede aprende o que é preciso ser feito e executa a função. Dessa forma, uma mesma rede, se ela for capacitada com os neurônios necessários para tal, é capaz de executar várias funções diferentes, independente de espaço de memória.
Isso porque em uma mesma rede é possível criar várias regras diferentes. No exemplo acima, podemos ainda ensinar a rede a detectar bolas amarelas ou bastões vermelhos, utilizando os mesmos neurônios e as mesmas regras. A diferença é q precisaríamos capacitá-las com neurônios de saída extras para cada nova informação que queremos dela e outros neurônios ocultos para facilitar o processamento. Mas isso não implica em criarmos novas regras ou novas programações, somente em ensinar o sistema e executar novas funções utilizando a mesma rede existente.
Em sistemas mais elaborados, uma rede neural consegue aprender qualquer função que uma pessoa possa saber e não há limites para a quantidade de informação que ela possa processar.
Inteligência Artificial (IA)
As redes neurais são principalmente utilizadas para criar sistemas de inteligência artificial. Os computadores tradicionais podem fazer isso de forma simulada, mas sua principal função é seguir regras ou comandos oferecidos pelo usuário. Assim, a inteligência artificial gerada por computadores tradicionais são simulações de inteligência real, ou seja, apresentam respostas segundo regras e comandos de um programa pré-estabelecido.
Acontece que a verdadeira inteligência não é a capacidade de seguir regras, mas sim a capacidade de resolver problemas. Mais inteligente é o sistema que consegue resolver problemas diferentes de forma eficaz. Baseado nisso, temos então duas formas diferentes de inteligência artificial, ou IA, a simbólica e a conexionista.
A IA simbólica simula o comportamento inteligente. Ela é baseada em uma programação que indica quais respostas devem ser dadas diante de determinados comandos. Essa IA é a utilizada em programas “inteligentes”, como corretores ortográficos ou simuladores dos mais variados. A questão é que esses programas dificilmente aprendem coisas novas, somente se você incluir novas programações. Essa é a IA mais comum.
A IA conexionista simula a estrutura do cérebro, pois acredita-se que a inteligência está na forma de processar informação e não na informação processada. Como o sistema do cérebro é inteligente, usa-se tal modelo para desenvolver IA. Assim, os sistemas de IA baseados em redes neurais conseguem aprender com seus erros e executar diferentes processos, independente de instruções.
As Redes Neurais e o Perceptron
Não só pensando nisso, mas principalmente tentando desenvolver melhores formas de inteligência artificial, alguns pesquisadores começaram a estudar o funcionamento dos neurônios. Em especial, Frank Rosenblatt pesquisou a estrutura da retina humana. Ela é composta por vários neurônios sensoriais, responsáveis por perceber as cores e as formas. Cada um desses neurônios transmite uma resposta em rede para vários outros neurônios que então enviam suas informações para o cérebro para finalmente processá-las e transformá-las em imagens. Essa é a base de funcionamento dos neurônios artificiais, que levaram ao desenvolvimento do Perceptron.
O Perceptron foi à primeira máquina criada para processamento de informação feita sobre o sistema de redes neurais. Ele foi o primeiro sistema de processamento pequeno o suficiente para ser usado por uma pessoa, diferente dos computadores da época que ocupavam salas enormes com seus processadores. Ele foi considerada por muitos como o pai do computador pessoal.
Atualmente, o Perceptron é conhecido como a forma de processamento de informação baseado em redes neurais. Ele é construído com neurônios artificiais, formando redes de processamento. Uma rede dessas é chamada de Perceptron.
Diferenças entre Computador e Perceptron
A melhor forma de compreender a singularidade desse sistema é compará-lo ao computador. Talvez a característica mais marcante de um Perceptron seja que ele não executa programas, mas os aprende. Em um computador, instala-se instruções de comando que formam um programa. Em um perceptron, treina-o para executá-los. As informações não são gravadas, mas aprendidas.
Um computador funciona a partir da execução de operações lógicas, rodando programas que podem
er reduzidos à combinação de procedimentos de lógica booleana. Por sua vez, um perceptron é capaz de processos não-lógicos, comparações e transformações, pois seus sistema não é condicionado a um funcionamento lógico e linear.
Ao mesmo tempo, um perceptron é capaz de múltiplos processamentos e testes de hipóteses em paralelo, enquanto computadores funcionam com um processamento em cada circuito de cada vez. Isso faz com que a velocidade de processamento do perceptron seja muito maior do que a de um computador tradicional.
Finalmente, um computador está preso à sua programação. Ele só executa aquilo que foi programado. Enquanto isso, um perceptron pode perceber novas possibilidades, aprender com as tentativas e erros e apresentar novos resultados.
Conclusão
Sabe-se que nenhuma máquina é capaz de superar a inteligência humana. Muitas são capazes de vários processamentos por segundo, de calcular inúmeras possibilidades, mas nenhum computador é capaz de aprender com seus erros. Já os perceptrons nos mostram que podemos construir máquinas realmente inteligentes, capazes de aprender, de errar, de melhorar e principalmente, que não são presos a programações que podem falhar. O que limita uma máquina dessas é sua própria experiência.
Aliado a isso e ao uso de nanotecnologia, podemos esperar grandes avanços nos computadores e na forma como entendemos a mente humanao. O que virá disso tudo, só o futuro pode dizer.
Leia mais em: http://www.tecmundo.com.br/2754-o-que-sao-redes-neurais-.htm#ixzz1VaqdQ6n7