redes neurais

33
Redes Neurais Luana Bezerra Batista luana @ dsc . ufcg . edu . br

Upload: thuy

Post on 05-Jan-2016

22 views

Category:

Documents


0 download

DESCRIPTION

Redes Neurais. Luana Bezerra Batista [email protected]. Roteiro. Introdução Neurônio Artificial Perceptron Perceptrons de Múltiplas Camadas Algoritmo Backpropagation Mapas Auto-Organizáveis. Introdução. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Redes Neurais

Redes Neurais

Luana Bezerra [email protected]

Page 2: Redes Neurais

Roteiro

1. Introdução2. Neurônio Artificial3. Perceptron 4. Perceptrons de Múltiplas

Camadas Algoritmo Backpropagation

5. Mapas Auto-Organizáveis

Page 3: Redes Neurais

Introdução Redes Neurais são modelos

computacionais inspirados no cérebro humano que aprendem através de exemplos Compostas por várias unidades de

processamento (‘neurônios’) Interligadas por conexões (‘sinapses’)

Cada conexão possui um peso associado (‘peso sináptico’)

Page 4: Redes Neurais

Introdução Arquitetura genérica de uma RN

Camada de entrada

Camada intermediári

a

Camada de saída

Page 5: Redes Neurais

Neurônio Artificial Modelo de McCulloch-Pitts (1943)

wji

w1i

wni

o(i)

v(i)x1

xj

xn

v( i) wji x

jo(i ) f (v (i))

f(.)

f(v(i)) = 1, se v(i)0

f(v(i)) = 0, se v(i)<0

Page 6: Redes Neurais

Perceptron Desenvolvido por Rosemblat

(1958)

Forma mais simples de uma Rede Neural utilizada para classificação de padrões linearmente separáveis

Utiliza o modelo de neurônio de McCulloch-Pitts

Page 7: Redes Neurais

Perceptron Problemas linearmente separáveis

Page 8: Redes Neurais

Perceptron Algoritmo de Treinamento

(Supervisionado)

iniciar todas as conexões com wj = 0;repita

para cada padrão de treinamento (x, d)faça calcular a saída o se (d o)

então ajustar pesosaté o erro ser aceitável

Page 9: Redes Neurais

Perceptron Ajuste dos pesos por correção do

erro

wji = xj (dj - oj ), se (d o) Onde (dj - oj ), representa o erro e é a taxa de aprendizado

wji = 0, se (d = o)

Page 10: Redes Neurais

Perceptron Algoritmo de Teste

Para cada padrão x faça

apresentar x a entrada da redecalcular a saída ose (o=1) então x classe 1 senão x classe 2

Page 11: Redes Neurais

Perceptron Perceptrons de uma única camada

resolvem apenas problemas linearmente separáveis

Grande número de aplicações importantes são não-linearmente separáveis

Page 12: Redes Neurais

Exemplo: problema XOR

Perceptron

Page 13: Redes Neurais

Solução: perceptrons de múltiplas camadas

Perceptron

Page 14: Redes Neurais

Uma rede neural MLP (Multi-Layer Perceptrons) é uma extensão do Perceptron proposto por Rosenblatt, composta de várias camadas de neurônios

Arquitetura de rede neural mais utilizada

Perceptrons de múltiplas camadas

Page 15: Redes Neurais

Contém três tipos de camadas:1. camada de entrada2. camada(s) intermediárias(s)3. camada de saída

Qualquer neurônio de uma camada pode interligar-se com outro neurônio da camada seguinte

Perceptrons de múltiplas camadas

Page 16: Redes Neurais

Perceptrons de múltiplas camadas

Camada de entrada

Camada intermediári

a

Camada de saída

Page 17: Redes Neurais

Perceptrons de múltiplas camadas O treinamento de uma rede neural MLP

é realizado de maneira supervisionada com o algoritmo Backpropagation (ou retropropagação do erro)

