Redes neurais artificiais

9
1 Inteligência Computacional Redes Neurais Artificiais Antonio C. G. Thomé [email protected] Eugênio Silva [email protected] Roteiro da Aula Histórico das redes neurais Modelo do neurônio artificial Arquiteturas de redes neurais Representação do Conhecimento Aprendizado Perceptron ADALINE / MADALINE 1943: trabalho pioneiro de McCulloch e Pitts McCulloch: psiquiatra e neuroanatomista Pitts: matemático descrição do modelo formal de um neurônio acreditava-se que um número suficiente de neurônios atuando de forma adequada poderiam, a princípio, computar qualquer função computável Histórico 1949: Hebb publica o livro The Organization of Behavior formulação da primeira regra de aprendizagem 1958: Rosemblat propõe o Perceptron como um método inovador de aprendizagem supervisionada demonstração do teorema da convergência Histórico (cont.) 1960: Widrow e Hoff descrevem o ADALINE (ADAptative LINear Element ) formulação da regra delta 1969: Minsky e Papert demonstram as limitações do Perceptron aplicável apenas a problemas linearmente separáveis Histórico (cont.) década de 1970: adormecimento das pesquisas em redes neurais livro de Minsky e Papert 1982: Hopfield publicou um estudo sobre as propriedades associativas das redes neurais relação entre redes recorrentes e sistemas físicos Histórico (cont.)

description

 

Transcript of Redes neurais artificiais

1

Inteligência ComputacionalRedes Neurais Artificiais

Antonio C. G. Thomé – [email protected]ênio Silva – [email protected]

Roteiro da Aula

• Histórico das redes neurais• Modelo do neurônio artificial• Arquiteturas de redes neurais• Representação do Conhecimento• Aprendizado• Perceptron• ADALINE / MADALINE

• 1943: trabalho pioneiro de McCulloch e Pitts

– McCulloch: psiquiatra e neuroanatomista

– Pitts: matemático

– descrição do modelo formal de um neurônio

– acreditava-se que um número suficiente de neurônios atuando de forma adequada poderiam, a princípio, computar qualquer função computável

Histórico

• 1949: Hebb publica o livro The Organization of Behavior

– formulação da primeira regra de aprendizagem

• 1958: Rosemblat propõe o Perceptron como um método inovador de aprendizagem supervisionada– demonstração do teorema da convergência

Histórico (cont.)

• 1960: Widrow e Hoff descrevem o ADALINE (ADAptativeLINear Element )– formulação da regra delta

• 1969: Minsky e Papert demonstram as limitações do Perceptron– aplicável apenas a problemas linearmente separáveis

Histórico (cont.)

• década de 1970: adormecimento das pesquisas em redes neurais– livro de Minsky e Papert

• 1982: Hopfield publicou um estudo sobre as propriedades associativas das redes neurais– relação entre redes recorrentes e sistemas físicos

Histórico (cont.)

2

• 1986: Rumelhart, Hinton e Williams desenvolvem o

algoritmo backpropagation

– formulação da regra delta generalizada

• 1988: Broomhead e Lowe descrevem um procedimento para o projeto de redes utilizando funções de base radial

Histórico (cont.)

f (.)

dendritos

corpo celular

axônio w___> y

Modelo BiológicoModelo Artificial

Um Paralelo com o Cérebro

Capacidade Cerebral

número de interconexões103 106 109 1012

103

106

109

1012

1015

1018

Sanguessuga

Homem (1014,1016)

100 bilhões de neurônios

inte

rcon

exõe

s / s

eg

Modelo Matemático do Neurônio

funçãode

ativação

função de

propagação

w1

w2

wn

x1

x2

xn

y

.

.

.

b

+1

função de transferência

y = f(X,W) = P(A(X,W))

