O que são Redes Neurais Artificiais ?
Redes neurais artificiais são um conceito da computação que visa trabalhar no processamento de dados de maneira semelhante ao cérebro humano. O cérebro é tido como um processador altamente complexo e que realiza processamentos de maneira paralela. Para isso, ele organiza sua estrutura, ou seja, os neurônios, de forma que eles realizem o processamento necessário. Isso é feito numa velocidade extremamente alta e não existe qualquer computador no mundo capaz de realizar o que o cérebro humano faz.
Nas redes neurais artificiais, a idéia é realizar o processamento de informações tendo como princípio a organização de neurônios do cérebro. Como o cérebro humano é capaz de aprender e tomar decisões baseadas na aprendizagem, as redes neurais artificiais devem fazer o mesmo. Assim, uma rede neural pode ser interpretada como um esquema de processamento capaz de armazenar conhecimento baseado em aprendizagem (experiência) e disponibilizar este conhecimento para a aplicação em questão.
Funcionamento das redes neurais artificiais
As redes neurais artificiais são criadas a partir de algoritmos projetados para uma determinada finalidade. É impossível criar um algoritmo desse sem ter conhecimento de modelos matemáticos que simulem o processo de aprendizado do cérebro humano. Por este ser um artigo de introdução a este assunto, abordaremos uma explicação conceitual eliminando ao máximo os princípios matemáticos naturalmente relacionados.
Basicamente, uma rede neural se assemelha ao cérebro em dois pontos: o conhecimento é obtido através de etapas de aprendizagem e pesos sinápticos são usados para armazenar o conhecimento. Uma sinapse é o nome dado à conexão existente entre neurônios. Nas conexões são atribuídos valores, que são chamados de pesos sinápticos. Isso deixa claro que as redes neurais artificiais têm em sua constituição uma série de neurônios artificiais (ou virtuais) que serão conectados entre si, formando uma rede de elementos de processamento.
Tendo uma rede neural montada, uma série de valores podem ser aplicados sobre um neurônio, sendo que este está conectado a outros pela rede. Estes valores (ou entradas) são multiplicados no neurônio pelo valor do peso de sua sinapse. Então, esses valores são somados. Se esta soma ultrapassar um valor limite estabelecido, um sinal é propagado pela saída (axônio) deste neurônio. Em seguida, essa mesma etapa se realiza com os demais neurônios da rede. Isso quer dizer que os neurônios vão enfrentar algum tipo de ativação, dependendo das entradas e dos pesos sinápticos.
Existem várias formas de se desenvolver uma rede neural. Ela deve ser montada de acordo com o(s) problema(s) a ser(em) resolvido(s). Em sua arquitetura são determinados o número de camadas usadas (as camadas são formadas por neurônios), a quantidade de neurônios em cada camada, o tipo de sinapse utilizado, etc.
O aprendizado
O processo de aprendizagem das redes neurais é realizado quando ocorrem várias modificações significantes nas sinapses dos neurônios. Essas mudanças ocorrem de acordo com a ativação dos neurônios. Se determinadas conexões são mais usadas, estas são reforçadas enquanto que as demais são enfraquecidas. É por isso que quando uma rede neural artificial é implantada para uma determinada aplicação, é necessário um tempo para que esta seja treinada.
Existem, basicamente, 3 tipos de aprendizado nas redes neurais artificiais:
Supervisionado: neste tipo, a rede neural recebe um conjunto de entradas padronizados e seus correspondentes padrões de saída, onde ocorrem ajustes nos pesos sinápticos até que o erro entre os padrões de saída gerados pela rede tenham um valor desejado;
Não-supervisionado: neste tipo, a rede neural trabalha os dados de forma a determinar algumas propriedades dos conjunto de dados. A partir destas propriedades é que o aprendizado é constituído;
Híbrido: neste tipo ocorre uma "mistura" dos tipos supervisionado e não-supervisionado. Assim, uma camada pode trabalhar com um tipo enquanto outra camada trabalha com o outro tipo.
Aplicações para redes neurais
As redes neurais artificiais podem ser aplicadas para resolver uma grande quantidade de problemas. Um bom exemplo de aplicação são softwares de reconhecimento de voz, que precisam aprender a conhecer a voz de determinadas pessoas. Redes neurais também são usados em rôbos que desarmam bombas. Se você já usou um scanner para retirar um texto de um jornal, por exemplo, saiba que o software de OCR, que é responsável por isso, precisa aprender a reconhecer caracteres da imagem. Logo, ele certamente possui algoritmos de rede neural. Existem até alguns softwares que aprendem a identificar SPAMs em e-mails e apagá-los (e conseguem uma margem aceitável de acertos). Mas no geral as redes neurais são usadas principalmente em aplicações mais complexas, como em usinas, mercado financeiro, etc.
0 comentários:
Postar um comentário