Inteligência Computacional Redes Neurais Inteligência

Propaganda
Universidade Federal do Rio de Janeiro
Núcleo de Computação Eletrônica
Inteligência Computacional
Redes Neurais
Inteligência
“ Faculdade de aprender, apreender ou compreender.
Qualidade ou capacidade de compreender e
adaptar-se facilmente. É agudeza de raciocínio e
perspicácia. ”
Aurélio Buarque de Holanda
2002/ 1
Prof. A. C. G. Thomé, PhD – [email protected]
Anderson Canêdo de Oliveira – [email protected]
Modelos de Inteligência
IA clássica x IA conexionista
• Biológico: inerente ao ser humano e constituído pelo cérebro,
pelos órgãos sensoriais e pela mente.
• IA simbólica: tenta simular o comportamento inteligente
humano desconsiderando os mecanismos responsáveis por tal.
• Artificial: algoritmos computacionais que desenvolvem
processamento numérico e simbólico, associados a bases de
conhecimento estratificados.
• Computacional: algoritmos computacionais que desenvolvem
apenas processamento numérico, com componente para
reconhecimento de padrões e níveis de adaptabilidade, de
tolerância a falhas e de auto-aprendizado.
Inteligência Computacional
“ É o braço da Ciência da Computação que estuda
formas de criar máquinas espertas, i.e. com
capacidade de realizar funções normalmente
associadas à Inteligência Humana. “
Webster
• IA Conexionista: acredita que construíndo-se um sistema que
simule a estrutura do cérebro, este sistema apresentará
inteligência, ou seja, será capaz de aprender, assimilar, errar e
aprender com seus erros.
Modelos Computacionais
• Tratamento de Incertezas: Lógica Nebulosa
• Forma de Raciocínio: Sistemas Especialistas e
Resolução de Problemas
• Seleção Natural: Algoritmos Genéticos
• Estrutura do Cérebro: Redes Neurais
• Sistemas Híbridos
1
Aplicações
Redes Neurais
• Problemas que envolvam:
• São sistemas computacionais formados pela integração
de inúmeros elementos de processamento (EP) muito
simples, altamente interconectados e trabalhando
massivamente em paralelo.
– Complexidade
– Incerteza
– Ambigüidade
Ex: jogos, sistemas de apoio a decisão, reconhecimento de
padrões, controle, processamento de linguagem natural,
processamento de sinais, aproximação de funções, etc.
• São inspiradas no modelo biológico do cérebro
humano.
Histórico
Modelo Convencional x Modelo Neural
Conhecimento
- extraído dos dados
Solução do Problema
- definida
- ajustada automaticamente
- estática
- dinâmica
- código e dados
- distribuído
Características
- precisão
- aproximado
- inflexibilidade
- flexível
- intolerância a falhas
- tolerância a falhas
- pré-estabelecido
• 1943 - McCulloch e Pits
• 1956 - Darthmouth College
• 1962 - Rosemblat
• 1963 - Bernard Widrow
• 1969 - Minsky e Papert
• 1969 - 1982
• 1982 - John Hopfield
• 1986 - Rumelhart
• 2001 - ????
Um Paralelo com o Cérebro
estudo do neurônio
surgimento de dois paradigmas da
IA, o simbólico e o conexionista.
concepção do Perceptron
filtros adaptativos (Adaline)
crítica aos Perceptrons
paralisação das pesquisas
resgate do interesse em RNA´s
algoritmo Backpropagation
Capacidade Cerebral
tos
dr i
den
axônio
__
>_
100 bilhões de neurônios
w
f (.)
corpo
celular
Modelo Artificial
Modelo Biológico
y
I
n
t
e
r
c
/
S
e
g
Homem (1014,1016)
1018
1015
1012
109
106
103
Sanguessuga
103
106
109
1012
Número de Interconexões
2
Modelo Matemático do Neurônio
Funções de Ativação/Propagação
Ativação
x1
A( x , w ) = ∑ wx
w1
x2
Função
de
Ativação
w2
Função
de
Propagação
y
Propagação
.
f(x)
1
.
.
xn
1
wn
1/2
y = f ( X , W ) = P • A( X , W )
-1
x
Função Degrau
Fases de Projeto
Parâmetros de Projeto
E
N
T
R
A
D
A
S
A
Í
D
A
• Número de camadas
• Função de transferência
• Número de neurônios/camada
• Representação dos dados
• Topologia
• Dinâmica de aprendizado
Arquiteturas de RNA´s
• Quanto ao número de camadas
1 - redes de única camada: só existe um nó entre
qualquer entrada e qualquer saída da rede.
2 - redes de múltiplas camadas: existe mais de um
neurônio entre alguma entrada e alguma saída da rede.
x1
x1
x2
x2
x3
x3
1
2
Função Sigmoid
Preparação
análise
seleção
normalização
P
r
e
p
a
r
a
ç
ã
o
Construção
da rede
Treinamento
Teste e Validação
F
o
r
m
a
t
a
ç
ã
o
Fixa Arquitetura
Saída
Arquiteturas de RNA´s (cont.)
• Quanto ao tipo de conexão
1 – feedforward, ou acíclica: a saída de um neurônio na iésima camada da rede não pode ser usada como entrada
de nodos em camadas de índice menor ou igual a i
2 – feedback, ou cíclica: a saída de algum neurônio na iésima camada da rede é usada como entrada de nodos em
camadas de índice menor ou igual a i
x1
x1
x2
x2
x3
x3
1
2
3
Arquiteturas de RNA´s (cont.)
• Quanto ao tipo de conectividade
1 – parcialmente conectada
• Supervisionado
Perceptron
Adaline
MLP
2 – completamente conectada
• Quanto à estrutura
1 – estática
• Não Supervisionado (auto-organizável)
ART
SOM
2 – auto-organizável
Aprendizado
Dinâmica de Treinamento
• Aprendizado Supervisionado:
utiliza um agente externo (professor) que indica à rede um
comportamento bom ou ruim de acordo com o padrão de
entrada
• Aprendizado Não Supervisionado (auto-organização)
não utiliza um agente externo indicando a resposta desejada
para os padrões de entrada, utiliza-se entretanto, exemplos de
coisas semelhantes para que a rede responda de maneira
semelhante.
O Modelo Perceptron
Σ
Ativação
m
net = ∑ wi xi xi ∈ {0,1}
i =0
net
^
y
• Incremental
os parâmetros (pesos) são ajustados ao final do processamento
de cada observação.
Σ
xm w
m
net
^
y
∆Wi
w0
1
os parâmetros (pesos) são ajustados somente ao final de cada
“epoch” (processamento de todo o conjunto de observações).
x0 w0
w1
xm wm
• Batch
O Aprendizado do Perceptron
Arquitetura Básica do Neurônio
x1
Alguns Modelos
x
yd
+
+
Propagação
1 se net >θ 
y=

