redes neurais artificiais, Notas de estudo de Engenharia Elétrica
carlos-santos-oliveira-1
carlos-santos-oliveira-1

redes neurais artificiais, Notas de estudo de Engenharia Elétrica

60 páginas
50Números de download
1000+Número de visitas
100%de 0 votosNúmero de votos
1Número de comentários
Descrição
redes neurais artificial.ppt
80 pontos
Pontos de download necessários para baixar
este documento
Baixar o documento
Pré-visualização3 páginas / 60
Esta é apenas uma pré-visualização
3 mostrados em 60 páginas
Esta é apenas uma pré-visualização
3 mostrados em 60 páginas
Esta é apenas uma pré-visualização
3 mostrados em 60 páginas
Esta é apenas uma pré-visualização
3 mostrados em 60 páginas
Redes Neurais Artificial

Redes Neurais Artificial

Tópicos:

• Introdução ao estudo de RNA –sua origem e inspiração biológica

• Características gerais das RN e descrição do neurônio artificial

• Aprendizado de RN e tipos de Aprendizado • Algoritmo de Aprendizado e Topologias

básicas • Algumas Aplicações das RNA

Introdução • Redes Neurais Artificiais são técnicas computacionais que

apresentam um modelo matemático inspirado na estrutura neural de organismos inteligentes e que adquirem conhecimento através da experiência. Uma grande rede neural artificial pode ter centenas ou milhares de unidades de processamento; já o cérebro de um mamífero pode ter muitos bilhões de neurônios.

• O sistema nervoso é formado por um conjunto extremamente complexo de células, os neurônios. Eles têm um papel essencial na determinação do funcionamento e comportamento do corpo humano e do raciocínio. Os neurônios são formados pelos dendritos, que são um conjunto de terminais de entrada, pelo corpo central, e pelos axônios que são longos terminais de saída.

Constituíntes da célula neuronal

Inspiração biológica • Os neurônios se comunicam através de sinapses. Sinapse é a

região onde dois neurônios entram em contato e através da qual os impulsos nervosos são transmitidos entre eles. Os impulsos recebidos por um neurônio A, em um determinado momento, são processados, e atingindo um dado limiar de ação, o neurônio A dispara, produzindo uma substância neurotransmissora que flui do corpo celular para o axônio, que pode estar conectado a um dendrito de um outro neurônio B. O neurotransmissor pode diminuir ou aumentar a polaridade da membrana pós-sináptica, inibindo ou excitando a geração dos pulsos no neurônio B. Este processo depende de vários fatores, como a geometria da sinapse e o tipo de neurotransmissor.

• Em média, cada neurônio forma entre mil e dez mil sinapses. O cérebro humano possui cerca de 10 E11 neurônios, e o número de sinapses é de mais de 10 E14, possibilitando a formação de redes muito complexa.

Um Breve Histórico

• McCulloch e Pitts (1943), Hebb (1949), e Rosemblatt (1958). Estas publicações introduziram o primeiro modelo de redes neurais simulando “máquinas”, o modelo básico de rede de auto-organização, e o modelo Perceptron de aprendizado supervisionado, respectivamente.

• nos anos 60 e 70, importantes trabalhos sobre modelos de redes neurais em visão, memória, controle e auto- organização como: Amari, Anderson, Cooper, Cowan, Fukushima, Grossberg, Kohonen, von der Malsburg, Werbos e Widrow.

• Alguns históricos sobre a área costumam “pular” os anos 60 e 70 e apontar um reínicio da área com a publicação dos trabalhos de Hopfield (1982) relatando a utilização de redes simétricas para otimização e de Rumelhart, Hinton e Williams que introduziram o poderoso método Backpropagation.

Características Gerais das RNs

• Uma rede neural artificial é composta por várias unidades de processamento, cujo funcionamento é bastante simples. Essas unidades, geralmente são conectadas por canais de comunicação que estão associados a determinado peso. As unidades fazem operações apenas sobre seus dados locais, que são entradas recebidas pelas suas conexões. O comportamento inteligente de uma Rede Neural Artificial vem das interações entre as unidades de processamento da rede.

Características • São modelos adaptativos treináveis • Podem representar domínios complexos (não lineares) • São capazes de generalização diante de informação

incompleta • Robustos • São capazes de fazer armazenamento associativo de

informações • Processam informações Espaço/temporais • Possuem grande paralelismo, o que lhe conferem rapidez

de processamento

O que é uma Rede Neural?

• A grande premissa do conexionismo para aplicações em processamento de informações e/ou inteligência artificial é o fato de que se pode analisar um problema de acordo como funcionamento do cérebro humano

• O cérebro processa informações através da ativação de uma série de neurônios biológicos. Os neurônios por sua vez, interagem numa rede biológica através da intercomunicação.

O Neurônio Artificial • McCullock e Pitts 1943, • sinais são apresentados à entrada; • cada sinal é multiplicado por um

número, ou peso, que indica a sua influência na saída da unidade;

• é feita a soma ponderada dos sinais que produz um nível de atividade;

• se este nível de atividade exceder um certo limite (threshold) a unidade produz uma determinada resposta de saída.

Exemplo

• sinais de entrada X1, X2, ..., Xp (0 ou 1) • pesos w1, w2, ..., wp, valores reais. • limitador t; • Neste modelo, o nível de atividade a é dado por:

• a = w1X1 + w2X2 + ... + wpXp • A saída y é dada por:

• y = 1, se a >= t ou • y = 0, se a < t.

Organização em camadas

Organização em camadas

• Usualmente as camadas são classificadas em três grupos: – Camada de Entrada: onde os padrões são

apresentados à rede; – Camadas Intermediárias ou Escondidas: onde é feita

