23
CONTEÚDO Introdução Motivação, Objetivo, Definição, Características Básicas e Histórico Conceitos Básicos Neurônio Artificial, Modos de Interconexão Processamento Neural Recall e Learning Regras de Aprendizado Perceptron, Back Propagation, Mapa de Kohonen

Parte 3 Perceptron

Embed Size (px)

Citation preview

Page 1: Parte 3 Perceptron

CONTEÚDO• Introdução

– Motivação, Objetivo, Definição, Características

Básicas e Histórico

• Conceitos Básicos

– Neurônio Artificial, Modos de Interconexão

• Processamento Neural

– Recall e Learning

• Regras de Aprendizado

– Perceptron, Back Propagation, Mapa de Kohonen

Page 2: Parte 3 Perceptron

Algoritmos de Aprendizado

•Perceptron

•Delta Rule (Least Mean Square)

•Multi-Layer Perceptron (Back Propagation)

Page 3: Parte 3 Perceptron

Algoritmos de Aprendizado

Os algoritmos podem ser definidos

através das seguintes características:

Regra de Propagação

Função de Ativação

Topologia

Regra de Aprendizado - w

Page 4: Parte 3 Perceptron

Algoritmos de Aprendizado

•Perceptron

•Delta Rule (Least Mean Square)

•Multi-Layer Perceptron (Back Propagation)

Page 5: Parte 3 Perceptron

Perceptron

Na sua forma mais simples o modelo do

processador consiste de:

Padrão

de

Entrada:

vetor X

x1

x2

xi

sj

netj

wj1

wj2

wji

Bias = j+1

Page 6: Parte 3 Perceptron

Perceptron

• Características Básicas:

– Regra de Propagação netj = xi.wji + j

– Função de Ativação Degrau

– Topologia Uma única camada de

processadores.

– Algoritmo de Aprendizado Supervisionado:

wji = .xi.tj(se tj ≠ sj)

– Valores de Entrada/Saída Binários {-1,1}

Page 7: Parte 3 Perceptron

Perceptron

wji = si.sj “Hebbian Learning Rule”

wji = si.tj Regra de aprendizado do Perceptron

sjsi

wji

PEjPEiatividade pré-sináptica

atividade pós-sináptica

tj

• Inspiração na Regra de Hebb:

Page 8: Parte 3 Perceptron

Perceptron

• Como t,s {-1, +1}, as fórmulas abaixo são equivalentes:

wji = .tj.xi se tj sj

0 caso contrário

wji =.(tj. - sj).xi

Se tj ≠ sj tj – sj = 2tj 2 se tj = 1 e sj = -1

-2 se tj = -1 e sj = 1

Page 9: Parte 3 Perceptron

Algoritmo de AprendizadoInicialização:

pesos iniciados com valores aleatórios e pequenos (w0.1)

Treinamento:

Loop1 até que o erro de cada processador de saída seja tolerância, para todos os padrões do conjunto de treinamento.

Loop2 até terminar de apresentar todos os padrões

Aplica-se um padrão de entrada Xi com o respectivo vetor de saída Yidesejado.

Calcula-se as saídas de cada processador (sjp).

Calcula-se o erro para cada processador (ejp= tj

p - sjp ). Se erro

tolerância, para todos os processadores, volta ao passo .

Atualiza os pesos de cada processador (wjip = .xi

p .ejp).

Volta ao passo

Fim Loop2

Fim Loop1

Page 10: Parte 3 Perceptron

Algoritmo de Aprendizado

IMPORTANTE:

não ocorre variação no peso se a saída

estiver correta;

caso contrário, cada peso é incrementado

de 2 quando a saída é menor que o target

e decrementado de 2 quando a saída é

maior que o target.

Page 11: Parte 3 Perceptron

O Problema do OU-Exclusivo

Rosenblatt (1962) provou que:

Uma rede Perceptron é capaz de

Aprender tudo que puder Representar.

Representação refere-se à habilidade do

sistema neural de representar (simular) uma

função específica (Existe um conjunto de parâmetros

– pesos – que representa a função desejada)

Aprendizado refere-se à existência de um

procedimento sistemático de aquisição de

conhecimento (ajuste dos pesos), de forma a

produzir a função desejada

Page 12: Parte 3 Perceptron

O Problema do OU-Exclusivo

• Minsky & Papert provaram (Perceptrons 1969)

que existem sérias restrições sobre o que as

redes Perceptron são capazes de Representar.

• Por exemplo, as redes Perceptron NÃO são

capazes de Representar a função OU-Exclusivo

Page 13: Parte 3 Perceptron

