Você está na página 1de 60

Redes Neurais Artificial

Tpicos:
Introduo ao estudo de RNA sua origem e inspirao biolgica Caractersticas gerais das RN e descrio do neurnio artificial Aprendizado de RN e tipos de Aprendizado Algoritmo de Aprendizado e Topologias bsicas Algumas Aplicaes das RNA

Introduo
Redes Neurais Artificiais so tcnicas computacionais que apresentam um modelo matemtico inspirado na estrutura neural de organismos inteligentes e que adquirem conhecimento atravs da experincia. Uma grande rede neural artificial pode ter centenas ou milhares de unidades de processamento; j o crebro de um mamfero pode ter muitos bilhes de neurnios. O sistema nervoso formado por um conjunto extremamente complexo de clulas, os neurnios. Eles tm um papel essencial na determinao do funcionamento e comportamento do corpo humano e do raciocnio. Os neurnios so formados pelos dendritos, que so um conjunto de terminais de entrada, pelo corpo central, e pelos axnios que so longos terminais de sada.

Constituntes da clula neuronal

Inspirao biolgica
Os neurnios se comunicam atravs de sinapses. Sinapse a regio onde dois neurnios entram em contato e atravs da qual os impulsos nervosos so transmitidos entre eles. Os impulsos recebidos por um neurnio A, em um determinado momento, so processados, e atingindo um dado limiar de ao, o neurnio A dispara, produzindo uma substncia neurotransmissora que flui do corpo celular para o axnio, que pode estar conectado a um dendrito de um outro neurnio B. O neurotransmissor pode diminuir ou aumentar a polaridade da membrana pssinptica, inibindo ou excitando a gerao dos pulsos no neurnio B. Este processo depende de vrios fatores, como a geometria da sinapse e o tipo de neurotransmissor.

Em mdia, cada neurnio forma entre mil e dez mil sinapses. O crebro humano possui cerca de 10 E11 neurnios, e o nmero de sinapses de mais de 10 E14, possibilitando a formao de redes muito complexa.

Um Breve Histrico
McCulloch e Pitts (1943), Hebb (1949), e Rosemblatt (1958). Estas publicaes introduziram o primeiro modelo de redes neurais simulando mquinas, o modelo bsico de rede de auto-organizao, e o modelo Perceptron de aprendizado supervisionado, respectivamente. nos anos 60 e 70, importantes trabalhos sobre modelos de redes neurais em viso, memria, controle e auto-organizao como: Amari, Anderson, Cooper, Cowan, Fukushima, Grossberg, Kohonen, von der Malsburg, Werbos e Widrow.

Alguns histricos sobre a rea costumam pular os anos 60 e 70 e apontar um renicio da rea com a publicao dos trabalhos de Hopfield (1982) relatando a utilizao de redes simtricas para otimizao e de Rumelhart, Hinton e Williams que introduziram o poderoso mtodo Backpropagation.

Caractersticas Gerais das RNs


Uma rede neural artificial composta por vrias unidades de processamento, cujo funcionamento bastante simples. Essas unidades, geralmente so conectadas por canais de comunicao que esto associados a determinado peso. As unidades fazem operaes apenas sobre seus dados locais, que so entradas recebidas pelas suas conexes. O comportamento inteligente de uma Rede Neural Artificial vem das interaes entre as unidades de processamento da rede.

Caractersticas
So modelos adaptativos treinveis Podem representar domnios complexos (no lineares) So capazes de generalizao diante de informao incompleta Robustos So capazes de fazer armazenamento associativo de informaes Processam informaes Espao/temporais Possuem grande paralelismo, o que lhe conferem rapidez de processamento

O que uma Rede Neural?


A grande premissa do conexionismo para aplicaes em processamento de informaes e/ou inteligncia artificial o fato de que se pode analisar um problema de acordo como funcionamento do crebro humano O crebro processa informaes atravs da ativao de uma srie de neurnios biolgicos. Os neurnios por sua vez, interagem numa rede biolgica atravs da intercomunicao.

