View
218
Download
0
Category
Preview:
Citation preview
Redes Neurais Artificiais
● Conceitos Básicos● Histórico● Evolução● O lugar das Redes Neurais dentro da IA● Características● Aplicações● Redes Neurais Multicamadas● Modos de Operação● Classificação
Conceito Básicos
➢ O que são Redes Neurais Artificiais:
“Modelos computacionais constituídos a partir do estudo de sistemas neuro-biológicos encontrados nos animais e nos seres humanos”.
Conceito Básicos - Neurofisiologiapioneiro na definição da estrutura básica do sistema
nervoso: Ramón y Cajál. Em 1911, ele sugere que os constituintes básicos do cérebro são os neurônios.
o cérebro humano apresenta aproximadamente 1011 neurônios (os neurônios não se reproduzem!), com aproximadamente 1013 sinapses ou conexões.
neurônios são de 5 a 6 ordens de magnitude mais lentos do que portas lógicas de silício (10-3 seg. 10-9 seg.)
no entanto, o cérebro realiza reconhecimento de padrões, percepção e controle motor muitíssimo mais rápido e melhor do que qualquer computador já produzido.
(Informações obtidas nas notas de aula do curso de Redes Neurais – Faculdade de Engenharia Elétrica Prof. Márcio Luiz de Andrade Neto & Prof. Fernando Von Zuben
Conceito Básicos – Neurofisiologia
o que faz o cérebro?– › o cérebro não “executa(roda!) programas”;– › o cérebro controla o comportamento visando garantir a
sobrevivência.
funcionalidade do cérebro:– › adaptabilidade por intermédio de aprendizado– › comportamento sensível ao contexto– › tolerância a erro– › capacidade de operar com conhecimento parcial– › grande capacidade de memória– › capacidade de processamento em tempo real
O neurônio biológico -Elemento Básico
corpo celular ou soma
axônio
árvore dentrital
fluxo da informação
Corpo celular: 5 a 50 m Axônio: 1 m a até 1m
árvore dendrital
O neurônio biológico no cérebro humano
➢ O cérebro humano possui em torno de 1011 neurônios, ou 100 Giga-neurônios (100.000.000.000)*
➢ Cada neurônio pode apresentar até 104 conexões com outros neurônios, ou 10 Kilo-conexões (10.000)
➢ Estima-se que o cérebro pode possuir, portanto, um máximo de 1015 conexões, cada uma podendo armazenar informação, e todas operando em paralelo, totalizando 1 Peta-conexões (1.000.000.000.000.000)
➢ Uma estimativa mais “realista” indica “apenas” , ou “só” 1014 conexões, ou 100 Tera-conexões (100.000.000.000.000)
* O cérebro humano médio (masculino, 50 anos) possui em torno de 86 bilhões de neurônios (Suzana Herculano-Louzel, 2009). Desse número, 69 bilhões estão situados no cerebelo e 16 bilhões no córtex cerebral.
O neurônio biológico – Sinapses
Sinapse: liga₤₧o entre um axônio de um neurônio, e um dentrito de um outro neurônio posterior. Podem ser excitatórias ou inibitórias, dependendo dos neurotransmissores liberados (+ de 100 tipos)
dendrito
O neurônio biológico – O Potencial de Ação
O potencial de ação representado pelo potencial de membrana no axônio de um neurônio. Tn é a duração do impulso nervoso, Ta é o período de refração absoluta e Tr o período de refração relativa.
O neurônio biológico-Integração dos Impulsos
● Representação da integração espacial/temporal dos estímulos
O neurônio artificial
x1
x2
xn
w1
w2
wn
+y
.
.
.
vetor de entrada
peso daconexão
somador função de ativação saída
₢
Características
➢ operação distribuída
➢ tolerância a ausência ou falsidade de informações
➢ habilidade de “aprender e generalizar”
Aplicações
➢Resolução de problemas difíceis de se modelar matematicamente
➢reconhecimento de caracteres escritos
➢reconhecimento de fala
➢recuperação de imagens a partir de fragmentos
➢controle de robôs
Histórico das Redes Neurais Artificiais
Fatos históricos marcantes:– › MCCULLOCH & PITTS (1943)– › WIENER (1948): Cibernética– › HEBB(1949): The Organization of Behavior– › ROSENBLATT(1958) - Perceptron– › MINSKY & PAPERT (1969)– › HOPFIELD (1982)– › RUMELHART & MCCLELLAND (1986)– › EDELMAN (1988): neurodarwinismo– › MINSKY (1988): sociedade da mente
Evolução
➢ Neurônio de McCulloch e Pitts● implementava funções E e Ou ● discriminador linear
(0,1)
(0,0)(1,0)
(1,1)
x1
x2
"E"
(0,1)
(0,0)(1,0)
(1,1)
x1
x2
"Ou"
y = x1 * x2 y = x1 V x2
Evolução
➔ Wiener (em 1948) publica seu livro “Cybernetics”, apresentando as bases para o controle, comunicação e tratamento de sinais.
➔ Hebb (em 1949) publica seu livro “The Organization of Behavior”, onde é proposta pela primeira vez uma regra de aprendizado sináptico
Evolução
➔ Minsky, em 1954, Tese de Doutorado em Redes Neurais
➔ Taylor, em 1956, propôs a ideia de memória associativa
➔ von Neumann, 1958, The Computer and the Brain, póstumo
Evolução
1958 - Rosenblatt Perceptrons - rede de múltiplos neurônios do
tipo discriminadores lineares
x1
x2
xn
w1
w2
wn
+y
.
.
.
vetor de entrada
peso daconexão
somador função de ativação saída
Evolução
➔ Widrow e Hoff (1960) – Algoritmo Least Mean-Square, modelo ADALINE (posteriormente MADALINE – Multi ADALINE : Primeira rede em camadas treinável)
➔ Nilsson, em 1965, Learning Machines, explicando o processo de aprendizado de hiperplanos separadores
➔ Minsky e Papert, em 1969, publicaram Perceptrons, onde demonstravam matematicamente a impossibilidade de redes monocamada de aprenderem padrões não linearmente-separáveis (XOR = Balde de água fria na pesquisa em RN)
Evolução
➔Década de 70: perdida..... devido aos seguintes motivos:➢ o livro e Minsky e Papert desestimulou os
pesquisadores ( e principalmente os financiadores) a desenvolver as redes neurais;
➢ Dificuldade de implementar os modelos nos computadores da época (baixo poder de processamento).
Evolução
Década de 80: Ressurgimento!● Grossberg, em 1980, estabeleceu um novo princípio de
auto-organização(ART-Adaptive Ressonance Theory)● Hopfield, em 1982, usou uma técnica de função de
energia para explicar o aprendizado de uma rede recorrente
● Kohonen, em 1982, apresenta seus mapa auto-organizáveis
● Barto, Sutton e Anderson, em 1983, aprendizado por reforço.
Evolução● Mas foram Rumelhart, Hinton e Williams, em 1986, que
realmente re-acenderam o interesse da comunidade acadêmica mundial nas redes neurais, com seus livros “Parallel Distributed Processing”, vols 1 e 2. Eles apresentaram uma maneira algorítmica de resolver o problema do treinamento do Perceptron de Múltiplas Camadas (Multi-Layer Perceptron-MLP), utilizando o algoritmo de retropropagação de erro (backpropagation).
● Posteriormente foi descoberto que a formulação matemática original foi desenvolvida por Werbos, em sua tese de doutoramento de Harward em 1974.
Evolução
● EDELMAN, em 1988, baseado em seus estudos de neurofisiologia e evolução, propôs uma nova teoria, revolucionária, o neurodarwinismo: o cérebro é composto de inúmeras redes neurais, denominados grupos neurais, e estes grupos se conectam entre si, formando “sociedades”, que possuem a capacidade de aprender a reagir de acordo com o ambiente onde o ser se encontra
● MINSKY, também em 1988, publica seu livro ”Sociedade da Mente”, propondo uma visão de alto nível da mente, com a mesma ideia base.
Evolução
Década de 90:● Apresentou um desenvolvimento acelerado da
teoria e das aplicações de redes neurais em ambiente acadêmico;
● Início da aplicação destas teorias à problemas do mundo real
● Século 21: O século do cérebro????
.
.
.
.
.
.
.
.
.
camada deentrada
camada desaída
camadas ocultas
K= 0 K = 1 K = 2 K = 3
Redes neurais multicamadas
Modos de Operação
➢Aprendizagem●A rede aprende através dos vetores de entrada e
saída
➢Produção●A rede trabalha, retornando um vetor de saída
dada uma entrada
Modos de Treinamento
➔Objetivos do treinamento➢Auto associação
●vetores de entrada●dada a entrada similar, a rede reconstitui o vetor original
➢Hetero-associação●pares de vetores de entrada e saída●dado um vetor, a rede reconstitui o par
➢Detecção de regularidade●agrupa os vetores de treinamento em grupos, segundo
sua semelhança
Classificação
➢ Quanto a topologia
● Redes Neurais Recorrentes
● Redes Neurais Não Recorrentes (Feed Forward)
➢ Quanto ao tipo de treinamento
● Treinamento Supervisionado
● Treinamento Não Supervisionado
Classificação
➢ Redes Neurais Recorrentes ● Os neurônios são realimentados (a saída do ciclo atual é
reaplicada no ciclo seguinte como sendo a nova entrada)
Nn
.
.
.
N1
N2
.
.
.
yn
y2
y3
x1
x2
xn
Classificação
➢ Redes Neurais Não Recorrentes (Feed Forward)● as conexões sempre partem da camada de entrada em
direção a camada de saída
N3
N1
N2
x1
x2
y
Classificação
➔ Treinamento Supervisionado➢ dada a entrada, a rede é treinada para produzir a
saída correta yd = f(x)
➢ pares de treinamento● apresenta um vetor de entrada x● a rede retorna um vetor de saída y● compara y com yd - calcula o erro
● atualiza os pesos das conexões até que o erro esteja dentro do limite pré-estabecido
Classificação
➢ Treinamento Não Supervisionado● não ensina à rede como produzir a saída correta
● a rede descobre padrões, regularidades, correlações ou categorias nos dados de entrada
● retorna o código da classe de padrões
Exemplo
➢ Treinamento supervisionado - Backpropagation
X1 X2 Y1 Y2
0.1 0.7 0.2 1.0
+X1
X2
Y1
Y2
b b
Wij b X1 X2
N1 -0,1 0,2 0,2
N2 0,3 -0,1 0,3
N3 0,1 0,1 0,9
Wi,j b N1 N2 N3
N4 0,2 0,1 -0,1 -0,1
N5 -0,1 0,5 0,2 1,1
ƒ
ƒ
ƒ
ƒ
Exemplo
u1,j = b + (x1 * Wx1) + (x2 * Wx2)
u11 = -0,1 + (0,1 * 0,2) + (0,7 * 0,2) = 0,06 v1 = tgh 0,06 = 0,06
u12 = 0,3 + (0,1 * -0,1) + (0,7 * 0,3) = 0,5 v2 = tgh 0,5 = 0,46
u13 = 0,1 + (0,1 * 0,1) + (0,7 * 0,9) = 0,74 v3 = tgh 0,74 = 0,63
u2,j = b + (v1 * Wn1) + (v2 * Wn2) + ( v3 * Wn3)
u2,1 = 0,2 + (0,06 * 0,1) + (0,46 * -0,1) + (0,63 * -0,1) = 0,097
v4 = 0,097 (ativação linear)
u2,2 = -0,1 + (0,06 * 0,5) + (0,46 * 0,2) + (0,63 * 1,1) = 0,715
v5 = tgh 0,715 = 0,614
y’1 = v4 = 0,097
y’2 = v5 = 0,614
Exemplo
➢ Erros produzidose1 = 0,2 - 0,097 = 0,103
e2 = 1 - 0,614 = 0,386
➢ derivadasv = u = 1
v = tgh u = 1 - u^2N1 1 - (0,06)^2 = 1
N2 1 - (0,46)^2 = 0,79
N3 1 - (0,63)^2 = 0,6
N4 1
N5 1 - (0,61)^2 = 0,63
Exemplo
➢ Cálculo do erro de retropropagação d4= (0,103 * 1) = 0,103
d5= (0,386 * 0,63) = 0,24
d1= [(0,103 * 0,1 ) + (0,24 * 0,5)] * 1 = 0,13
d2= [(0,103 * -0,1 ) + (0,24 * 0,2)] * 0,79 = 0,03
d3= [(0,103 * -0,1 ) + (0,24 * 1,1)] * 0,6 = 0,152
➢ Cálculo dos novos pesos das conexões dos neurôniosWij = -2**wj*di
● - coeficiente de aprendizagem (0,05 <= <= 0,1)● wj - valor original da saída do neurônio j
● di - erro de retropropagação
Exemplo
➢ Novos pesos Wij
W41= -2 * 0,05 * 0,06 * 0,103 = - 0,00061 W42= -2 * 0,05 * 0,46 * 0,103 = - 0,00473 W43= -2 * 0,05 * 0,63 * 0,103 = - 0,06489 W51= -2 * 0,05 * 0,06 * 0,24 = -0,00144 W52= -2 * 0,05 * 0,46 * 0,24 = - 0,01104 W53= -2 * 0,05 * 0,63 * 0,24 = -0,01512 W11= -2 * 0,05 * 0,1 * 0,13 = - 0,0013W12= -2 * 0,05 * 0,7 * 0,13 = -0,0091W21= -2 * 0,05 * 0,1 * 0,03 = -0,0003W22= -2 * 0,05 * 0,7 * 0,03 = -0,0021W31= -2 * 0,05 * 0,1 * 0,152 = -0,0015W32= -2 * 0,05 * 0,7 * 0,152 = -0,01064
Recommended