Introducao datamining altmauro.roisenberg/ine5377/Cursos-ICA/DM-intro_d… · • •3 Problema dos...
Transcript of Introducao datamining altmauro.roisenberg/ine5377/Cursos-ICA/DM-intro_d… · • •3 Problema dos...
• •
• •1
REDES NEURAIS
Marley Maria B.R. Vellasco
ICA: Núcleo de Pesquisa em InteligênciaComputacional Aplicada
PUC-Rio
CONTEÚDO• Introdução
– Motivação, Objetivo, Definição, CaracterísticasBásicas e Histórico
• Conceitos Básicos– Neurônio Artificial, Modos de Interconexão
• Processamento Neural– Learning e Recall
• Regras de Aprendizado– Perceptron, Back Propagation e Competitive
Learning.
• •
• •2
CONTEÚDO• Introdução
– Motivação, Objetivo, Definição, CaracterísticasBásicas e Histórico
• Conceitos Básicos– Neurônio Artificial, Modos de Interconexão
• Processamento Neural– Learning e Recall
• Regras de Aprendizado– Perceptron, Back Propagation e Competitive
Learning.
MOTIVAÇÃO Constatação que o cérebro processa informações de
forma diferente dos computadores convencionais
êCÉREBRO
velocidade 1 milhão de vezesmais lenta que qualquer gatedigital è processamentoextremamente rápido noreconhecimento de padrões
COMPUTADOR
processamento extremamenterápido e preciso na execuçãode sequência de instruçõesè muito mais lento noreconhecimento de padrões
êProcessamento altamente paralelo
(1011 neurônios com 104 conexões cada)
• •
• •3
Problema dos 100 Passos
Neurônio: 2msî
Processador: 2nsí
Processador é 106 mais rápido que o neurônio
êCérebro reage a um estímulo entre 0,2 e 1 seg.
ê O cérebro responde em 100 “passos”
MOTIVAÇÃO• Observações:
– O cérebro tem ∼ 10 bilhões de neurônios.– Cada neurônio tem ∼ 1.000 a 10.000 conexões
ê– 60 trilhões de conexões - 1014 sinapses!
ê– Cada pessoa pode dedicar 100.000 conexões para armazenar cada segundo de experiência
(65 anos ⇒ 2.000.000.000 de segundos!)
– Durante os 2 primeiros anos de vida, 1.000.000 de sinapses são formadas por segundo!!
• •
• •4
CONTEÚDO• Introdução
– Motivação, Objetivo, Definição, CaracterísticasBásicas e Histórico
• Conceitos Básicos– Neurônio Artificial, Modos de Interconexão
• Processamento Neural– Learning e Recall
• Regras de Aprendizado– Perceptron, Back Propagation e Competitive
Learning.
OBJETIVO
Estudar a teoria e a implementação desistemas massivamente paralelos, quepossam processar informação comeficiência comparável ao cérebro.
• •
• •5
DEFINIÇÃO
Redes Neurais Artificiais são sistemasinspirados nos neurônios biológicos ena estrutura massivamente paralela docérebro, com capacidade de adquirir,armazenar e utilizar conhecimentoexperimental.
Aquisição de Conhecimento:Aprendizado
Treinamento efetuado através da apresentaçãode exemplos ê
Existe uma variedade de algoritmos queestabelecem QUANDO e COMO os parâmetrosda Rede Neural devem ser atualizados
ê Algoritmos substituem a programação
necessária para a execução das tarefas noscomputadores
• •
• •6
APLICAÇÕES GERAIS
þ Reconhecimento de Padrõesþ Classificação de Padrõesþ Correção de Padrõesþ Previsão de Séries Temporaisþ Aproximação de Funçõesþ Suporte à Decisãoþ Extração de Informações
CONTEÚDO• Introdução
– Motivação, Objetivo, Definição, CaracterísticasBásicas e Histórico
• Conceitos Básicos– Neurônio Artificial, Modos de Interconexão
• Processamento Neural– Learning e Recall
• Regras de Aprendizado– Perceptron, Back Propagation e Competitive
Learning.
• •
• •7
Características Básicas
Devido à similaridade com a estruturado cérebro, as Redes Neurais exibemcaracterísticas similares ao docomportamento humano, tais como:
Características Básicas
• Procura Paralela e Endereçamento pelo Conteúdo:
O cérebro não possui endereço dememória e não procura ainformação sequencialmente
• •
• •8
Características Básicas
• Aprendizado:
A rede aprende por experiência, nãonecessitando explicitar os algoritmospara executar uma determinadatarefa
Características Básicas
• Associação:A rede é capaz de fazer associaçõesentre padrões diferentes
Ex: Cidade è Pessoa Perfume è Pessoa
• •
• •9
Características Básicas
• Generalização:
Habilidade de lidar comruídos e distorções,respondendocorretamente apadrões novos.
è
Redes Neurais sãocapazes degeneralizar o seuconhecimento a partirde exemplosanteriores
Características Básicas
• Abstração:
Capacidade de abstrair a essência de umconjunto de entradas, isto é, a partir depadrões ruidosos, extrair a informação dopadrão sem ruído.
• •
• •10
Características Básicas
• Robustez e Degradação Gradual:
A perda de um conjunto de elementosprocessadores não causa o malfuncionamento da rede neural.
CONTEÚDO• Introdução
– Motivação, Objetivo, Definição, CaracterísticasBásicas e Histórico
• Conceitos Básicos– Neurônio Artificial, Modos de Interconexão
• Processamento Neural– Learning e Recall
• Regras de Aprendizado– Perceptron, Back Propagation e Competitive
Learning.
• •
• •11
EVOLUÇÃO McCulloch & Pitts (Mathematical Bio-Physics, Vol. 5, 1943),“A Logical Calculus of Ideas Immanent in Nervous Activity”
Von Neumann Marvin Minsky Frank RosenblattMachine
IntelligenceMacroscopicIntelligence
MicroscopicIntelligence
1945 DigitalComputers
1950 Black-Box AI(LISP)
Perceptron,Adaline
1960 Mainframes Theorem Solver1970 Vax 780
(Time Sharing)Expert Systems
1980 Workstations,PCs
Commercializationof E.S.
Rumelhart,Hopfield
1990 DesktopSupercomputers
Commercializationof N.N.
EVOLUÇÃO
• Modelo de McCulloch-Pitts:w1
w2
wn
x1
x2
xn
T
wi = + 1 - i = 1,2,..., n
sEntradas(valores 0,1)
n
sk+1 = 1 se Σ wi xik ≥ T i=1
n
0 se Σ wi xik < T
i=1
• •
• •12
EVOLUÇÃO• Modelo de McCulloch-Pitts:
T=0
T=0
T=0
T=1 T=1 T=0
T=1
x1
x2
x1
x3
x21
x3
-1 s
entradaexcitatória
sk+1 = xk
1
1
1
1
1
11
-1
-1
-1
-1
s
entradainibitória
NAND __A B AB0 0 10 1 11 0 11 1 0
NOR ___A B A+B0 0 10 1 01 0 01 1 0
Célula de Memóriana ausência de entradas,a saída é armazenadaindefinidamente
HISTÓRICO• McCulloch & Pitts (1943):
– modelo computacional para o neurônio artificial. Não possuíacapacidade de aprendizado
• Hebb (1949):– modelo de aprendizado (Hebbian Learning Rule)
• Rosenblatt (1957):– Perceptron, com grande sucesso em certas aplicações e
problemas em outras aparentemente similares
• Minsky & Papert ( Perceptrons 1969):– prova matemática de que as redes Perceptron são incapazes
de solucionar problemas simples tipo OU-EXCLUSIVO
• Rumelhart (início da década de 80):– novos modelos que superaram os problemas dos Perceptrons.
• •
• •13
CONTEÚDO• Introdução
– Motivação, Objetivo, Definição, CaracterísticasBásicas e Histórico
• Conceitos Básicos– Neurônio Artificial, Modos de Interconexão
• Processamento Neural– Learning e Recall
• Regras de Aprendizado– Perceptron, Back Propagation e Competitive
Learning.
CONCEITOS BÁSICOS
• Neurônio Artificial– (Elemento Processador)
• Estruturas de Interconexão– FeedForward de 1 camada– FeedForward de Múltiplas Camadas– Recorrente (com realimentação)
• •
• •14
Sinapses Dendritos
Axônio
CorpoSomático
Neurônio Biológico
Neurônio Artificial
w1
w2
w3
PesosPropagação Ativação
Elemento ProcessadorElemento Processador inspirado no Neurônio Biológico
Elementos Básicos
• Estado de Ativação è sj
• Conexões entre Processadores– a cada conexão existe um peso sináptico
que determina o efeito da entrada sobre oprocessador è wij
• Função de Ativação– determina o novo valor do Estado de
Ativação do processador è sj = F (netj)
• •
• •15
Funções de Ativação
É a função que determina o nível deativação do Neurônio Artificial - sj = F(netj)
F(netj) F(netj)F(netj)
netjnetj netj
Degrau Pseudo-Linear Sigmoid
Tipos de Processadores
è Recebe os dados de entrada
è Apresenta os dados de saída
è As suas entradas e saídaspermanecem dentro do sistema
• •
• •16
Neurônio Artificial
3 pontos importantes: Ü Thresholding Ü Não-Linearidade Ü Saturação
F(netj)
netjthreshold
saturação
não-linear
F(net)net
w0
w1
w2
x1
x2
bias
y
net = w0 + w1x1 + w2x2
F(net) = 1 (sigmoid) 1 + e-net
Neurônio Artificial
Em função das equações de net e F(net):
1y = F(net) = 1 + e -(w0
+ x1w
1 + x
2w
2)
Fórmula matemáticarepresentada peloneurônio artificial
x1
x2
y
• •
• •17
Exemplos
Regressão Linear:y = a0 + a1x1 + a2x2 + a3x3
Variáveisexplicativas
RepresentaçãoNeural
Bias = +1
a2
a1a0
a3x3
x2
x1
yFunção linear
Acha a reta com erromínimo que passe pelospontos existentes(padrões de treinamento)
Reta obtidapela regressão
Deslocamentoem funçãodo a0 (bias)
Exemplos
Transformada de Fourier:y = a0 + a1sen(wt + φ1) + a2sen(2wt + φ2) + a3sen(3wt + φ3) + ...
RepresentaçãoNeural
+1(bias)
t(tempo)
y
Todos com funçãode ativação senoidal
FunçãoLinear
w
a1
a0
a3
a2
3w2w
φ2φ3
φ1
• •
• •18
CONCEITOS BÁSICOS
• Neurônio Artificial– (Elemento Processador)
• Estruturas de Interconexão– FeedForward de 1 camada– FeedForward de Múltiplas Camadas– Recorrente (com realimentação)
Topologias das RedesNeurais
• Redes Feed-Forward:– redes de uma ou mais camadas de
processadores, cujo fluxo de dados ésempre em uma única direção, isto é, nãoexiste realimentação.
• Redes Recorrentes:– redes com conexões entre processadores da
mesma camada e/ou com processadores dascamadas anteriores (realimentação).
• •
• •19
Redes Feed-Forward
Redes de uma camada
PE3
PE2
PE1
PEn
Redes Feed-Forward
Rede de Múltiplas Camadas
PE3
PE2
PE1
PEn
CamadaEscondida Camada
de Saída
PE1
PE2
PEm
• •
• •20
Redes Recorrentes
I n p u t
O u t p u tReali
mentação
CONTEÚDO• Introdução
– Motivação, Objetivo, Definição, CaracterísticasBásicas e Histórico
• Conceitos Básicos– Neurônio Artificial, Modos de Interconexão
• Processamento Neural– Learning e Recall
• Regras de Aprendizado– Perceptron, Back Propagation e Competitive
Learning.
• •
• •21
Processamento Neural O processamento de uma Rede Neural
pode ser dividido em duas fases:
Processo de cálculo da saídada rede, dado um certopadrão de entrada -Recuperação da Informação
Processo de atualizaçãodos pesos sinápticos para aaquisição do conhecimento- Aquisição da Informação
Aprendizado
• •
• •22
Aprendizado
• Processo pelo qual os parâmetros livres- pesos sinápticos - de uma rede neural sãoadaptados através de um processocontínuo de estimulação pelo ambiente.
• Existem 3 tipos básicos de aprendizado:þ Treinamento Supervisionado;þ Treinamento Não-Supervisionado;þ Treinamento em “Batch”.
Treinamento Supervisionado
A rede é treinada através do fornecimentodos valores de entrada e seus respectivosvalores da saída desejada (“training pair”).
Geralmente efetuado através do processode minimização do erro calculado na saída.
• •
• •23
Treinamento Supervisionado
PESOSAJUSTÁVEIS
(W)
CÁLCULODO ERRO
(e)
PADRÃODE ENTRADA
(X)SAÍDA
(s)
VALORDESEJADO
(t)
e(t,s)
Treinamento Não-Supervisionado
“Self-Organization” è Não requer ovalor desejado de saída da rede. Osistema extrai as características doconjunto de padrões, agrupando-os emclasses inerentes aos dados.
Aplicado a problemas de “Clusterização”
• •
• •24
PESOSAJUSTÁVEIS
(W)
PADRÃODE ENTRADA
(X)SAÍDA
(s)
Treinamento Não-Supervisionado
Treinamento em “Batch”
Os valores dos pesos sinápticos sãoestabelecidos a priori, em um únicopasso. Também chamado de
Gravação - “Recording”
• •
• •25
Recuperação de Dados
Recuperação de Dados
Assumindo que um conjunto de padrõestenha sido armazenado, a Rede Neuralpode executar as seguintes tarefas:
– Auto-associação– Hetero-associação– Classificação
• •
• •26
Recuperação de Dados
Assumindo que um conjunto de padrõestenha sido armazenado, a Rede Neuralpode executar as seguintes tarefas:
– Auto-associação– Hetero-associação– Classificação
GENERALIZAÇÃO
Recuperação de Dados
Autoassociação:A Rede Neural recupera o padrão armazenadomais semelhante ao padrão de entradaapresentado. Recuperação de
padrões ruidosos
Padrão deentradadistorcido
Padrãocorretorecuperado
• •
• •27
Recuperação de Dados
Heteroassociação:A Rede Neural armazena a associação entreum par de padrões. Recuperação de um
padrão diferente doda entrada.
Padrão deentradacom ousem ruído
Padrãocorretorecuperado
Recuperação de Dados
Classificação:A Rede Neural responde com a informaçãorelativa à classe a qual o padrão de entradapertence.
Ex: Padrões de entrada divididos em 3 classes distintas.
Padrão deentradacom ousem ruído
Classe 3Classe 3
Classe 2
Classe 1
Caso especial de Heteroassociação
• •
• •28
Recuperação de Dados
Generalização: A Rede Neural responde corretamente a um
padrão de entrada fora do conjunto detreinamento .
GENERALIZAÇÃO
A Rede Neural responde corretamente a umpadrão de entrada fora do conjunto detreinamento . Interpola corretamente os novos
pontos apresentados
x
f(x)
x1 x2 x3 x4 x5y
generalizações Boa interpolação
Interpolação ruim
xi è pontos do conjunto de treinamentoy è novo ponto para generalização
• •
• •29
Exemplos de TreinamentoSupervisionado
� Reconhecimento de Caracteres
� Previsão de Séries Temporais
Reconhecimento deCaracteres
• •
• •30
H 1I 1
I 2
I 3
H 2
H 3
O 1
O 2
O 3
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
Alvo
Processo de Aprendizado
w
AtividadeNeural
EntradaPesos
Escondida SaídaPesos
Dados paraTreinamento
H 1I 1
EntradaPesos
Escondida
I 2
I 3
H 2
H 3
w
w
w
w
w
w
w
w
w
O 1
Saída
O 2
O 3
w
w
w
w
w
w
w
w
w
Erro = -
Processo de Aprendizado
Pesos
Dados paraTreinamento
Atualização dos pesos em função do erro
• •
• •31
Alvo
Processo de AprendizadoAtividade
Neural
H 1I 1
I 2
I 3
H 2
H 3
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
ww
EntradaPesos
EscondidaPesos
Dados paraTreinamento
O 1
O 2
O 3
Saída
H 1I 1
I 2
I 3
H 2
H 3
w
w
w
w
w
w
w
w
w
O 1
O 2
O 3
w
w
w
w
w
w
w
w
w
Erro = -
Processo de Aprendizado
Dados paraTreinamento
EntradaPesos
Escondida SaídaPesos
Atualização dos pesos em função do erro
• •
• •32
Alvo
Processo de AprendizadoAtividade
Neural
H 1I 1
I 2
I 3
H 2
H 3
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
ww
EntradaPesos
EscondidaPesos
Dados paraTreinamento
O 1
O 2
O 3
Saída
Processo de Generalização
Recuperação da InformaçãoAprendida
• •
• •33
Processo de GeneralizaçãoAtividade
Neural
H 1I 1
I 2
I 3
H 2
H 3
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
ww
EntradaPesos
EscondidaPesos
O 1
O 2
O 3
Saída
Respostacorreta a umnovo padrão!
Previsão deSéries Temporais
• •
• •34
Série temporal
janela
alvo
Entradas da rede =n valorespassados
Estrutura da Rede Neural
Dados deTreinamento
Saída Desejada =
valor da sériek passos à
frente
Ex: 5 valorespassados
Ex: valor umpasso à frente
Entradas da rede
Saída da rede:Valor previstoum passo à frente
Processo de AprendizadoSérie temporal
janela
alvo
Dados deTreinamento
• •
• •35
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Entradas da rede
Saída da rede:Valor previstoum passo à frente
Processo de AprendizadoSérie temporal
janela
alvo
Dados deTreinamento
janela
alvo
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Entradas da rede
Processo de Aprendizado
Dados deTreinamento
Série temporal
Saída da rede:Valor previstoum passo à frente
• •
• •36
janela
alvo
Entradas da rede
Dados deTreinamento
Série temporal
Saída da rede:Valor previstoum passo à frente
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Processo de Aprendizado
janelaalvo
Entradas da rede
Dados deTreinamento
Série temporal
Saída da rede:Valor previstoum passo à frente
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Processo de Aprendizado
• •
• •37
janela
alvo
Entradas da rede
Dados deTreinamento
Série temporal
Saída da rede:Valor previstoum passo à frente
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Processo de Aprendizado
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Entradas da rede
Saída da rede:Valor previstoum passo à frente
Processo de AprendizadoSérie temporal
janela
alvo
Dados deTreinamento
• •
• •38
janela
alvo
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Entradas da rede
Processo de Aprendizado
Dados deTreinamento
Série temporal
Saída da rede:Valor previstoum passo à frente
janela
alvo
Entradas da rede
Dados deTreinamento
Série temporal
Saída da rede:Valor previstoum passo à frente
Ajuste dos pesosa partir do erro(Erro= alvo - previsto)
Processo de Aprendizado
• •
• •39
Processo de Generalização
Recuperação da InformaçãoAprendida
janela
Entradas da rede
Dados deTreinamento
Série temporal
Processo de Generalização
• •
• •40
janelaprevisto
Entradas da rede
Saída da rede:Valor previsto
Dados deTreinamento
Série temporal
Processo de Generalização
Dados previstos
janela previsto
Entradas da rede:inclui o(s) valor(es)previstos pela Rede
Saída da rede:Valor previsto
Dados deTreinamento
Série temporal
Dados previstos
Processo de Generalização
• •
• •41
janela
previsto
Dados deTreinamento
Série temporal
Dados previstos
Processo de Generalização
Entradas da rede:inclui o(s) valor(es)previstos pela Rede
Saída da rede:Valor previsto