O Neurnio Artificial
McCullock e Pitts 1943, sinais so apresentados entrada; cada sinal multiplicado por um nmero, ou peso, que indica a sua influncia na sada da unidade; feita a soma ponderada dos sinais que produz um nvel de atividade; se este nvel de atividade exceder um certo limite (threshold) a unidade produz uma determinada resposta de sada.

Exemplo
sinais de entrada X1, X2, ..., Xp (0 ou 1) pesos w1, w2, ..., wp, valores reais. limitador t; Neste modelo, o nvel de atividade a dado por: a = w1X1 + w2X2 + ... + wpXp A sada y dada por:
y = 1, se a >= t ou y = 0, se a < t.

Organizao em camadas

Organizao em camadas
Usualmente as camadas so classificadas em trs grupos:
Camada de Entrada: onde os padres so apresentados rede; Camadas Intermedirias ou Escondidas: onde feita a maior parte do processamento, atravs das conexes ponderadas; podem ser consideradas como extratoras de caractersticas; Camada de Sada: onde o resultado final concludo e apresentado.

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 atravs de um processo iterativo de ajustes aplicado a seus pesos, o treinamento. O aprendizado ocorre quando a rede neural atinge uma soluo generalizada para uma classe de problemas.

Algoritmo de Aprendizado
algoritmo de aprendizado um conjunto de regras bem definidas para a soluo de um problema de aprendizado. Existem muitos tipos de algoritmos de aprendizado especficos para determinados modelos de redes neurais, estes algoritmos diferem entre si principalmente pelo modo como os pesos so modificados.

Aprendizado Supervisionado, quando utilizado um agente externo que indica rede a resposta desejada para o padro de entrada; Aprendizado No Supervisionado (autoorganizao), quando no existe uma agente externo indicando a resposta desejada para os padres de entrada; Reforo, quando um crtico externo avalia a resposta fornecida pela rede.

A regra de aprendizado de Hebb prope que o peso de uma conexo sinptica deve ser ajustado se houver sincronismo entre os nveis de atividade das entradas e sadas [Hebb, 1949].

Wij(t) = ai(t)aj(t)

Treinamento Supervisionado
O treinamento de rede Perceptron, consiste em ajustar os pesos e os thresholds (bias) de suas unidades para que a classificao desejada seja obtida. Quando um padro inicialmente apresentado rede, ela produz uma sada. Aps medir a distncia entre a resposta atual e a desejada, so realizados os ajustes apropriados nos pesos de modo a reduzir esta distncia. Este procedimento conhecido como Regra Delta

Esquema de treinamento
Iniciar todas as conexes com pesos aleatrios; Repita enquanto o erro E > e
Para cada par de treinamento (X,d), faa:
Calcular a resposta obtida O; Se o erro no for satisfatoriamente pequeno E > e, ento: Atualizar pesos: Wnovo := W anterior + neta E X

Onde:
O par de treinamento (X, d) corresponde ao padro de entrada e a sua respectiva resposta desejada; O erro E definido como: Resposta Desejada - Resposta Obtida (d - O); A taxa de aprendizado neta uma constante positiva, que corresponde velocidade do aprendizado.

Potencial de Representao
Perceptrons representam uma superficie de um hiperplano no espao n-dimensional Alguns problemas no podem ser separados por hiperplanos A regra de aprendizado encontra um vetor de pesos se os exemplos so linearmente separaveis em cc a regra converge para a melhor aproximao

Perceptron Multi-Camadas (MLP)

o desenvolvimento do algoritmo de treinamento backpropagation, por Rumelhart, Hinton e Williams em 1986, precedido por propostas semelhantes ocorridas nos anos 70 e 80, possvel treinar eficientemente redes com camadas intermedirias, resultando no modelo de Perceptron Multi-Camadas (MLP)

Se existirem as conexes certas entre as unidades de entrada e um conjunto suficientemente grande de unidades intermedirias, pode-se sempre encontrar a representao que ir produzir o mapeamento correto da entrada para a sada atravs das unidades intermediria. Como provou Cybenko, a partir de extenses do Teorema de Kolmogoroff, so necessrias no mximo duas camadas intermedirias, com um nmero suficiente de unidades por camada, para se produzir quaisquer mapeamentos. Tambm foi provado que apenas uma camada intermediria suficiente para aproximar qualquer funo contnua.