O Problema do OU-Exclusivo

PONTO X1 X2 Saída

A0 0 0 0A1 0 1 1A2 1 0 1A3 1 1 0

F(net)w2

w1

x2

x1

saída: s

De acordo com a definição do

neurônio: s = F( x1w1 + x2w2 + )

net = x1w1 + x2w2 +

Função Degrau

Se net 0 s = 1

Se net < 0 s = 0

A rede Perceptron divide o

plano X1 x X2 em duas

regiões (através da reta net)

x1

x2

A3

A2

A0 A1

-

- w1

w2

Região de s = 0

Região de s = 1

+1

Page 14: Parte 3 Perceptron

O Problema do OU-Exclusivo

Conclusão:

– mudando-se os valores de w1, w2 e ,

muda-se a inclinação e a posição da reta.

– Entretanto, é impossível achar uma reta

que divida o plano de forma a separar os

pontos A1 e A2 de um lado e A0 e A3 de

outro.

– Redes de 1 única camada só representam

funções linearmente separáveis!

Page 15: Parte 3 Perceptron

Análise Geométrica

Page 16: Parte 3 Perceptron

O Problema do OU-Exclusivo

x1

x2

A3

A2

A0 A1 x1

x2

A3

A2

A0 A1

x1

x2

A3

A2

A0 A1

Função AND

Função OU-Exclusivo

Função OR

Page 17: Parte 3 Perceptron

Minsky & Papert provaram que este

problema pode ser solucionado

adicionando-se uma outra camada

intermediária de processadores.

Multi-Layer Perceptrons

O Problema do OU-Exclusivo

Page 18: Parte 3 Perceptron

Análise Geométrica

Perceptron – 1 camada apenas Multi-Layer Perceptron –

inserção de camada escondida

Ivan Nunes da Silva, D. H. Spatti, R. A. Flauzino, Redes Neurais Artificiais para

Engenharia e Ciências Aplicadas: Curso Prático, Artliber Editora, 2010.

Page 19: Parte 3 Perceptron

O Problema do OU-ExclusivoExemplo:

x1

x2

A3

A2

A0 A1s1

Região de

s1 = 1

Região de

s2 = 0

s2

s1

wj2=+1

wj1 = -2 j = -0.5

w12

w21

w22

w11

+1

x2

x1

sj

s2

s1

w11 = w12 = w21 = w22 = +1

-1.5

-0.5

+1

net2 = x1.w21 + x2.w22 + 2 = 0

x1 + x2 – 0,5 = 0

x2 = - x1 + 0,5

Page 20: Parte 3 Perceptron

O Problema do OU-ExclusivoExemplo:

sj = 1 s1wj1 + s2wj2 + j 0

-2s1 + s2 - 0.5 0

-2s1 + s2 0.5

x1

x2

A3

A2

A0 A1s1

Região de

s1 = 1

Região de

s2 = 0

s2

s1

wj2=+1

wj1 = -2 j = -0.5

w12

w21

w22

w11

+1

x2

x1

sj

s2

s1

w11 = w12 = w21 = w22 = +1

-1.5

-0.5

+1

s1 é inibitórios2 é excitatório

Região de

sj= 1

Page 21: Parte 3 Perceptron

• Observação:

Redes Neurais de múltiplas camadas

só oferecem vantagens sobre as de

uma única camada se existir uma

função de ativação não-linear entre

as camadas!

O Problema do OU-Exclusivo

Page 22: Parte 3 Perceptron

• Em termos vetoriais:

Camada Escondida NETH = XI . WH

SH = k1 NETH

Camada de Saída NETO = SH.WO

SO = k2 NETO

SO = k2 [SH.WO]

SO = k2 [(k1 NETH).WO]

SO = k2 [(k1 (XI . WH)).WO]

SO = (k2 k1) XI . (WH.WO)]

SO = K . XI . (WH.WO)

SO = K . XI . WT

Equivalente a uma camada

O Problema do OU-Exclusivo

PE3

PE2

PE1

PEn

PE1

PE2

PEm

Vetor SO

s1

s2

.

.

.

sn

Vetor SH

Vetor de

Entrada

XI

WOWH

Função Linear

Page 23: Parte 3 Perceptron

O Problema do OU-Exclusivo

PE1

PE2

PEm

Vetor SO

s1

s2

.

.

.

sn

Vetor de

Entrada

XI

WT

Função Linear

• Em termos vetoriais:

Duas camadas com função linear SO = K . XI . WT

Uma camada de Saída linear NETO = XI.WT

SO = K . XI . WT

Equivalente a uma camada