0 se net ≤θ 
Onde:
θ
é o threshold
λ
∆Wi= λ.(yd-y).X
Onde: λ é a taxa de aprendizado
4
Características e Restrições
Capacidade de Classificação
• Características
- aprendizado supervisionado
- representação binária
- apenas uma camada de pesos ajustáveis
w2
• Restrições
- aprendizado nem sempre ocorre
- tempo de convergência pode ser longo
- não admite mais de uma camada de pesos ajustáveis
- classifica apenas padrões linearmente separáveis
w1
Separabilidade Linear
• Porta “OU”
• Porta “E”
x y z
0
0
1
1
0
1
0
1
0
0
0
1
x
x y z
.5
.9
y
.5
z
0
0
1
1
0
1
0
1
1
1
1
0
y
y
O Modelo Adaline
x
x0 w0
.5
.4
y
Σ
xm w
m
.5
∆Wi
.5x+.5y=.4
.5x+.5y=.9
z
x
net
+
λ
x
x
x
^
y
+
yd
∆Wi= λ.(yd - net).X
x
Características do Adaline
• Continua com o problema de uma única camada de pesos
ajustáveis
MultiLayer Perceptron - MLP
• Proposta de Rumelhart (1986)
• Substituição da função de propagação
• Tem seus pesos ajustados em função do erro de sua saída
linear, antes da aplicação da função de propagação
• A função de custo a ser minimizada é quadrática nos pesos de
entrada, o que é bastante conveniente para minimização pelo
método do gradiente
• Surgimento do Algoritmo de Retro-Propagação do Erro
“Error Backpropagation”
• Estratégia de Otimização - Gradiente Descendente
5
Fases da Rede MLP
Fase Forward
Fase Forward
1 – a entrada é apresentada à primeira camada da rede, a camada
C0
2 – para cada camada Ci a partir da camada de entrada
2.1 – Após os nodos da camada Ci (i > 0) calcularem seus sinais
de saída, estes servem como entrada para a definição das
saídas produzidas pelos nodos da camada Ci+1
3 – as saídas produzidas pelos nodos da última camada são
comparadas às saídas desejadas
Fase Backward
Fase Backward
O Algoritmo Backpropagation
1 – a partir da última camada, até chegar na camada de entrada:
1 – inicializar pesos e parâmetros
1.1 – os nodos da camada atual ajustam seus pesos de forma a
reduzir seus erros
2 – repita até o erro ser mínimo ou a realização de um dado número
de ciclos:
2.1 – para cada padrão de treinamento X
2.1.1 – definir a saída da rede através da fase forward
2.1.2 – comparar saídas produzidas com as saídas
desejadas
2.1.3 – atualizar os pesos dos nodos através da fase
backward
1.2 – o erro de um nodo das camadas intermediárias é calculado
utilizando os erros dos nodos da camada seguinte
conectados a ele, ponderados pelos pesos das conexões
entre eles
∆w2vk = λ.(Σ(Σesw3is).w2ki.f’(netil).Xv
O Algoritmo Backpropagation
x0 w0
xm w
m
Σ
net
∆w3mi = λ.ei.f’(netiv).Oml
i
^
y
x
i
yd
+
Taxa de Aprendizado
k
n
Derivada parcial da ativação pelo peso
erro
^
∆W
∆Wii== λ.(y
λ.(ydd-y).f’(net).X
-y).f’(net).X
^
Yi
j
_
X
+
λ
i
k
f’(net)
∆Wi
x
∆w2ki = λ.(Σesw3is).f’(netil).Okc
m
W1
s
W2
^
Yk
W3
_
Yd
6
O Aprendizado
Ativação
Ativação = net = ∑ wi x i = WX
1
Propagação
Propagação = sig ( x ) =
1 + e−x
}
Medida
Medidade
deMérito
Mérito
n
MLP – Capacidade de Classificação
w2
f ( net ) = sig ( net ) =
1
1 + e −WX
f '( net ) = ( 1 − f ( net ).) f ( net )
Aprendizado
Aprendizado
2
E ( k ) = ∑ ( yi − y$ i )
i =1
∆W ( k + 1 ) = − λ
∂E ( k )
∂W ( k )
Dificuldades no Treinamento
• Lentidão em superfícies complexas
Classe 1
Classe 2
w1
Técnicas de Aceleração do Treinamento
• Inclusão do Termo Momentum
• Mínimos locais
• Overfitting
• Não convergência
• Convergência muito lenta quando os valores dos nodos de saída
estão muito próximos de 0 ou 1
• Escolha da Taxa de Aprendizado para o Backpropagation
• Utilização de variantes mais rápidas que o backpropagation
padrão, como por exemplo Rprop e QuickProp
7
Download