Backpropagation
Durante o treinamento com o algoritmo backpropagation, a rede opera em uma sequncia de dois passos.
Primeiro, um padro apresentado camada de entrada da rede. A atividade resultante flui atravs da rede, camada por camada, at que a resposta seja produzida pela camada de sada. segundo passo, a sada obtida comparada sada desejada para esse padro particular. Se esta no estiver correta, o erro calculado. O erro propagado a partir da camada de sada at a camada de entrada, e os pesos das conexes das unidades das camadas internas vo sendo modificados conforme o erro retropropagado.

As redes que utilizam backpropagation trabalham com uma variao da regra delta, apropriada para redes multi-camadas: a regra delta generalizada. A regra delta padro essencialmente implementa um gradiente descendente no quadrado da soma do erro para funes de ativao lineares. Entretanto, a superfcie do erro pode no ser to simples, as redes ficam sujeitas aos problemas de de mnimos locais.

A regra delta generalizada funciona quando so utilizadas na rede unidades com uma funo de ativao semi-linear, que uma funo diferencivel e no decrescente. Note que a funo threshold no se enquadra nesse requisito. Uma funo de ativao amplamente utilizada, nestes casos, a funo sigmoid. A taxa de aprendizado uma constante de proporcionalidade no intervalo [0,1], pois este procedimento de aprendizado requer apenas que a mudana no peso seja proporcional neta.

Entretanto, o verdadeiro gradiente descendente requer que sejam tomados passos infinitesimais. Assim quanto maior for essa constante, maior ser a mudana nos pesos, aumentando a velocidade do aprendizado, o que pode levar uma oscilao do modelo na superfcie de erro. O ideal seria utilizar a maior taxa de aprendizado possvel que no levasse uma oscilao, resultando em um aprendizado mais rpido. O treinamento das redes MLP com backpropagation pode demandar muitos passos no conjunto de treinamento, resultando um tempo de treinamento considervelmente longo. Se for encontrado um mnimo local, o erro para o conjunto de treinamento pra de diminuir e estaciona em um valor maior que o aceitvel.

Uma maneira de aumentar a taxa de aprendizado sem levar oscilao modificar a regra delta generalizada para incluir o termo momentum, uma constante que determina o efeito das mudanas passadas dos pesos na direo atual do movimento no espao de pesos. Desta forma, o termo momentum leva em considerao o efeito de mudanas anteriores de pesos na direo do movimento atual no espao de pesos. O termo momentum torna-se til em espaos de erro que contenham longas gargantas, com curvas acentuadas ou vales com descidas suaves.

Memrias Matricias
Modelo no-linear de Willshaw Modelo linear de Kohonen e Anderson Memria linear tima Hopfield

Memria Matricial
Envolve a gerao de um padro de ativao no conjunto de nodos de sada em funo do aparecimento de um determinado padro de ativao de entrada. O mapeamento entre o padro de ativao de entrada e o de sada feito atravs de uma transformao matricial Pode ter ou no uma operao no-linear

Modelo de Willshaw
A matriz de pesos obtida atravs da regra de Hebb + uma transformao no linear para obter uma matriz de pesos binria
Wij = g( Yi Xj ) g(x) = {1 x>= 1, 0 x<1} (Y) = (W X) (x) uma funo de limear, o limear deve ser igual ao nmero de elementos ativos em X

Exemplo

Suponha que se deseja recuperar X2 e Y2: WX2 = (3 2 3 0 2 2 3 0)t ento Y2 = (1 0 1 0 0 0 1 0)t

Capacidade de recuperao
Se adiciona-se o par [x3y3] x3 =(1 1 1 1 1 1 1 1)t e y3 =(1 1 1 1 1 1 1 1 )t W passa a ter todos seus elementos em 1, a rede perde a sua capacidade de recuperar as associaes.