T4 Perceptron Adaline

  • View
    234

  • Download
    0

Embed Size (px)

DESCRIPTION

Redes Neurais

Text of T4 Perceptron Adaline

  • 1Antonio G. Thomthome@nce.ufrj.brSala - 1013(021)2598-3268

    Os Modelos Os Modelos PerceptronPerceptron, , AdalineAdaline e e MadalineMadaline

    Universidade Federal do Rio de Janeiro

    PROGRAMA DE MESTRADOIM/DCC - NCE

    www.labic.nce.ufrj.br

    Fev 20052

    Redes Neurais AplicadasRedes Neurais Aplicadas

    O Modelo PERCEPTRON

    Rosemblat - 1962

  • 2Fev 20053

    Redes Neurais AplicadasRedes Neurais Aplicadas

    PERCEPTRON

    z objetivo: Atuar como classificador e como gerador de

    funes lgicas binrias

    z caractersticas aprendizado supervisionado representao binria apenas uma camada de pesos ajustveis

    Fev 20054

    Redes Neurais AplicadasRedes Neurais Aplicadas

    AtivaoPropagao - degrau

    R= = iim

    iii xwxwnet ,/

    0

    >=

    00

    01

    netnet

    sese

    y

    onde: o limiar (threshold)0w

    Perceptron - Arquitetura Bsica

    - tambm aprendido pela rede

    x1

    xm wm

    w1

    net

    w0

    +1

    y

    yd

    Xi

    iw xerro

    esquema aprendizagem

  • 3Fev 20055

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Fronteira de Deciso

    z atribui o ponto representado pelas entradas x1, x2, ..., xn classe C1 se a sada y do Perceptronfor igual a 1 ou classe C2 se ela for 0

    classe C1

    classe C2

    x1

    x2

    fronteira de deciso

    w1x1 + w2x2 + b = 0Demo: nnd4dbDecision bounderies

    Fev 20056

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Regra de Aprendizado do Perceptron

    wij(k+1) = wij (k) + *ei (k)*xjwij(k+1) = wij (k) + *ei (k)*xj

    xj

    yi

    ei(k) = ydi yi

    taxa de aprendizado

    Onde:

    Demo: nnd4prPerceptron Learning Rule

  • 4Fev 20057

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Treinamento do Perceptron

    z algoritmo

    1 inicializar e o vetor de pesos W2 repetir3 para cada par do conjunto de treinamento

    3.1 atualizar o vetor de pesos para cada um dos nodos da rede segundo a regra

    W(k + 1) = W(k) + eX(k)4 at e = 0 para todos os p elementos do conjunto de

    treinamento em todos os neurnios da rede

    ( ){ }p 1iidi y,x ==

    Fev 20058

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Separabilidade Linear Porta E

    x y0 00 11 01 1

    z0001

    9

    5x

    5y

    z

    y

    x

    5x + 5y = 9

    x

    Porta OU

    x y0 00 11 01 1

    z0111

    4

    .5

    .5

    x

    y

    z

    5

    5

    y

    x

    5x + 5y = 4

    x

    Demo: Classif w/ 2 input neurons

  • 5Fev 20059

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Porta E

    y

    x

    x

    x y0 00 11 01 1

    z0001w0

    x

    y

    +1

    wx

    wyz

    PERCEPTRON

    Passo 1 iniciar wi e (taxa de aprendizado) wx = +1; wy = +2; w0 = -1; = 1

    Passo 2 apresenta primeiro padro de amostra {x1,y1} {0,0} net(1)= wx* x1 + wy* y1 + w0* 1 = -1 z(1) = 0 -- correto

    >=

    00

    01

    'netnet

    sese

    z

    x+2y-1=0

    Fev 200510

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Porta E

    y

    x

    x

    x y0 00 11 01 1

    z0001w0

    x

    y

    +1

    wx

    wyz

    PERCEPTRON

    Passo 3 apresenta segundo padro de amostra {x2,y2} {0,1} net(2)= 1*0 + 2*1 + -1* 1 = +1 z(2) = 1 incorreto adapta os pesos:

    wx(3) = wx(2) + 1*(z(2)-z(2))*x(2) = 1 + (-1)*0 = 1

    wy(3) = wy(2) + 1*(z(2)-z(2))*y(2) = 2 + (-1)*1 = 1

    w0(3) = w0(2) + 1*(z(2)-z(2))*1 = -1 + (-1)*1 = -2

    >=

    00

    01

    'netnet

    sese

    z

    x+y-2=0

  • 6Fev 200511

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Porta E

    y

    x

    x

    x y0 00 11 01 1

    z0001w0

    x

    y

    +1

    wx

    wyz

    PERCEPTRON

    Passo 3 apresenta terceiro padro de amostra {x3,y3} {1,0} net(3)= 1*1 + 1*0 + -2* 1 = -1 z(3) = 0 correto

    Passo 4 apresenta quarto padro de amostra {x4,y4} {1,1} net(4)= 1*1 + 1*1 + -2* 1 = 0 z(4) = 0 incorreto

    wx(4) = 1 + (1)*1 = 2; wy(4) = 1 + (1)*1 = 2; w0(4) = -2 + (1)*1 = -1

    >=

    00

    01

    'netnet

    sese

    z

    2x+2y-1=0

    Fev 200512

    Redes Neurais AplicadasRedes Neurais Aplicadas

    w1

    w2

    PERCEPTRON Capacidade de Classificao

  • 7Fev 200513

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Limitaes do Perceptron

    no admite mais de uma camada de pesos

    ajustveis

    aprendizado nem sempre ocorre

    as duas classes C1 e C2 devem ser linearmente

    separveis

    classeC1 classe

    C2

    classeC1 classe

    C2

    Demo: Linearly non separable vectors

    Fev 200514

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Problemas linearmente separveis so aqueles que podem ser resolvidos utilizando uma reta

    ou hiperplano como fronteira de deciso.

    X1

    X2

    X1

    X2

    Linearmente separvel No-linearmente separvel

  • 8Fev 200515

    Redes Neurais AplicadasRedes Neurais Aplicadas

    z Classificao perfeita quase nunca possvelz Nem todos os problemas so linearmente separveisz Difcil validar qual o melhor nmero de categorias

    para um determinado problemaz Grande sobreposio de classes (???)z Causas freqentes de erros:

    Padres no podem ser linearmente separados Caractersticas podem ser inadequadas para distinguir as

    diferentes classes Caractersticas podem ser muito correlacionadas Podem haver subclasses distintas nos dados

    Realidade

    Fev 200516

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Combinar Camadasz Poderia ser uma soluo?

    Problemaz Como treinar as camadas

    mais internas?

    ?

    PERCEPTRON 01 camada & linearmente separveis

  • 9Fev 200517

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Porta XOR

    y

    x

    x

    x y0 00 11 01 1

    z0110w0

    x

    y

    +1

    wx

    wyz

    PERCEPTRON

    >=

    00

    01

    'netnet

    sese

    z

    x

    +1

    PERCEPTRON

    yxyxyx +=

    x

    yz

    Fev 200518

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Exemplo

    z considere um conjunto de pessoas (4 elementos) formado por homens e mulheres. Treinar uma rede Perceptron, que seja capaz de reconhecer o sexo das pessoas.

    1 1XLcia1 0XMaria0 1XPaulo0 0XJos

    codificaomasculinofemininonome

  • 10

    Fev 200519

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Exemplo (cont.)

    z condies de disparo se net > 0 y = 1 (feminino) se net 0 y = 0 (masculino)

    z incio do treinamento b = 0 w1 = 0 w2 = 0

    Fev 200520

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Exemplo (cont.)

    z apresentao do primeiro elemento rede neural

    net = b 1 + w1 0 + w2 0 net = 0 1 + 0 0 + 0 0 = 0 y = 0 e d = 0 (resposta correta)

    w1b w2

    +1 0 0

  • 11

    Fev 200521

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Exemplo (cont.)

    z apresentao do segundo elemento rede neural

    net = b 1 + w1 0 + w2 1 net = 0 1 + 0 0 + 0 1 = 0 y = 0 e d = 0 (resposta correta)

    w1b w2

    +1 0 1

    Fev 200522

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Exemplo (cont.)

    apresentao do terceiro elemento rede neural

    net = b 1 + w1 1 + w2 0 net = 0 1 + 0 1 + 0 0 = 0 y = 0 e d = 1 (resposta incorreta)

    b = b + 1 = 0 + 1 = 1 net = b 1 + w1 1 + w2 0 w1 = w1 + 1 = 0 + 1 = 1 net = 1 1 + 1 1 + 0 0 = 2 w2 = w2 + 0 = 0 + 0 = 0 y = 1 e d = 1 (resposta

    correta)

    w1b w2

    +1 1 0

  • 12

    Fev 200523

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Exemplo (cont.)

    z apresentao do quarto elemento rede neural

    net = b 1 + w1 1 + w2 1 net = 1 1 + 1 1 + 0 1 = 2 y = 1 e d = 1 (resposta correta)

    w1b w2

    +1 1 1

    Fev 200524

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Modelo ADALINE

    Widrow & Hoff - 1963

  • 13

    Fev 200525

    Redes Neurais AplicadasRedes Neurais Aplicadas

    ADALINE

    z caractersticas

    ADALINE e Perceptron surgiram quase que simultaneamente

    tem seus pesos ajustados em funo do erro de sua sada

    linear, antes da aplicao da funo de propagao

    continua com o problema de uma nica camada de pesos

    ajustveis

    a funo de custo a ser minimizada quadrtica nos pesos de

    entrada, e a minimizao feita pelo mtodo do gradiente

    Fev 200526

    Redes Neurais AplicadasRedes Neurais Aplicadas

    Ativao Propagao - degrau

    R= = iim

    iii xwxwnet ,/

    0

    >=

    00

    01

    netnet

    sese

    y

    onde: o limiar (threshold)0w

    ADALINE - Arquitetura Bsica

    - tambm aprendido pela rede

    x1

    xm wm

    w1

    net

    w0

    +1

    y

    ydiw

    Xi

    x erro

    esquema aprendizagem

    Demo:Training w/ Linear neuron

  • 14

    Fev 200527

    Redes Neurais AplicadasRedes Neurais Aplicadas

    z atualizao dos pesos pelo mtodo do gradiente o ajuste ocorre quando e 0 W 0

    z funo de erro a ser minimizada

    z objetivo obter a direo do ajuste a ser aplicado ao vetor de pesos de

    forma a caminhar de forma incremental em direo soluo tima

    Esquema de Treinamento - Regra Delta

    ( )2

    )(2

    )(2

    d2 net(k)kye(k)kE ==

    Fev 200528

    Redes Neurais AplicadasRede