Escolar Documentos
Profissional Documentos
Cultura Documentos
Tutorial Rna
Tutorial Rna
j
h
net
kj
h
1
1
1
1
1
1
f
j
h
net
kj
h
( )
w
pj
o
p
o
net
kp
o
f
p
o
net
kp
o
( )
Camada de
Entrada
Camada
Escondida
Camada de
Sada
...
...
...
...
...
...
Figura 5 Arquitetura unidirecional multi-camada
Suponhamos que tenhamos um conjunto de P pares de vetores (X
1
,Y
1
),
(X
2
,Y
2
), ..., (X
P
, Y
P
), no nosso conjunto de treinamento e que so exemplos de um
mapeamento funcional definido como:
Y X X Y
n m
= ( ) : , (1)
Desejamos treinar a rede de modo que ela consiga aprender uma
aproximao da forma:
O Y X X Y
n m
= = ( ) : , (2)
O mapeamento funcional que foi proposto acima pode ser entendido como um
conjunto de coordenadas cartesianas em que para cada x
i
de entrada existe um y
i
de
sada, assim escolhendo para uma funo qualquer um bom exemplo de pontos
P(x
i
,y
i
) a rede ser capaz, depois de treinada, de interpolar entre eles para
reconhecer pontos no apresentados no conjunto de exemplos, desta forma
aproximando a funo.
Continuando a descrio temos que os elementos de entrada distribuem os
valores dos exemplos para os elementos da camada escondida, sendo que o valor
do net para o j
simo
elemento da camada escondida vale:
net w x
kj
h
ji
h
i
n
ki j
h
= +
=
1
(3)
onde w
ji
h
o peso da conexo entre o i
simo
elemento da camada de entrada e o
j
simo
elemento da camada escondida h e
p
0
o termo opcional chamado bias que
prov um valor fictcio de entrada igual a 1, dando um grau de liberdade maior para a
funo de sada do neurnio.
Assumindo que os neurnios so estticos o valor da funo de ativao ser
igual ao net, assim temos que o valor de sada para um neurnio da camada
escondida vale:
i f net
kj j
h
kj
h
= ( ) (4)
Da mesma forma para os neurnios da camada de sada teremos:
net w i
kp
o
pi
o
kj
j
l
p
o
= +
=
1
(5)
o f net
kp p
o
kp
o
= ( ) (6)
Como queremos minimizar o erro tal qual a regra Delta, definiremos o erro
como sendo a diferena entre o valor desejado e o valor calculado pela rede, assim
teremos para um nico neurnio a seguinte formulao para o erro:
E y o
kp kp kp
= ( ) (7)
E para todos os neurnios podemos formular um erro total utilizando o erro
mdio quadrtico sendo assim, teremos:
E E
k kp
p
m
=
=
1
2
2
1
(8)
Como o que interessa encontrar o menor erro quadrtico, a busca na
superfcie de erros se d pelo gradiente negativo, ou seja, a direo de modificaes
dos pesos ser dada de acordo com a direo que o vetor gradiente seguir na
superfcie. A formulao matemtica do vetor gradiente no ser mostrada neste
trabalho, ficando a cargo do leitor interessado buscar na bibliografia citada.
Finalmente, temos que a atualizao dos pesos dos neurnios da camada de
sada ser dada por:
w t w t w t
pj
o
pj
o
k pj
o
( ) ( ) ( ) + = + 1 (9)
Onde,
k pj
o
kp kp p
o
kp
o
kj
w y o f net i =
( ) ( )
Sendo que o fator um parmetro chamado taxa de aprendizado que escala
a mudana dos pesos na direo do gradiente.
Convm ressaltar que a funo f
p
o
precisa ser uma funo diferencivel para
que seja possvel implementar a busca do gradiente descendente.
Os clculos para os neurnios das camadas escondidas so similares, salvo
pelo fato de no sabermos a priori qual o valor desejado de sada para os neurnios
destas camadas. Assim, o clculo feito em funo das sadas desejadas pela
camada de sada, pois estas esto intimamente ligadas com as sadas dos neurnios
das camadas intermedirias.
Em determinadas superfcies de erro o vetor gradiente pode oscilar bastante
entre pontos da superfcie, dificultando e diminuindo a velocidade de convergncia
para o erro mdio quadrtico desejado. Sendo assim, surge um termo chamado de
momento que tenta contornar este tipo de situao.
O termo de momento faz com que a alterao dos pesos na iterao corrente
dependa proporcionalmente tambm a alterao de pesos da iterao anterior. A
adio deste termo feita na regra de atualizao dos pesos dada em (9). Assim
teremos:
) ( ) ( ) 1 ( t w t w t w
o
pj k
o
pj
o
pj
+ = + ,
Onde o termo de momento.
6.2 Consideraes Prticas
interessante fazer um comentrio a respeito de que valores utilizar para os
parmetros que tangem o treinamento de uma rede neural artificial. Todavia, estas
recomendaes so para a maioria dos problemas, podendo existir problemas em
que a soluo mais vivel foge dos comentrios aqui recomendados, isto uma forte
premissa que sugere que as redes neurais artificiais ainda precisam de uma anlise
matemtica mais profunda.
Podemos iniciar citando que os pesos devem ser inicializados com valores
aleatrios e pequenos, geralmente no intervalo de [-0,1,0,1]. Isto explicado pelo
fato de que a utilizao de pesos de grande magnitude pode levar a uma saturao
nos neurnios da camada intermediria.
Devemos tambm citar que quanto melhor a escolha dos exemplos, isto , um
equilbrio entre quantidade e qualidade, melhor ser a resposta da rede, pois ela ter
um intervalo abrangente para interpolar.
O parmetro taxa de aprendizado que o valor do passo que o vetor
gradiente ir dar na superfcie de erro geralmente deve ficar entre 0,1 0,3 , pois
valores muito grandes para este parmetro pode fazer o vetor gradiente ficar
saltando de um lado para o outro na superfcie de erros.
O termo de momento deve ter um valor alto como 0,8 e 0,9 para que o vetor
gradiente fuja de mnimos locais, bem como mantenha uma direo adequada a ser
seguida.
O treinamento deve ser paralisado quando um erro mdio quadrtico aceitvel
for achado ou se um certo nmero de pocas (iteraes) pr-fixadas forem atingidas.
importante ressaltar que o exagero no treinamento pode levar a rede a piorar sua
capacidade de generalizao.
O nmero de camadas intermedirias e de neurnios geralmente obtido por
tentativa-e-erro, sendo a experincia a principal heurstica do projetista da RNA.
Todavia, deve se levar em considerao que com um nmero muito pequeno de
neurnios a rede pode no ter recursos suficientes para aprender. Alm disso, a
utilizao de um nmero muito grande de neurnios e conexes pode fazer a rede
perder sua capacidade de interpolao, pois ela decora os exemplos, ficando assim
cristalizada.
7 - Aplicao
Neste trabalho iremos abordar o problema da interrupo da ventilao
mecanicamente assistida
1
. A interrupo do suporte respiratrio para um paciente
que esteja recebendo ventilao mecnica requer a avaliao da capacidade do
paciente de continuar respirando sem auxlio, de maneira estvel clnica e
fisiologicamente.
Retirar o auxlio prematuramente pode levar ao sofrimento do paciente,
enquanto que deixar tempo a mais, representa gasto desnecessrio de um recurso
escasso e pode ser porta para entrada de infeces no paciente.
Mtodos tradicionais de avaliao do momento de retirada da ventilao
assistida no so confiveis (um mdico especialista ressaltou que um mtodo
atualmente utilizado para tomar a deciso verificar se o paciente tem um brilho no
olhar).
Geralmente o mdico deve tomar esta deciso baseado nas seguintes
variveis que so facilmente obtidas dos pacientes:
Pico negativo da presso inspiratria (cm.H
2
O).
Taxa respiratria (respiraes/minuto).
Volume Tidal.
Neste contexto treinaremos uma RNA com o algoritmo backpropgation com 21
tentativas de interromper a ventilao mecanicamente assistida, neste conjunto 9
tiveram sucesso e 12 falharam. Em suma, a rede receber 21 exemplos (tabela 1),
onde cada um deles ser formado pelas seguintes entradas: presso inspiratria
1
Esta aplicao foi proposta em (Ashutosch et al, 1992)
negativa (PIN) em cm .H
2
O; volume tidal (VT) e taxa respiratria(TR) dada em
respiraes por minuto e obter como resposta se o mdico teve sucesso ou falha
em retirar o equipamento.
Esta rede ter trs neurnios na camada de entrada, cada um deles
representando as variveis descritas acima, alm disso, ter apenas uma camada
escondida, bem como um nico neurnio na camada de sada que representar se o
especialista teve sucesso ou falha em retirar o equipamento.
Tabela 1 Conjunto de treinamento da RNA
PIN VT TR Resultado
-24 300 24 Sucesso
-30 500 17 Falha
-23 300 29 Sucesso
-26 265 44 Falha
-18 370 32 Falha
-22 350 30 Falha
-10 320 29 Falha
-60 650 16 Sucesso
-20 225 46 Falha
-24 276 38 Falha
-15 270 40 Falha
-30 250 30 Sucesso
-42 950 13 Sucesso
-12 220 32 Falha
-20 124 33 Falha
-42 750 24 Sucesso
-32 530 21 Sucesso
-40 916 22 Sucesso
-30 500 19 Sucesso
-25 412 30 Falha
-28 400 38 Falha
Depois da rede ser treinada com os dados descritos na tabela 1 ela deve ser
capaz de acertar o resultado (sucesso ou falha) para novas entradas que no foram
apresentadas a rede no momento do treinamento. Sendo assim, separamos um
conjunto de testes que a rede deve ser capaz de prever o resultado correto. Este
conjunto de testes est descrito na tabela 2.
Tabela 2 Conjunto de testes
PIN VT TR Resultado
-40 465 23 Sucesso
-15 450 25 Falha
-22 400 41 Falha
-28 310 24 Falha *
-48 380 24 Sucesso
-34 530 28 Sucesso
-40 740 19 Sucesso
-42 550 27 Sucesso
-55 480 19 Sucesso
Este tipo de problema facilmente resolvido com o auxlio das redes neurais
artificiais, para mostrar esta resoluo utilizaremos o software Matlab 6.0 que um
ambiente de desenvolvimento bastante difundido tanto no contexto acadmico,
quanto no mbito comercial. O Matlab uma poderosa ferramenta para problemas
de cunho matemtico, tendo ferramentas grficas avanadas para anlise e
visualizao de dados. Alm disso, o Matlab possui uma toolbox exclusiva para
redes neurais artificiais, isto , possui um conjunto de funes pr-definidas que so
de grande valia para o projetista de redes neurais artificiais.
Voltando ao problema, o conjunto de treinamento foi ento apresentado a rede
neural para que o algoritmo backpropagation atuasse, sendo importante salientar que
escolhemos 0,05 como valor de erro mdio quadrtico que o algoritmo deveria
alcanar, isto significa que o algoritmo backpropagation ir fazer vrias iteraes de
atualizao dos pesos at atingir este valor de erro. Na figura 6 mostramos o grfico
de busca do vetor gradiente na superfcie de erro.
Figura 6 Grfico do andamento do treinamento
O treinamento procedeu sem problemas e a rede conseguiu convergir para o
valor de erro que determinamos. Alguns parmetros do algoritmo backpropagation
utilizados para treinar esta rede so descritos na tabela 3.
Tabela 3 Parmetros utilizados para o algoritmo Backpropagation
Parmetros Valor
Taxa de aprendizagem 0,01
Erro 0.05
Nmero de neurnios na camada oculta 6 ou 5
Funo de transferncia da camada oculta tangente sigmoidal
Funo de transferncia da camada sada sigmoidal
Como a rede j foi treinada podemos apresentar as entradas do conjunto de
testes de forma que ela deve ser capaz de apresentar a sada correta, ou seja, os
valores das variveis (PIN, VT e TR) sero apresentados aos neurnios de entrada e
a rede ser capaz de interpolar entre o que ela j aprendeu para dar seu veredicto de
sucesso ou falha.
Obtivemos timos resultados neste problema, pois a rede deu o resultado
correto em todos os casos. Nas figuras 7 e 8 so mostrados os grficos do resultado
desejado do teste e do resultado obtido pela rede, percebe-se que ambos os grficos
so iguais, confirmando o acerto de 100%.
8 Consideraes Finais
As redes neurais artificiais vm ganhando cada vez mais adeptos, de modo
que as pesquisas nesta rea esto evoluindo geometricamente, portanto, isto a torna
uma tecnologia bastante promissora para o desenvolvimento de aplicaes utilizando
inteligncia artificial.
O sucesso das redes neurais est diretamente relacionado com a sua alta
versatilidade no que tange o escopo de suas aplicaes, pois existem aplicaes
para as mais variadas reas, podendo ser utilizada para tarefas que vo desde o
desenvolvimento de sistemas especialistas, passando por aplicaes nas
neurocincias e podendo servir at mesmo para problemas complexos de anlise
estatstica.
O problema da ventilao mecanicamente assistida citado neste trabalho
serviu para mostrar a viabilidade para a soluo de problemas utilizando RNAs.
importante ressaltar que poderamos resolver este problema utilizando outros
parmetros ou outras arquiteturas de redes neurais, a maneira que resolvemos foi
escolhida para manter o escopo pretendido neste trabalho.
Este documento teve o intuito de fazer dar uma viso global sobre o assunto,
isto significa que os leitores interessados em mais detalhes devem consultar as
referncias bibliogrficas descritas, alm disso, os autores se colocam a disposio
para eventuais dvidas e sugestes.
8 Referncias Bibliogrficas
ASHUTOSCH et al. Prediction criteria for successful weaning from respiratory
support: Statistical and connectionist analyses. Critical Care Medicine, Vol. 20, No.9.
pp 1295-1301, 1992.
Figura 7 Grfico das sadas desejadas
para o conjunto de teste
Figura 8 Grfico das sadas emitidas pela
rede para o conjunto de teste
AZEVEDO, F. M. Contribution to the Study of Neural Networks In Dynamical
Expert Systems. Ph.d. thesis, Institut dInformatique, FUNDP, Belgium, 1993.
Barreto, Jorge M. Inteligncia Artificial: No limiar do sculo XXI. Duplic Edies,
1997.
Burrows, T. and NIRAJAN, M. The use of feed-forward and recurrent networks
for system identi_cation. Technical Report CUED F-INFENG TR158, Cam-
bridge University Engineering Dept., Cambridge U., Cambridge, UK, Dec.
1993.
Casey, M. Computation dynamics in discrete-time recurrent neural networks.
In Proceedings of the Annual Research Symposium, volume 3, p. 78{95, UCSD,
La Jolla, CA, 1993. Institute for Neural Computation.
CLEEREMANS, A., SERVAN-SCHREIBER, D., and MCCLELLAND, J. Finite state
automata and simple recurrent neural networks. Neural Computation, (3):372{381,
1989.
FREEMAN, James A. & SKAPURA, David M. Neural Networks: Algorithms,
Applications and Programming Techniques. Addison-Wesley Publishing, 1992.
HAYKIN, Simon. Neural Networks: a comprehensive foundation. IEEE Press, 1994
KAELBLING L. P., LITTMAN. L. , MOORE A. W. Reinforcement Learning: A Survey.
In: Journal of Artificial Intelligence Research, Volume 4, p. 237-285, 1996
KOHONEN,T. Self Organization and Associative Memory. Springer-Verlag, Berlin,
1987.
LAVINE, R. A. Neurophysiology: The Fundamentals. The Collamore Press, 1983.
McCulloch, W.S. & PITTS, W. A Logical Calculus of the Ideas Immanent in Nervous
Activity. Bulletin of Mathematical Biophysics 5 (1943), 115-133
MINSKY, M. L. & PAPERT, S. A. Perceptrons: an introduction to computacional
geometry. The MIT Press, Massachussets, 1969
NICHOLLS, J. G. et a.l From Neuron to Brain. Sinauer Associates, Inc., 2000.
Parker, D. Learning logic. Invention Report S81-64, File 1, O_ce of Techno-
logy Licensing, Stanford University, 1982.
ROISENBERG, M."Emergncia da Inteligncia em Agentes Autnomos atravs de
Modelos Inspirados na Natureza". Tese de Doutorado. Departamento de Engenharia
Eltrica, 1998.
RUMELHART,D. E., MCCLELLAND J. L., and PDP Group. Parallel Distributed Pro-
cessing, volume 1, Foundations. The MIT Press, Cambridge, Massachusetts,
1986.
WERBOS, P. J. Beyond regression: new tools for prediction and analysis in the
behavioral sciences. PhD thesis, Harvard University, Cambridge, MA, 1974.