Diagnóstico por Imagem Auxiliado por Inteligência Artificial



Redes Neuronais Artificiais, suas características e potencialidades.

As Redes Neuronais Artificiais (RNAs), também designadas por sistemas conexionistas, comportam-se como modelos simplificados do sistema nervoso central do ser humano. Trata-se de uma estrutura extremamente interligada de unidades computacionais, frequentemente designadas por neurônios ou nodos, com capacidade de aprendizagem.

1.1 Redes Neuronais Artificiais

É dada a seguir uma definição de uma RNA vista como uma máquina adaptativa (Gallant 1993): Uma RNA corporiza uma máquina computacional eminentemente paralela, composta por simples unidades de processamento, com uma propensão natural para armazenar conhecimento empírico e torná-lo acessível ao utilizador. O seu comportamento assemelha-se ao do cérebro humano em dois aspectos:

·O conhecimento é adquirido a partir do ambiente que materializa o universo de discurso, através de um processo de aprendizagem; e

·O conhecimento é armazenado nas conexões, também designadas por ligações ou sinapses, entre nodos.

Durante o processo de aprendizagem, dado por um algoritmo de aprendizagem ou de treino, a força (ou peso) das conexões é ajustada de forma a se atingir um dado estado entálpico ou estado de conhecimento da rede. Embora seja esta a forma tradicional de construir RNAs, também é possível modificar a sua própria estrutura interna (ou topologia), à imagem e semelhança do que se passa no cérebro humano, onde neurônios podem morrer e novas sinapses (e mesmo neurônios) se podem desenvolver.

1.1.1 Inspiração Biológica: O Cérebro Humano

A maior parte da investigação em RNAs foi inspirada e influenciada pelos sistemas nervosos dos seres vivos, em particular do ser humano. É possível que as RNAs ofereçam uma das abordagens mais promissoras para a construção de verdadeiros sistemas inteligentes, tendo capacidade para ultrapassar a explosão combinatória associada à computação simbólica baseada em arquiteturas de Von Neumann³).

O sistema nervoso central fornece uma forte base de sustentação a esta tese. O cérebro é uma estrutura altamente complexa, não linear e paralela. Possui uma capacidade de organizar os seus blocos constituintes, conhecidos por neurônios, de modo a executarem certas tarefas complexas (e.g., reconhecimento de padrões ou voz), de uma forma inatingível pelo computador mais sofisticado até hoje concebido.

Apesar dos grandes avanços científicos, o conhecimento acerca do modo como o cérebro humano opera está longe de estar completo. No entanto, alguns fatos importantes são já conhecidos.

Quando alguém nasce, o seu cérebro apresenta-se já com uma estrutura fortemente conexionista, com capacidade de aprender através da experiência. Este conhecimento evolui em função do tempo, embora o desenvolvimento seja mais acentuado nos primeiros dois anos de vida. Em termos de velocidade de processamento, um neurônio é cerca de 5 a 6 vezes mais lento do que uma porta lógica de silício. Todavia, o cérebro ultrapassa essa lentidão no processamento utilizando uma estrutura maciçamente paralela. Estima-se que o córtex humano possui cerca de 10 bilhões de neurônios e 60 trilhões de sinapses (Gallant 1993).

³ John Von Neumann (1903-1957), matemático húngaro-americano que teve uma grande contribuição na definição da arquitetura de máquinas seqüenciais, onde um programa é armazenado na mesma memória de dados que o programa utiliza. Hoje em dia, quase todos os computadores são do tipo Von Neumann.

Um neurônio é uma célula complexa que responde a sinais eletroquímicos, sendo composto por um núcleo, por um corpo celular, por um numeroso conjunto de dendritos (i.e., entidades que recebem sinais de outros neurônios via sinapses) e, por um axônio, que transmite um estímulo a outros neurônios, através das já referidas sinapses  (Bose & Liang 1996). Um único neurônio pode estar ligado a centenas ou mesmo dezenas de milhares de neurônios. Num cérebro existem estruturas anatômicas de pequena, média e alta complexidade, com diferentes funções, sendo possíveis parcerias. Os neurônios tendem a agrupar-se em camadas, sendo três os principais tipos de conexões , e definidos nos seguintes termos:

·Divergentes, onde as conexões se desenvolvem a partir de um neurônio que pode estar ligado a outros neurônios via uma arborização do axônio;

·Convergentes, onde as conexões têm em linha de conta vários neurônios que podem estar ligados a um único neurônio; e

·Encadeadas ou Cíclicas, onde as conexões podem vir a envolver vários neurônios e a formarem ciclos.

Por sua vez, as conexões são constituídas por dois tipos de sinapses: inibitórias e excitatórias.

1.1.2 Benefícios das RNAs

O poder computacional de uma RNA alicerça-se em dois aspectos fundamentais: numa topologia que premeia o paralelismo e, por outro lado, na sua capacidade de aprendizagem e generalização; i.e., conseguir responder adequadamente a novas situações com base em experiências passadas. São estas duas características que tornam possível a resolução de problemas, que de outra forma seriam inatingíveis.

Isto não quer dizer que as RNAs sejam caixas mágicas que consigam por si dar resposta a qualquer problema. Em vez disso precisam, não raras vezes, de serem integradas com outros sistemas ou paradigmas computacionais para a resolução de problemas. Convém, ainda, reconhecer que ainda se está muito longe de atingir uma arquitetura que mimetize o cérebro humano (Gallant 1993). As RNAs apresentamcaracterísticas únicas que não se encontram em outros mecanismos ou técnicas computacionais associadas à resolução de problemas(Azoff 1994) (Gallant 1993), algumas das quais são mencionadas no texto que se segue:

·Aprendizagem e generalização; i.e., conseguindo descrever o todo a partir de algumas partes, constituindo-se como formas eficientes de aprendizagem e armazenamento de conhecimento;

·Processamento maciçamente paralelo; i.e., permitindo que tarefas complexas sejam realizadas num curto espaço de tempo;

·Transparência; i.e., podendo ser vistas como uma caixa negra que transforma vetores de entrada em vetores de saída via uma função de transformação em princípio desconhecida;

·Não linearidade; i.e., atendendo a que muitos dos problemas reais a equacionar e resolver são de natureza não linear;

·Adaptabilidade; i.e., podendo adaptar a sua topologia de acordo com mudanças do ambiente de trabalho;

·Resposta evidencial; i.e., onde uma saída da rede traduz não só um processo de decisão, mas também o grau de confiança a conferir a esta;

·Robustez e degradação suave; i.e., permitindo processar o ruído ou informação incompleta de forma eficiente, assim como sendo capazes de manter o seu desempenho quando há desativação de algumas das suas conexões e/ou nodos; e

·Flexibilidade; i.e., atuando com uma grande margem de aplicabilidade.

Finalmente, convém referir que apesar do fato das RNAs partilharem muitas das características do cérebro humano, são carentes relativamente a outras, como seja o esquecimento.

1.1.3 Neurônio Artificial ou Nodo

Um nodo, termo usado para distinguir entre um neurônio natural e um artificial, é a unidade de processamento chave para a operação de uma RNA. Embora existam diversos tipos de nodos, em princípio, cada nodo comporta-se como um comparador que produz uma saída quando o efeito cumulativo das entradas excede um dado valor limite. Um nodo pode ser dissecado de acordo com o exposto na e definido em termos de:

·Um conjunto de conexões (wq), cada uma etiquetada por um peso; i.e., um número real ou binário, que corporiza um efeito excita tório para valores positivos e inibitórios para valores negativos da etiqueta. Assim, o sinal ou estímulo (Xj) como entrada da conexão é multiplicado pelo correspondente peso wy, onde i denota o nodo objeto de estudo e j o nodo de onde partiu o sinal. Pode ainda existir uma conexão extra, denominada de bias, cuja entrada toma o valor +1, que estabelece certa tendência ou inclinação no processo computacional; i.e. adiciona uma constante (wg) para que se estabeleçam as corretas condições operacionais para o nodo;

·Um integrador (g), que reduz os n argumentos de entrada (estímulos) a um único valor. Frequentemente é utilizada a função adição (å), pesando todas as entradas e combinando-as linearmente; e

·Uma função de ativação (f), que condiciona o sinal de saída, introduzindo uma componente de não linearidade no processo computacional.

 

Dado um nodo i, o seu comportamento é descrito pelas equações (3.1) e (3.2), queconstam do texto que se segue:

Para um nodo i com n entradas e uma saída, onde ui representa o ganho do nodo i e si a saída do nodo.

A primeira função, também designada por função de heaviside, é normalmente utilizada em nodos do tipo McCullochPitts , em que a saída toma o valor +1 apenas se o ganho for não-negativo, de acordo com uma filosofia do tudo-ou-nada. Em seguida, aparecem duas outras funções lineares, com a última a ter como contradomínio o intervalo [0,1]. A não linearidade é definida em termos das restantes funções, onde uma especial atenção deve ser dada à função logística, também conhecida por função sigmoid. Esta função, cuja forma é modelada a um S,é de longe a função mais utilizada no uso de RNAs. É uma função crescente que exibe um balanceamento gracioso entre um comportamento linear e não linear.

Ao se variar a inclinação (k) obtém-se funções com diferentes declives; no limite, em que k se aproxima do infinito, a função tende para a função limiar.

.1.2 Processos de Aprendizado

A propriedade mais importante das redes neurais é a habilidade de aprender de seu ambiente e com isso melhorar seu desempenho. Isso é feito através de um processo iterativo de ajustes aplicado a seus pesos, o treinamento.

O aprendizado ocorre quando a rede neural atinge uma solução generalizada para uma classe de problemas. Denomina-se algoritmo de aprendizado a um conjunto de regras bem definidas para a solução de um problema de aprendizado. Existem muitos tipos de algoritmos de aprendizado específicos para determinados modelos de redes neurais, estes algoritmos diferem entre si principalmente pelo modo como os pesos são modificados.

Outro fator importante é a maneira pela qual uma rede neural se relaciona com o ambiente. Nesse contexto existem os seguintes paradigmas de aprendizado:

·Aprendizado Supervisionado, quando é utilizado um agente externo que indica à rede a resposta desejada para o padrão de entrada;

·Aprendizado Não Supervisionado (auto-organização), quando não existe uma agente externo indicando a resposta desejada para os padrões de entrada;

·Reforço, quando um crítico externo avalia a resposta fornecida pela rede.

Denomina-se ciclo uma apresentação de todos os N pares (entrada e saída) do conjunto de treinamento no processo de aprendizado. A correção dos pesos num ciclo pode ser executado de dois modos:

1) Modo Padrão: A correção dos pesos acontece a cada apresentação à rede de um exemplo do conjunto de treinamento. Cada correção de pesos baseia-se somente no erro do exemplo apresentado naquela iteração. Assim, em cada ciclo ocorrem N correções.

2) Modo Batch: Apenas uma correção é feita por ciclo. Todos os exemplos do conjunto de treinamento são apresentados à rede, seu erro médio é calculado e a partir deste erro fazem-se as correções dos pesos.


REFERÊNCIAS

AZOFF, E.: Neural Network Time Series Forecasting of Financial Markets. , 1994.

BOSE & LIANG N. Bose and P. Liang. Neural Network Fundamentals with Graphs, Algorithms and Applications. McGraw-Hill, USA, 1996.

GALLANT, T, S.: Neural Network Learning and Expert Systems. MIT Press, Cambridge, USA, 1993.


Autor: Maria Anunciacao Souza


Artigos Relacionados


Solução Qaweb Para Teste De Software

Envelhecer Com Saúde é Um Prêmio Pra Quem Começa A Se Cuidar Cedo

O Corpo Humano

Planificar à Esquerda E Gerir à Direita

O Ciclo Do Nitrogênio E A Camada De Ozônio

Células-tronco

A Química Das Emoções