Componentes do Neurônio

}1,0{0

∈=∑=

i

m

iii xxwnet

≤>

=θθ

netnet

sese

y01

onde: é o limiar (threshold)θ

• função de ativação

• propagação

Funções de Propagação

1

-1

1

0

≤>

= 0 x se0 0 x se1

y

≤>

= 0 x se1- 0 x se1

y

• sinal

• degrau

3

Funções de Propagação (cont.)

0

0

• linear

• semi-linear

ax y =

a

-a

≤<<

≥=

a- x sea-a x a- sex

a x sea y

Funções de Propagação (cont.)

-1

1

0

0

1• logística

• tangente hiperbólico

(-ax)e11 y

+=

1 - )e (12 y (-2ax)+

=

Arquiteturas de RN’s

x2

x1

x3

x2

x1

x3

• quanto ao número de camadas

– redes de camada única

– redes de múltiplas camadas

Arquiteturas de RN’s (cont.)

x2

x1

x3

x2

x1

x3

• quanto ao tipo de conexão

– feedforward (acíclica)

– feedback (cíclica)

Arquiteturas de RN’s (cont.)

x2

x1

x3

• quanto ao tipo de conectividade

– parcialmente conectada

– completamente conectada

x2

x1

x3

Representação do Conhecimento

“Conhecimento se refere à informação armazenada ou a modelos utilizados por uma pessoa ou máquina para

interpretar, prever e responder apropriadamente ao mundo exterior”.

• características– que informação é realmente tornada explícita– como a informação é codificada para o uso subseqüente – uma boa solução depende de uma boa representação

4

Tarefas da Rede Neural

• aprender um modelo do mundo (ambiente) no qual ela está inserida

• manter o modelo suficientemente consistente com o mundo real a fim de atender os objetivos especificados pela aplicação de interesse

Processos de Aprendizagem

“Aprendizagem é o processo pelo qual os parâmetros livres de uma rede neural são adaptados através da estimulação

pelo ambiente no qual a rede está inserida.”

• passos do processo de aprendizagem– a rede neural é estimulada por um ambiente– a rede neural sofre modificações nos seus parâmetros livres– a rede neural responde de uma maneira nova ao ambiente

Aprendizagem Supervisionada

• o professor tem conhecimento sobre o ambiente, sendo o conhecimento representado por um conjunto de exemplos de entrada-saída

professorambiente

Σsistema deaprendizagem

+-

sinal de erro

estado doambiente

Aprendizagem por Correção de Erro

• procura minimizar a diferença entre a soma ponderada das entradas pelos pesos e a saída desejada

• esta expressão consiste na regra de aprendizado tanto do Perceptron quanto do ADALINE

y(t) - d(t) e(t)=

e(t)X(t) W(t) 1)W(t η+=+

Aprendizagem Não-Supervisionada

• não há um professor para supervisionar o processo de aprendizagem, ou seja, não há exemplos rotulados da função a ser aprendida pela rede

ambiente sistema deaprendizagem

estado doambiente

Aprendizagem Hebbiana

• o postulado de aprendizagem de Hebb é a mais antiga e mais famosa de todas as regras de aprendizado

• recebe este nome em homenagem ao neuropsicólogo Donald Hebb

5

Aprendizagem Hebbiana (cont.)

• o postulado de aprendizagem de Hebb

– se dois neurônios em ambos os lados de uma sinapse são

ativados simultaneamente, então a força daquela sinapse é

seletivamente aumentada

– se dois neurônios em ambos os lados de uma sinapse são

ativados assincronamente, então aquela sinapse é

seletivamente enfraquecida ou eliminada

Aprendizagem Competitiva

• dado um padrão de entrada, as unidades competem entre si para decidir qual delas será a vencedora

• a unidade vencedora tem a sua saída ativada e seus pesos são atualizados no treinamento

Aprendizagem Competitiva (cont.)

• algoritmo

1 – apresentar um vetor de entrada

2 – calcular a ativação inicial de cada unidade de saída3 – deixar as unidades de saída competirem até que apenas

uma fique ativa4 – aumentar os pesos sobre as conexões entre a unidade de

saída ativa e as unidades de entrada ativas

Perceptrons

• objetivo:– classificar corretamente o conjunto de estímulos aplicados

externamente em uma de duas classes

• características– aprendizado supervisionado– representação binária– apenas uma camada de pesos ajustáveis

ΣΣ

x1

xm wm

w1

net

w0

+1

y

Ativação Propagação

}1,0{0

∈=∑=

i

m

iii xxwnet

≤>

=θθ

netnet

sese

y01

onde: é o limiar (threshold)θ

Arquitetura Básica do Perceptron Fronteira de Decisão

• atribuir o ponto representado pelas entradas x1, x2, ..., xn à classe C1 se a saída y do Perceptron for igual a 1 ou à classe C2 se ela for 0

classe C1

classe C2

x1

x2

fronteira de decisão

w1x1 + w2x2 + b = 0

6

Limitações do Perceptron

– não admite mais de uma camada de pesos ajustáveis

– aprendizado nem sempre ocorre

– as duas classes C1 e C2 devem ser linearmente separáveis

classeC1 classe

C2

classeC1 classe

C2

Dedução da Regra do Perceptron

seja {x, d} um par de treinamento

o erro na saída do neurônio é dado por: e = d – y

onde y ∈ {0,1} e d ∈ {0,1}

logo, para e ≠ 0 existem duas situações possíveis

d = 1 e y = 0 ou d = 0 e y = 1

1a Situação

d = 1 e y = 0⇒ e = 1⇒ W·X < 0 ⇒ ||W||·||X||·cos(W,X) < 0⇒ cos(W,X) < 0 ⇒ α(W,X) > 90°∆W = η·X ⇒ W(t +1) = W(t) + η·Xcomo e = 1, então W(t +1) = W(t) + η·e·X

X

W(t) W(t+1)ηX

α

( )XW,cosXW ⋅⋅

2a Situação

d = 0 e y = 1⇒ e = -1⇒ W·X ≥ 0 ⇒ ||W||·||X||·cos(W,X) ≥ 0⇒ cos(W,X) ≥ 0 ⇒ α(W,X) ≤ 90°∆W = -η·X ⇒ W(t +1) = W(t) - η·Xcomo e = -1, então W(t +1) = W(t) + η·e·X

X

W(t)W(t+1)-ηX

α

( )XW,cosXW ⋅⋅

Teorema da Convergência

• se os vetores de um conjunto de treinamento pertencem a duas classes linearmente separáveis, o processo de atualização dos pesos leva a uma solução em um tempo finito.

• demonstração– págs: 38 – 41 (livro do Braga)– págs: 163 – 168 (livro do Haykin)

Treinamento do Perceptron

• algoritmo

1 – inicializar η e o vetor de pesos W

2 – 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(t + 1) = W(t) + η·e·X(t)

4 – até e = 0 para todos os p elementos do conjunto de treinamento em todos os neurônios da rede

( ){ }p1i

id

i y,xΓ ==

7

Treinamento do Perceptron (cont.)

λ

ΣΣx0

xm wm

w0

nety

+x-

+yd

∆Wi

∆Wi= λ.(yd-y).Xonde: λ é a taxa de aprendizado

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

z1110

4

.5

.5

x

y

z

5

5

y

x

5x + 5y = 4

x

Exemplo

• 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 1XLúcia1 0XMaria0 1XPaulo0 0XJosé

codificaçãomasculinofemininonome

Exemplo (cont.)

• condições de disparo– se net > 0 y = 1 (feminino)– se net ≤ 0 y = 0 (masculino)

• início do treinamento– b = 0– w1 = 0– w2 = 0

Exemplo (cont.)

• apresentação 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

Exemplo (cont.)

• apresentação 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

8

Exemplo (cont.)

• apresentação 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

Exemplo (cont.)

• apresentação 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

ADALINE

• características

– ADALINE e Perceptron surgiram quase que simultaneamente

– tem seus pesos ajustados em função do erro de sua saída linear, antes da aplicação da função de propagação

– continua com o problema de uma única camada de pesos ajustáveis

– a função de custo a ser minimizada é quadrática nos pesos de entrada, e a minimização é feita pelo método do gradiente

Dedução da Regra Delta

• atualização dos pesos pelo método do gradiente– o ajuste ocorre quando e ≠ 0 ⇒ ∆W ≠ 0

• função de erro a ser minimizada

• objetivo– obter a direção do ajuste a ser aplicado ao vetor de pesos de

forma a caminhar em direção à solução ótima

( )∑=

−=p

1i

2ii yd21E

Dedução da Regra Delta (cont.)

• o ajuste é feito na direção contrária do gradiente

EtW −∇∝∆ )(

ii wy

yE

wE

∂∂

∂∂

=∂∂

( )( )nnii

xwxwwdxwE

++−−=∂∂

K110

exwE

ii

−=∂∂

ii exw ∝∆

ii exw η=∆

)()()1( teXtWtW η+=+

ΣΣx0

xm wm

w0

nety

+x

-

+yd

λ

∆Wi

∆Wi= λ.(yd - net).X

Treinamento do ADALINE

9

Madaline

• uma das primeiras redes neurais em camadas treináveis com múltiplos elementos adaptativos

• uma camada composta por ADALINE´s é conectada a um ADALINE com parâmetros fixos

• critérios de decisão: OU E MAIORIA

Exemplo (OU-exclusivo)

[0 1]

[1 0]

[1 1]

[0 0]maj

MAIORIA