curso introdução às redes neuronais parte 2 prof. dr. rer.nat. aldo von wangenheim

Post on 17-Apr-2015

105 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CursoIntrodução às Redes Neuronais

Parte 2

Prof. Dr. rer.nat. Aldo von Wangenheim

Recapitulação: Aspectos Importantes

• Modelagem dos Objetos

• Implementação dos Algoritmos de Treinamento

• Escolha e Gerência dos exemplos para Treinamento

• Estes aspectos são independentes do modelo de rede que se deseja implementar.

Recapitulação: Modelagem dos Objetos

Objetos a serem modelados:

• Rede

• Camada (Layer)

• Neurônio

• Conexão

• Neuroreceptor (Site)

1.

0

0.

5

0.

0

1.

0

0.

5

0.

0

1.

0

0.

5

0.

0

1.

0

0.

5

0.

0

1

0

0

Backpropagation

• Modelo mais utilizado atualmente• Baseia-se em uma extensão dos Perceptrons• Utilizado quando queremos “aprender” uma

função y = ?(x) desconhecida entre um conjunto de dados de entrada x e um conjunto de classificações possíveis y para esses. BP é um algoritmo para a implementação de

classificadores de dados. Representa teoricamente qualquer função, desde

que exista.

Perceptrons (1957)

• Redes Feed-Forward Treinamento baseado no Erro entre saída e padrão.

• 2 Camadas Limitado pque não existiam algoritmos de treinamento.

• Dois modelos de Neurônios: Neurônios de Barreira

• Representam dados linearmente separáveis

Neurônios Lineares• Representam dados linearmente independentes.

Aprendizado nos Perceptrons• Através da adaptação dos pesos wik

• Mesmo para os dois tipos de neurônios.

Entrada:

Saida:

Valor de entrada:

Desejado:

Quando a entrada for aplicada na entrada, teremos como saida:

u

O =

O = g( h ) = g w

iu

ku

iu

iu

u

iu

iu

kik k

u

k

Perceptron: Regra de Aprendizado

iknovo

ikvelho

ik

ikimy

kmy

iu

imy

ik iu

imy

ku

w = w + w

w = 2 O ;

0

w = - O

onde

caso

senao

ou:

e a taxa de aprendizado

:

.

Perceptron: Regra de Aprendizado

• A regra de aprendizado do Perceptron é chamada de Regra-Delta. A cada passo é calculado um novo delta.

• Com a Regra-Delta como foi definida por Rosenblatt havia vários problemas: Só servia para treinar redes onde você pudesse determinar o

erro em todas as camadas. Redes com só duas camadas eram limitadas. Nos neurônios lineares, onde era fácil determinar o erro

numa camada interna, não fazia sentido incluí-la por causa da dependência linear.

Regra de Aprendizado:Minimizar o Erro

• Inicializamos a rede com valores aleatórios para os pesos.

• A Regra Delta aplicada repetidamente produz como resultado e minimização do erro apresentado pela rede:

Erro:

E = 1

2 - O - w

iu

2

iu

iu

iu

2

iu

kik k

u = 12

[w]

Pesos Convergem

para um Ponto de

Erro Mínimo chamado Atrator

Problemas:• As vezes o espaço vetorial definido por um

conjunto de vetores de pesos não basta, não há um atrator (dados linearmente inseparáveis)

• Solução: Rede de mais camadas

• Problema: Como definir o erro já que não podemos usar

neurônios lineares, onde o erro pode ser definido pela derivada parcial de E em relação a w ?

Erro em Camadas Internas

• Com neurônios de McCulloch & Pitts podemos representar qualquer coisa.

• Como perém treiná-los ? Para a camada de saída é fácil determinar o erro, Para outras impossível.

E = 1

2 - O - w

iu

2

iu

iu

iu

2

iu

kik k

u = 12

[w]

Solução (McLelland 1984)

• Usamos uma função não-linear derivável como função de ativação. Uma função assim mantém a característica

provada por McCulloch e Pitts de representação.

• Usamos como medida de erro em uma camada interna, a derivada parcial do erro na camada posterior.

• Propagamos esse erro para trás e repetimos o processo: Error Backpropagation.

Bacpropagation

• Redes de mais de duas camadas.Treinamento:

• 2 Passos: Apresentação de um padrão para

treinamento e propagação da atividade.

Calculo do erro e retropropagação do erro.

Treinamento em BP:

• Padrão de treinamento é apresentado.

• Atividade é propagada pelas camadas.

• Erro é calculado na saída e vetores de pesos entrando na última camada são adaptados.

• Derivada do erro em relação aos vetores de pesos (antes da adaptação) é calculada e usada para adaptação dos pesos da camada anterior.

• Processo é repetido até a camada de entrada.

Funções de AtivaçãoQuaselineares:

g(h) = (h)

g (h) = (1 - g )

g(h) = f (h) = [1 + (-2 h) ]

g (h) = 2 g(1 - g)

2

-1

tanh

exp

com

e:

com

i

j

k

w >

w

i

j

w

k u

k

i

h j

V j

h i

g( )

ij

rec giv

ku

iu

ju

ju

iu

output layer neuron index

hidden layer neuron index

input neuron index

weight

receiving neuron

giving neuron

input at input- neuron for pattern ;

the same as activation of neuron

expected output at neuron for given input pattern my

total input of HIDDEN neuron

OUTPUT of neuron

total input of OUTPUT neuron

ACTIVATION FUNCTION of neuron

_

Na apresentaçao de uma padrao a entrada de um neuronio escondido j

e a saida V

a unidade de saida i recebe:

e produz a saida O

u

juh =

kjkw k

u

juV = g( j

uh ) = g k

jkw ku

iuh =

jijW j

uV = j

ijW gk

jkw ku

iuO = g( i

uh ) = gj

ijW juV = g

jijW g

k

jmy

imy

jkw ku

E[ ]

E[ ] = 1

2 ui

2iu - i

uO

E[ ] = 1

2 u

2

iu - g

jw g

kjkw k

u

i

ij

O erro w

w

transforma se em:

w .

Dos neuronios de saida para os escondidos a regra e a de sempre:

ijij my

iu

iu

iu

ju

my

iu

ju

iu

iu

iu

iu

W = -E

W = - O g ( h )V

= V

= g ( h ) - O

Para os escondidos para outros escondidos ou para os de entrada:

com

e assim aforma geral da regra

w = -E

w = -

E

V

V

w

= - O g ( h )W g ( h )

= W g ( h )

=

= g ( h ) W

jkjk my j

u

ju

jk

myiiu

iu

iu

ij ju

ku

uiiu

ij ju

ku

ju

ku

juy

ju

iij i

u

pq

:

w = * Vpatterns

output input

top related