Nesse algoritmo, a determinação do sinal de erro é um processo recursivo que se inicia nos neurônios da camada de saída e vai até os neurônios da primeira camada intermediária

Page 18: Redes Neurais

Backpropagation O algoritmo Backpropagation opera em

dois passos:1) Forward

um padrão é apresentado à camada de entrada da rede e propagado em direção à camada de saída

a saída obtida é comparada com a saída desejada para esse padrão particular. Se esta não estiver correta, o erro é calculado

Page 19: Redes Neurais

Backpropagation

2) Backward o erro é propagado a partir da camada de

saída até a camada de entrada os pesos das conexões dos neurônios das

camadas internas vão sendo modificados conforme o erro é retropropagado

Page 20: Redes Neurais

Backpropagation Para os neurônios das camadas

intermediárias, onde não existem saídas desejadas, o sinal do erro é determinado recursivamente em termos dos sinais dos erros dos j neurônios diretamente conectadas a eles e dos pesos destas conexões

Page 21: Redes Neurais

Backpropagation Erro dos neurônios na camada de saída

Erro dos neurônios nas camadas intermediárias

Ajuste dos pesos

Page 22: Redes Neurais

Backpropagation

Page 23: Redes Neurais

Backpropagation Vantagens

simples de implementar boa capacidade de generalização

Desvantagens dificuldade de justificar as respostas custo computacional significativo baixa velocidade de aprendizado

Page 24: Redes Neurais

Mapas Auto-Organizáveis O mapa auto-organizável (SOM:

Self-Organizing Map) é um tipo especial de rede neural não-supervisionada onde é realizado um processo de aprendizagem competitiva O neurônio mais próximo do padrão de

entrada (com a menor distância Euclidiana) é declarado vencedor

Page 25: Redes Neurais

Mapas Auto-Organizáveis Segundo Haykin (2001), o principal

objetivo do SOM é transformar um padrão de entrada, de dimensão arbitrária, em um mapa discreto uni- ou bi-dimensional

Page 26: Redes Neurais

Mapas Auto-Organizáveis SOM bidimensional

Camada de entrada

Camada computacion

al

Page 27: Redes Neurais

Mapas Auto-Organizáveis Os mapas auto-organizáveis

possuem duas propriedades principais:

1. Quantização vetorial (redução do espaço de entrada)

2. Agrupamento de padrões similares em regiões geograficamente próximas

Page 28: Redes Neurais

Mapas Auto-Organizáveis Algoritmo

1. Inicialize os vetores de pesos com valores aleatórios wj = [wj1, wj2, …, wjm], j=1,2,…n

Onde m é a dimensão do espaço de entrada e n é o número total de neurônios do mapa

Restrição: os vetores de pesos devem ser diferentes

2. Para cada padrão de entrada x = [x1, x2, ...xm] encontre o neurônio mais próximo desse padrão

(neurônio vencedor i(x)=arg min||x-wj||) atualize os pesos

3. Repita o passo 2 até que não sejam observadas modificações significativas no mapa

Page 29: Redes Neurais

Mapas Auto-Organizáveis Ajuste dos vetores de pesos

wj = h(i(x))(x - wj ) Onde h(i(x)) é a função de

vizinhança que mede o grau de participação dos neurônios vizinhos a i(x) no processo de aprendizado

Page 30: Redes Neurais

Mapas Auto-Organizáveis Experimento:

agrupamento de 16 animais em 3 categorias

Caçadores Pássaros Espécies pacíficas

SOM 10x10 2000 iterações

Page 31: Redes Neurais

Atributos

Page 32: Redes Neurais

Mapa Contextual

Caçadores

Pássaros

Espécies pacíficas

Page 33: Redes Neurais

Referências Mitchell, T., Machine Learning.

McGraw-Hill, 1997 Haykin, S. Redes Neurais –

Princípios e prática. 2. Ed. Porto Alegre, RS: Bookman, 2001