Redes neurais artificiais
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