a maior parte do processamento, através das conexões ponderadas; podem ser consideradas como extratoras de características;

Camada de Saída: onde o resultado final é concluído 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 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.

Algoritmo de Aprendizado

• algoritmo de aprendizado é 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.

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.

A regra de aprendizado de Hebb propõe que o peso de uma conexão sináptica deve ser ajustado se houver sincronismo entre os níveis de atividade das entradas e saídas [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 classificação desejada seja obtida.

• Quando um padrão é inicialmente apresentado à rede, ela produz uma saída.

• Após medir a distância entre a resposta atual e a desejada, são realizados os ajustes apropriados nos pesos de modo a reduzir esta distância.

• Este procedimento é conhecido como Regra Delta

Esquema de treinamento

Iniciar todas as conexões com pesos aleatórios; Repita enquanto o erro E > e

Para cada par de treinamento (X,d), faça: Calcular a resposta obtida O;

Se o erro não for satisfatoriamente pequeno E > e, então: Atualizar pesos: Wnovo := W anterior + neta E X

Onde: O par de treinamento (X, d) corresponde ao padrão 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 Representação

• Perceptrons representam uma superficie de um hiperplano no espaço n-dimensional

• Alguns problemas não podem ser separados por hiperplanos

• A regra de aprendizado encontra um vetor de pesos se os exemplos são linearmente separaveis

• em cc a regra converge para a “melhor aproximação”

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,

• é possível treinar eficientemente redes com camadas intermediárias, resultando no modelo de Perceptron Multi-Camadas (MLP)

• Se existirem as conexões certas entre as unidades de entrada e um conjunto suficientemente grande de unidades intermediárias, pode-se sempre encontrar a representação que irá produzir o mapeamento correto da entrada para a saída através das unidades intermediária.

• Como provou Cybenko, a partir de extensões do Teorema de Kolmogoroff, são necessárias no máximo duas camadas intermediárias, com um número suficiente de unidades por camada, para se produzir quaisquer mapeamentos.

• Também foi provado que apenas uma camada intermediária é suficiente para aproximar qualquer função contínua.

Backpropagation • Durante o treinamento com o algoritmo backpropagation,

a rede opera em uma sequência de dois passos. – Primeiro, um padrão é apresentado à camada de entrada da rede.

A atividade resultante flui através da rede, camada por camada, até que a resposta seja produzida pela camada de saída.

– segundo passo, a saída obtida é comparada à saída desejada para esse padrão particular. Se esta não estiver correta, o erro é calculado. O erro é propagado a partir da camada de saída até a camada de entrada, e os pesos das conexões das unidades das camadas internas vão sendo modificados conforme o erro é retropropagado.

• As redes que utilizam backpropagation trabalham com uma variação da regra delta, apropriada para redes multi-camadas: a regra delta generalizada.

• A regra delta padrão essencialmente implementa um gradiente descendente no quadrado da soma do erro para funções de ativação lineares.

• Entretanto, a superfície do erro pode não ser tão simples, as redes ficam sujeitas aos problemas de de mínimos locais.

• A regra delta generalizada funciona quando são utilizadas na rede unidades com uma função de ativação semi-linear, que é uma função diferenciável e não decrescente. Note que a função threshold não se enquadra nesse requisito. Uma função de ativação amplamente utilizada, nestes casos, é a função sigmoid.

• A taxa de aprendizado é uma constante de proporcionalidade no intervalo [0,1], pois este procedimento de aprendizado requer apenas que a mudança 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 mudança nos pesos, aumentando a velocidade do aprendizado, o que pode levar à uma oscilação do modelo na superfície de erro. O ideal seria utilizar a maior taxa de aprendizado possível que não levasse à uma oscilação, resultando em um aprendizado mais rápido.

• O treinamento das redes MLP com backpropagation pode demandar muitos passos no conjunto de treinamento, resultando um tempo de treinamento considerávelmente longo. Se for encontrado um mínimo local, o erro para o conjunto de treinamento pára de diminuir e estaciona em um valor maior que o aceitável.

• Uma maneira de aumentar a taxa de aprendizado sem levar à oscilação é modificar a regra delta generalizada para incluir o termo momentum, uma constante que determina o efeito das mudanças passadas dos pesos na direção atual do movimento no espaço de pesos.

• Desta forma, o termo momentum leva em consideração o efeito de mudanças anteriores de pesos na direção do movimento atual no espaço de pesos. O termo momentum torna-se útil em espaços de erro que contenham longas gargantas, com curvas acentuadas ou vales com descidas suaves.

Memórias Matricias

• Modelo não-linear de Willshaw • Modelo linear de Kohonen e Anderson • Memória linear ótima • Hopfield

Memória Matricial

• Envolve a geração de um padrão de ativação no conjunto de nodos de saída em função do aparecimento de um determinado padrão de ativação de entrada.

• O mapeamento entre o padrão de ativação de entrada e o de saída é feito através de uma transformação matricial

• Pode ter ou não uma operação não-linear

Modelo de Willshaw

• A matriz de pesos é obtida através da regra de Hebb + uma transformação não linear para obter uma matriz de pesos binária – Wij = g( Yi Xj ) – g(x) = {1 x>= 1, 0 x<1} – (Y)’ = (W X)  (x) é uma função de limear, o limear deve ser

igual ao número de elementos ativos em X

Exemplo

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

Capacidade de recuperação

• 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 associações.

o trabalho sobre redes neurais ora apresentado é bem didático abrangendo um vasto campo sobre o tema, porém seria muito bom se fosse acompanhado de mais exemplos práticos, porém penso que este não é o objetivo do trabalho.
Esta é apenas uma pré-visualização
3 mostrados em 60 páginas