Sunteți pe pagina 1din 5

Perceptron

Rosemblat prope o perceptron como um modelo inovador de aprendizado supervisionado;


Composto por uma estrutura de rede tendo como unidades bsicas nodos MCP e uma regra de
aprendizado.
Demonstrao do teorema da convergncia: o qual mostra que um nodo MCP treinado com o
algoritmo de aprendizado do perceptron sempre converge, caso o problema em questo seja
linearmente separvel .
Originalmente o perceptron consiste em uma rede de trs camadas, sendo que s a ultima possui

Entrada

pesos ajustveis.

Resposta

Associao

Arquitetura bsica do perceptron

Ativao net =
Propagao: y = 1 se
net>
0 se
net<=
O treinamento de uma rede neural consiste em ajustar seus
parmeros livres, que no caso do perceptron so w1...wn e o limiar . Porm a funo pode ser reescrita
como : net> -> net- >0. E se alm disso o - for incorporado ao net, teremos as seguintes funes de
ativao e propagao:
Ativao net =
onde
w0= - e x0=1
Propagao: y = 1 se net >0
0 se net <=0
Ento podemos dizer que o peso w0 est sempre associado a uma entrada cujo peso sempre 1. O peso w0
conhecido como bias e denotado pela letra b.

Durante o treinamento as entradas so mostradas ao perceptron e seus pesos so ajustados


segundo a regra criada por Rosemblat.Assim, seja di a sada esperada e yi a sada resultante do perceptron
para xi.
O que so problemas linearmente separveis
O perceptron s capaz de separar classes atravs de funes lineares. Mas para que ele consiga isto
necessrio que as classes sejam linearmente separveis, o que uma condio no garantida para a grande
maioria dos problemas.
Exemplo OU (linearmente separvel)

Exemplo OU exclusivo (no linear)

Como Rosemblat baseou a funcionalidade do Perceptron a problemas linearmente separveis este


no teve vida muito longa, j que duras crticas de Minsky e Papert [12] foram feitas em relao sua
capacidade computacional, j que a grande maioria dos problemas no linearmente separvel. Assim, um
grande impacto sobre as pesquisas em RNAs foi observado, o que levou a um grande desinteresse pela rea
durante os anos 70 e incio dos anos 80.
Esta viso pessimista sobre a capacidade do perceptron e das RNAs de um maneira geral
mudou, devido as descries da rede de Hopfield em 1982 [7] e do algoritmo de back-propagation. Foi em
conseqncia destes trabalhos que a rea de RNAs ganhou novo impulso, ocorrendo a partir do final dos anos
80, uma forma de expanso no nmero de trabalhos de aplicao e tericos envolvendo RNAs e tcnicas
correlatadas.
Exemplos
Pode-se ilustrar o funcionamento e o mtodo de aprendizagem do perceptron de uma camada
atravs da formulao exemplo.

Dada uma rede do tipo perceptron formada por 3 terminais de entrada utilizando pesos iniciais de w1 =
0.4, w2 = -0.5, w3 = 0.6; valor threshold = 0.5(w0) e a taxa de aprendizado = 0.4 (Figura 1).

Ensinar a rede gerar a sada 1 para o padro 001 sada de 1 para o padro 110.

Aps a rede treinada, determinar a que classe pertence os padres 111, 000, 100, 011.

Utilize como funo de ativao a funo step


Soluo:

1
1

se

x0

se

x0

-1

x1

0.5

0
w0 = 0.4

x2

w1 = -0.5
w2 = 0.6

x3

wixi

-1 1 d

Figura 1 - Funcionamento do Perceptron de uma camada


xi = padres de entrada.
d = valor desejada para sada aps processamento da rede.
Processamento para o padro 001:
y = (1 . -0,5) + (0 . 0,4) + (0 . 0,5) + (1 . 0,6)
y = 0,1

[aplicar funo de ativao]

y = 1, onde y representa a sada do padro processado


De acordo com o processamento da rede, percebe-se que a sada est incorreta em relao a
sada desejada, deve-se ento aplicar o algoritmo de treinamento do perceptron:

wi = wi + e xi | e = (d y)
w0 = -0,5 + 0,4 . (-1 -1) . -1 =w3 = -1.3 | w3 =
w1 = 0,4 + 0,4 . (-1 -1) . 0 w0 = 0,4
w2 = -0,5 + 0,4 . (-1 -1) . 0 w1 = -0.5
w3 = 0,6 + 0,4 . (-1 -1) . 1 w2 = -0.2
Com os pesos atualizados de acordo com o algoritmo de aprendizagem, deve-se processar o
padro de entrada novamente.
Processamento para o padro 001:
y = (1 . -1,3) + (0 . 0,4) + (0 . -0.5) + (1 . -0,2)
y = -1,5 [aplicar a funo de ativao]
y = -1
Neste momento, verifica-se que a sada desejada igual a sada obtida pela rede, com isso no
necessrio a atualizao dos pesos, pois a rede emitiu uma sada correta.
Processamento para o padro 110:
y = (1 . -1,3) + (1 . 0,4) + (1 . -0.5) + (0 . -0,2)
y = -1.4 [aplicar a funo de ativao]

y = -1

Novamente, percebe-se que a sada emitido pela rede est incorreta em relao a sada
desejada, deve-se ento aplicar o algoritmo de treinamento do perceptron:

wi = wi + e xi | e = (d y)
w3 = -1.3 + 0,4 . (1 - (-1) ) . 1 w0 = -0.5
w0 = 0,4 + 0,4 . (1 - (-1) ) . 1 w1 = 1,2

w1 = -0,5 + 0,4 . (1 - (-1) ) . 1 w2 = 0.3


w2 = -0,2 + 0,4 . (-1 - (-1) ). 0 w3 = -0.2
Com os pesos atualizados de acordo com o algoritmo de aprendizagem, deve-se processar o
padro de entrada novamente.
Processamento para o padro 110:
y = (1 .-0.5) + (1 . 1,2) + (1 . 0,3) + (0 . -0,2)=1

[aplicar a funo de ativao]

y=1
Neste momento, verifica-se que a sada desejada igual a sada obtida pela rede, com isso no
necessrio a atualizao dos pesos, pois a rede emitiu uma sada correta.
Com o treinamento realizado, pode-se ento classificar os padres 111, 000, 100, 011 e obter as
sadas 1, -1, 1, -1 respectivamente. A Figura 2 ilustra tal classificao

Figura 2 - Classificao do Perceptron j treinado