redes neurais luana bezerra batista [email protected]

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

Upload: gloria-manuela-tome-belem

Post on 07-Apr-2016

239 views

Category:

Documents


4 download

TRANSCRIPT

Page 2: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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

Camadas Algoritmo Backpropagation

5. Mapas Auto-Organizáveis

Page 3: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Introdução Arquitetura genérica de uma RN

Camada de entrada

Camada intermediári

a

Camada de saída

Page 5: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Perceptron Problemas linearmente separáveis

Page 8: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Perceptron Algoritmo de Teste

Para cada padrão x façaapresentar 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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Exemplo: problema XOR

Perceptron

Page 13: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

Solução: perceptrons de múltiplas camadas

Perceptron

Page 14: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Perceptrons de múltiplas camadas

Camada de entrada

Camada intermediári

a

Camada de saída

Page 17: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Backpropagation2) 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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Backpropagation

Page 23: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Mapas Auto-Organizáveis SOM bidimensional

Camada de entrada

Camada computacion

al

Page 27: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

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 Luana Bezerra Batista luana@dsc.ufcg.edu.br

Atributos

Page 32: Redes Neurais Luana Bezerra Batista luana@dsc.ufcg.edu.br

Mapa Contextual

Caçadores

Pássaros

Espécies pacíficas

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

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