O Que São as Redes Neurais Artificiais
[ O Neurônio Artificial | A Rede | Auto-Organização | Simulando a Plasticidade ]
As redes neurais foram desenvolvidas, originalmente, na década de 40, pelo neurofisiologista Warren McCulloch, do MIT, e pelo matemático Walter Pitts, da Universidade de Illinois, os quais, dentro do espírito cibernético, fizeram uma analogia entre células nervosas vivas e o processo eletrônico num trabalho publicado sobre "neurônios formais". O trabalho consistia num modelo de resistores variáveis e amplificadores representando conexões sinápticas de um neurônio biológico.
Desde então, mais enfaticamente a partir da década 80, diversos modelos de redes neurais artificiais têm surgido com o propósito de aperfeiçoar e aplicar esta tecnologia. Algumas destas propostas tendem a aperfeiçoar mecanismos internos da rede neural para aplicação na indústria e negócios, outras procuram aproximá-las ainda mais dos modelos biológicos originais.
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.
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
quantidade de neurônios
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.
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.
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 sucessivas nos 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.