redes neurais em problemas inversos de conduÇÃo de calor haroldo fraga de campos velho...
TRANSCRIPT
REDES NEURAIS EM REDES NEURAIS EM PROBLEMAS INVERSOS DE PROBLEMAS INVERSOS DE CONDUÇÃO DE CALORCONDUÇÃO DE CALOR
Haroldo Fraga de Campos Velho
Laboratório de Computação e Matemática Aplicada (LAC)Instituto Nacional de Pesquisas Espaciais (INPE)
E-mail: [email protected]: http://www.lac.inpe.br/~haroldo/
(Esta pesquisa é parte da tese de mestrado de Elcio Hideiti Shiguemori – CAP-INPE)
Objetivo
x
Causas
y
Efeitos
PROBLEMA DIRETO K
PROBLEMA INVERSO K-1
Resolver um problema inverso de condução de calor
utilizando redes neurais artificiais
Tópicos
• Introdução aos Problemas Inversos
• Experimentos
• Alguns Resultados
• Comentários Finais
• Introdução às Redes Neurais
Introdução Introdução as Redes Neuraisas Redes Neurais
Introdução as Redes Neurais
Axônio
Sinapse
Núcleo
Dendrito
Sinapse
Neurônio Biológico O neurônio Biológico pode ser visto como sendo o dispositivo computacional elementar básico do sistema
nervoso.
- Possui um corpo celular ou soma. - Possui muitas entradas e uma saída.- Entradas conexões sinápticas- Saída axônio
O estímulo que chega à sinapse é transferida à membrana dendrital que dá origem a uma conexão excitatória ou inibitória.
Saída
Entrada
Pesos
w1
w2.
.
.
wn
x1
x2
xn
Neurônio Artificial
n
kkjkj xwv
1
)( jj vy
Assim como os neurônios biológicos, os neurônios artificiais têm inúmeras entradas
dadas pelos níveis de estímulos.
- Cada entrada é multiplicada por um peso sináptico.- O resultado da multiplicação é somado- E então passada por uma função de ativação
Introdução as Redes Neurais
Funções de Ativação: φ(vj)
x1
1
y
x
1.0
y
1.0
- 1.0
x
y
-1
1
x
yFunção Sinal Função Rampa
Função Sigmóide
x < 0 , y = -1 x > 0 , y = 1
x < 0 , y = 0
0 < x < 1 , y = x
x > 1 , y = 1
y = 1 / (1 + e - x )
11
a b
c d
Função tanh
x
x
e
exy
1
1
2tanh
Introdução as Redes Neurais
Ativação e Aprendizagem
• Aprendizagem:
• Consiste no processo de Adaptação dos pesos si-nápticos das conexões e os níveis de bias dos neurônios em resposta as entradas.
• Ativação:
• Consiste no processo de receber uma entrada e produzir uma saída com os pesos e bias obtidos na fase de aprendizagem.
Paradigmas de Aprendizagem
•Supervisionada - dada uma entrada, é apresentada uma saída desejada
• Não-Supervisionada - a rede se auto-organiza
Introdução as Redes Neurais
Algumas Redes Neurais
• Rede Funções de Base Radial
• Rede Correlação em Cascata
• Rede Perceptron de Múltiplas Camadas com aprendizagem por retropropagação do erro
Introdução as Redes Neurais
Rede Perceptron de Múltiplas Camadas (RPMC) com aprendizagem por retropropagação do erro
“As RPMC têm sido aplicadas com sucesso para resolver diversos problemas difíceis, através de seu treinamento de forma supervisionado.”
S. Haykin (1994): Neural Networks, A Comprehensive Foundation
• Características da RPMC– A função de ativação de cada neurônio é não-linear
– A rede possui uma ou mais camadas escodidas
– A rede exibe um alto grau de conectividade
• A aprendizagem consiste em 2 passos:– Passo para a frente
– Retropropagação
Introdução as Redes Neurais Rede Perceptron de Múltiplas Camadas
Entrada x
Camadaescondida
Saída
Entrada Fixa = +1
wi
y(x)
Entrada Fixa = -1
Entrada Fixa = -1
Camadaescondida
wi
Entrada Fixa = -1
Entrada Fixa = -1
Introdução as Redes Neurais Rede Perceptron de Múltiplas Camadas
• Ativação:
p
iijij wxnv
1
)( ))(()( nvny jjj
• Aprendizagem:
)()()()1( 1 nynnwnw Li
Lj
Lji
Lji
))((')()( nnen jjjj • Última Camada
• Camadas Escondidas )()())((')( nwnnn kjk
kjjj
)(
)()(
nv
nn
jj
Cj
j nen )(2
1)( 2
Introdução as Redes Neurais
Rede Função de Base Radial
Entrada xCamada
escondida
Saída
Entrada Fixa = +1ti
y(x)
• Formada por 3 camadas: entrada, escondia e saída
• As conexões entre a entrada e camada escondida contém funções de base radial.
• Ativação:
• Aprendizagem:
2exp ii txtxG
m
kkk nwxF
1
)()( kk txGx )(
• Centros Fixos Selecionados Aleatoriamente.
• Seleção Auto-organizada de Centros
• Seleção Supervisionada de Centros
Introdução as Redes Neurais Rede Função de Base Radial
• Centros Fixos Selecionados Aleatoriamente
Introdução as Redes Neurais Rede Função de Base Radial
• Seleção Auto-organizada de Centros
• Seleção Supervisionada de Centros
- Os centros são selecionados aleatoriamente- Os únicos parâmetros que são aprendidos são os pesos lineares na camada de saída.
- os centros das funções de base radial são estimados através de uma aprendizagem auto-organizada.- um algoritmo de aprendizagem supervisionada estima os pesos lineares da camada de saída.
- Os centros das funções de base radial e os pesos lineares da camada de saída são estimados por um processo de aprendizagem supervisionada.
Introdução as Redes Neurais
Rede Correlação em Cascata
Combina duas idéias chave:
• Arquitetura Cascata
As unidades escondidas são adicionadas à rede uma de cada vez e não muda depois de terem sido adicionadas
• Algoritmo de Aprendizado
Cria e instala as novas unidades escondidas. Para cada nova unidade escondida, tenta-se maximizar a magnitude da correlação entre a nova unidade de saída e eliminar o erro residual.
Introdução as Redes Neurais Correlação em Cascata
)()( )()1( nenxnwnw
)()( )()1( nenxnwnw
pkpoop
opoi
xeew
S,
,, ')(
o p
oopp EEVVS ))(( ,
pkpoop
opoi
xeew
S,
,, ')(
o p
oopp EEVVS ))(( ,
)()( )()1( nenxnwnw
Treinamento da Rede
Introdução aos Introdução aos Problemas InversosProblemas Inversos
Projeto Temático – Fapesp/BC
Aplicações: Projeto Temático – Fapesp/BC
Projeto de cooperação entre o LAC-INPE, COGS – Univ. Sussex
• Ciência espacial: Determinação de posição de plataforma de coletas de dados
• Geofísica: Inversão magnetotelúrica
• Transferência de calor: Identificação de propriedades térmicas Projeto ótimo em análise térmica de satélites
• Ciência dos materiais: Detecção de falhas em materiais compostos
• Cristalização dentrítica: Identificação de coeficientes de difusividade
• Oceanografia: Determinação de propriedades óticas de águas naturais
• Meteorologia: Estimação de perfis de temperatura e umidade Determinação de propriedades de fluxos atmosféricos turbulentos Assimilação de dados meteorológicos
Introdução aos Problemas Inversos
x
Causas
y
Efeitos
PROBLEMA DIRETO K
PROBLEMA INVERSO K-1
"Resolver um Problema Inverso é determinar CAUSAS desconhecidas a partir de EFEITOS desejados ou observados”
H.W. Engl, 1996
Introdução aos Problemas Inversos
Problemas Inversos são difíceis de resolver e requerem técnicas matemáticas e computacionais sofisticadas para
resolve-los: porque a maioria deles são mal-postos!
• Problemas Mal-Postos (Hadamar)
• ExistênciaPara qualquer y Y existe (pelo menos um) x X tal que Kx=y
• EstabilidadeA solução x depende continuamente de y, isto é, para qualquer seqüência {xn} X tal que Kxn Kx (n), então xn x (n ).
• UnicidadePara qualquer y Y existe no máximo um x X tal que Kx=y, isto é, se Kx1=Kx2, xj X, então x1=x2
Quando a condição de estabilidade não é satisfeita o problema é mal-condicionado
Introdução aos Problemas Inversos
Métodos de Solução de Problemas Inversos
• Inversão Direta x=K-1y
• Métodos de Regularização
• Problema Direto y=Kx - efeito y- causa x- modelo matemático K
• Mínimos Quadrados2
2minˆ Kxyx
x
• Mínimos Quadrados Ponderados2
minˆWx
Kxyx
• Decomposição em Valores Singulares (SVD) TVUK
• Métodos Variacionais
• Outros: Molificação, métodos baseados em filtros, redes neurais.
Introdução aos Problemas Inversos
• Regularização
Tikhonov observou que informações a priori poderiam restaurar alguma estabilidade a um problema inverso mal-posto.
O uso de regularização consiste em obter soluções aproximadas de Kx=y para problemas mal-postos, que sejam estáveis para pequenas variações no valor de y.
Informação a priori
ProblemaMal Posto
ProblemaBem Posto+
RealidadeFísica
Redes Neurais em Problemas Inversos
Estudar o uso de redes neurais artificiais na solução de problemas inversos. Ex. de aplicações: transferência de calor; recuperação da condição de fronteira e condição inicial.
x
Parâmetros
y
Dados
MODELO DIRETO K
MODELO INVERSO K-1
Recuperação da Condição Inicial
Distribuição da Temperatura
Perfil de temperatura no tempo t=0.1 Condição Inicial
Utilização de Redes Neurais na Solução do Problema Inverso de Condução de Calor
Solução do Problema Direto
Conjuntos de treinamento
Treinamento da Rede Neural
Pesos e bias
Condições Iniciais
Ativação da Rede Neural
Perfil de temperatur
a
Condição Inicial
• Solução do Problema Direto
• Treinamento das Redes Neurais
• Ativação da Rede
• Solução do Problema Direto
A condução de calor numa barra isolada é matematicamente formulada como:
,),(),(
2
2
t
txT
x
txT
,0),1,0( tx
,0),(
x
txT 0,1;0 txx
),()0,( xfxT ,0],1,0[ tx
T(x,t) é a temperatura, f(x) é a condição inicial, x (variável espacial) e t (variável temporal)
Solução do Problema Direto
Dada uma distribuição de temperatura inicial f(x), a solução do problema direto T(x,t), para e t 0, é formalmente obtida utilizando-se o método espectral e por superposição linear (Muniz et al., 1999).
,10 x10 x
1
00
')'()',()(
),(),(
2
dxxfxmxN
xxetxT
m
m
m
tm
onde = são as autofunções associadas ao problema, são os autovalores e é a norma ou integral de normalização.
),( xmx ),cos( xm mm )( mN
Na solução exata do problema inverso, qualquer erro ou perturbação é amplificado exponencialmente. Prova de mal-condicionamento.
W.B. Muniz, H.F. Campos Velho, F.M. Ramos (1999), J. Comp. Appl. Math., 101.
• Treinamento das Redes Neurais
• Diferentes Redes Neurais
• Estratégias diferentes nos Algoritmos de Treinamento
• Diferentes Conjuntos de Treinamento
- Perceptron de Múltiplas Camadas- Funções de Base Radial- Correlação em Cascata
- Utilizar constante de Momentum na rede RPMC- Utilizar diferentes algoritmos de ajuste dos centros das funções na Rede Funções de Base Radial
- Conjuntos com perfis de temperatura similares- Conjuntos com perfis de temperatura não-similares
• Ativação da Rede Neural
• Testar a generalização da Rede com Perfis de Temperatura utilizados e não utilizados no treinamento.
• Utilizar dados ruidosos.
• Experimento
• Krejsa et al. (1999), Inverse Problems in Engineering, 7, 197-214.
Redes Neurais Artificiais na resolução de Problemas Inversos de
Condução de Calor, para a recuperação de condição de contorno.
• São conhecidas:
- a condição de contorno em x=L - a condição inicial f(x)
• Deseja-se recuperar:
- o fluxo de calor q(t) em x=0.
• A equação de difusão é resolvida numericamente pelo método de Euler explícito com diferenças finitas central (Hoffman, 1993)
• Implementação do Problema Direto
)2( 111 n
in
in
in
in
i TTTdTT
• Número de Difusão
2x
td
• Foi utilizado o valor:
=0.0005 5.0t 075.0x
Experimento
onde é o coeficiente de difusão.
• Experimentos
Distribuição da TemperaturaCondição de Contorno
PROBLEMA DIRETO K
Temperatura medida nosensor no ponto 0.025
Condição de Contorno
PROBLEMA INVERSO K-1
Observação: Para diminuir o número de conexões sinápticas a entrada tem dimensões 50x1 e a saída tem dimensões 23x1.
Experimento
• Foram gerados 2 conjuntos de experimentos com variações nos padrões de treinamento.
• Conjuntos de Treinamento
Experimento
– Perfis de Temperatura Similares
– Perfis de Temperatura não Similares
Perfis de temperatura Não-Similares
Perfis de temperatura Similares
Experimento - Conjuntos de Treinamento
Estimação de Condição de Estimação de Condição de Contorno com Redes Contorno com Redes
Neurais ArtificiaisNeurais Artificiais
Estimação de fluxo de calor ( programa espacial 50/60) (Beck, Alifanov, ...)
Exemplo-2:
T(xs )n
xs
q(0,t)
sx sx
q(xs,t)
T(xs)n
q(0)n
q(t)=?
sensorx
xs
cc conhecida
Resultados do Treinamento da Rede Perceptron de Múltiplas Camadas
Experimento
Treinamento dos dados não Similares
Treinamento dos dados Similares
Inversão com a Rede Neural treinada com Dados Não-Similares
Experimento – RN: PMC
Perfis de temperatura usados no treinamento
Erro 0.01488Erro 0.02719
Perfis de temperatura não usados no treinamento
Erro 0.02669Erro 0.00932
Experimento – RN: PMC
Perfis de temperatura usados no treinamento
Erro 0.00578Erro 0.01161
Perfis de temperatura não usados no treinamento
Erro 0.01333 Erro 0.07315
Inversão com a Rede Neural treinada com Dados Similares
Resultados do Treinamento da Rede Perceptron de Múltiplas Camadas – Dados Ruidosos
Experimento – RN: PMC
Ativação
Dados não similares (0.01273) e similares (0.01331) Entrada
Resultados do Treinamento da Rede Funções de Base Radial
Experimento – RN: FBR
Treinamento dos dados não Similares
Treinamento dos dados Similares
Experimento – RN: FBR
Inversão com a Rede Neural treinada com Dados Não-Similares
Erro 0.00904Erro 0.03715
Perfis de temperatura usados no treinamento
Erro 0.00798 Erro 0.01548
Perfis de temperatura não usados no treinamento
Experimento – RN: FBR
Inversão com a Rede Neural treinada com Dados Similares
Erro 0.00843Erro 0.01067
Perfis de temperatura usados no treinamento
Erro 0.00842 Erro 0.05876
Perfis de temperatura não usados no treinamento
Experimento – RN: FBR
Resultados do Treinamento da RFBR – Dados Ruidosos
Não-Similares erro=0.01368 Similares erro=0.01266Entrada
Ativação
Resultados do Treinamento da Rede Correlação em Cascata
Treinamento dos dados não Similares
Treinamento dos dados Similares
Experimento
Experimento: RN - CC
Inversão com a Rede Neural treinada com Dados Não-Similares
Erro 0.02598Erro 0.04217
Perfis de temperatura usados no treinamento
Erro 0.01671 Erro 0.03156
Perfis de temperatura não usados no treinamento
Saída Desejada
* Não Similares
Similares
Experimento: RN - CC
Inversão com a Rede Neural treinada com Dados Similares
Erro 0.01187Erro 0.030051
Perfis de temperatura usados no treinamento
Erro 0.03070 Erro 0.05056
Perfis de temperatura não usados no treinamento
Saída Desejada
* Não Similares
Similares
Resultados do Treinamento da Rede Correlação em Cascata – Dados Ruidosos
Experimento: RN - CC
Não-Similares erro=0.01042 Similares erro=0.01747Entrada
Saída Desejada
* Não Similares
Similares
Comentários Finais
• As redes neurais implementadas resolvem o problema inverso de condução de calor na recuperação da condição de contorno.
• A condição de contorno recuperada se aproximou mais da desejada com o
conjunto de dados não similares.
• A rede FBR atingiu um erro menor no treinamento e uma maior aproximação da condição de contorno desejada, no entanto havia mais neurônios na camada escondida em relação ao treinamento da rede PMC.
Comentários Finais
• Porque usar redes neurais em problemas inversos:
– Esta é uma nova metodologia: novos horizontes a descobrir.
– São robustas em relação a dados com ruídos.
– São naturalmente paralelizáveis.
– Redes neurais recorrentes permitem extrapolação.
– Permite implementação em hardware: neurocomputadores. OBS.: Projeto de Cooperação entre LAC-INPE, Unisinos, IPRJ-UERJ
– Esta metodologia é utilizável mesmo quando não se tem um modelo matemático para o problema direto!
Neurocomputadores
Neurocomputador
Estudos iniciais usando microcontrolador (Dr. José Demísio e Ricardo Varela)
Microcontrolador da familia 8051: porta serial RAM 256 bytes 4 portas paralelas independentes FASE-1
1
2
3y3y1
y2
x1
x2 grad2
grad1
weights
Treinamento: backpropagation
Neurocomputadores
Células do micontrolador
1
3
2
tx
rx
rx
tx
tx
rx
rx
Neurocomputadores
Backpropagation interno
CELL Size(bytes)
CE1A.C 3.666
CE2A.C 3.653
CE3A.C 4.116
Neurocomputadores
Resultado da implementação
Mean Square Error
MSE = 0.026
NeuroHard
output = [0.12 0.82 0.82 0.27]
MSE = 0.019
output = [0.09 0.87 0.87 0.18]
MatLab
Neurocomputadores
Neurocomputador
Neurocomputadores
Estratégia de ação:
1. Continuar pesquisa em neurocomputador com microcontroladores Aplicação: assimilação de dados em dinâmica caótica – sistema caótico de Lorentz.
2. Desenvolver pesquisas nas áreas de neurocomputadores com chips mais potentes (aritmética de ponto flutuante).
3. FPGA?
Mini-curso de Problemas Inversos
Agradecimentos:Agradecimentos: