Escolar Documentos
Profissional Documentos
Cultura Documentos
2 PDF
2 PDF
1. Introdução
Redes Neurais Artificiais (RNA) são frequentemente utilizadas para detectar tendências
que são complexas para serem percebidas pelos seres humanos. RNAs são
especialmente usadas para encontrar soluções genéricas para problemas onde um padrão
de classificação precisa ser extraído. RNAs oferecem maneiras diferentes de resolver
muitos problemas não-lineares que são difíceis de serem resolvidos por meio de técnicas
convencionais. Muitos algoritmos são aplicados para a minimização e melhoria da
aprendizagem da RNA. Esses algoritmos podem ser classificados como de minimização
local e minimização global. Algoritmos de minimização local, tal qual o método
gradiente descendente, são rápidos, mas convergem para mínimos locais. Por outro
lado, os algoritmos de minimização global usam estratégias heurísticas para escapar dos
mínimos locais [Shang e Benjamin, 1996].
Algoritmos evolutivos [Luke, 2011] podem ajudar a evitar o problema de
convergência para mínimos locais e explorar técnicas de minimização global no
treinamento de RNAs, alguns algoritmos evolutivos: differential evolution (DE) [Ilonen
et al, 2003], [Slowik e Bialko, 2008]; por particle swarm optimization (PSO) [Kennedy
e Eberhart, 1995 ]; ant colony optimization (ACO) [Blum e Socha, 2005]; e artificial
bee colony (ABC) [Karaboga et al, 2007].
Independente do algoritmo usado para treinar RNAs, atenção voltada para a
inicialização e ajuste de pesos é fundamental para a convergência e para evitar
overfitting, problema que geralmente acontece em padrões de treinamento [Shang e
Benjamin, 1996]. Algoritmos de aprendizagem são utilizados para ajustar os valores de
peso [Slowik e Bialko, 2008], backpropagation (BP) é o mais popular [Ooyen e
Nienhuis, 1992]. BP, com base no método gradiente descendente, é eficiente para
treinar RNAs. No entanto, este algoritmo é sensível a mínimos locais e requer ajustes no
coeficiente de aprendizagem.
Como alternativa, os algoritmos evolutivos podem ser aplicados na pesquisa de
pesos de uma rede Feedforward (FF) para escapar de mínimos locais [Ilonen et al,
2003], [Slowik, 2011]. Quanto aos algoritmos evolutivos, o uso do algoritmo
differential evolution (DE) foi motivado pela possibilidade de verificar e validar
algumas características inerentes a esse tipo de algoritmo.
Este artigo descreve e compara os resultados obtidos no treinamento de RNAs
com diferentes algoritmos, conjuntos de dados e parâmetros. Para apoiar esta
experiência, dois algoritmos em quatro diferentes abordagens foram utilizados: (a)
backpropagation, (b) DE com parâmetros fixos, (c) DE com parâmetros ajustados e (d)
uma alternativa híbrida usando ambos os algoritmos.
Este artigo está organizado da seguinte forma: na Seção II encontra-se uma
breve apresentação da rede neural feedforward (FF) e do multilayer perceptron (MLP);
na Seção III, o algoritmo de differential evolution (DE) e seu pseudocódigo são
explicados; a Seção V expõem alguns trabalhos relacionados; a Seção IV descreve o
algoritmo Backpropagation no processo de treinamento de RNAs; na Seção VI, é
descrito o experimento e os resultados obtidos; na Seção VII, encontra-se a conclusão
com trabalhos futuros.
3. Algoritmo Differential
ntial Evolution (DE)
Desenvolvido em 1997 por Kenneth Price e Rainer Storm [Storn
Storn and Price, 1997],
1997 o
algoritmo differential evolution (DE) tem sido aplicado com sucesso para resolver
problemas complexos em engenharia,
engenharia alcançando soluções
ões muito próximas de
d ótimos.
DE é descrito como um método de pesquisa paralelo estocástico que utiliza
conceitos da classe dos algoritmos evolutivos (AEs) [Storn, 1999]. DE, assim como
outros AEs, é facilmente paralelizado pelo fato de que cada membro da população é
avaliado individualmente [Storn and Price, 1997] [Storn, 1999]. DE é eficiente na
otimização não-linear e também é útil na otimização de problemas multimodais
[Karaboga and Ökdem, 2004]. O algoritmo DE destaca-se sobre os algoritmos genéticos
tradicionais por ser mais fácil de usar, por fazer uso mais eficiente de memória, baixa
complexidade para implementação e exigir um menor esforço computacional. [Slowik,
2011].
1: Initialize Parameters
2: F ← mutation rate
3: CR ← crossover rate
4: P ← {} (Empty population of length popsize)
5: Q ← {} (Empty population of length popsize)
6: for i from 1 to popsize do
7: Pi ← new random individual
8: Best ← {}
9: repeat
10: for each individual Pi ∈ P do
11: AssessFitness(Pi)
12: if Q ≠ {} and Fitness(Qi) < Fitness(Pi) then
13: Pi ← Qi
14: if Best={} or Fitness(Pi) < Fitness(Best) then
15: Best ← Pi
16: Q ← P
17: for each individual Qi ∈ Q do
18: a ← Copy (Qrand1) (Qrand1 ≠ Qi)
19: b ← Copy (Qrand2) (Qrand2 ≠ Qi,a)
20: c ← Copy (Qrand3) (Qrand3 ≠ Qi,a,b)
21: d ← a + F (b – c)
22: Pi ← one child from Crossover(d,Copy(Qi))(CR)
23: until Best is the ideal solution or timeout
24: return Best
5. Trabalhos Relacionados
O uso de algoritmos evolutivos tem se destacado na solução de problemas que exige a
otimização do espaço de busca global na solução de diversos tipos de problemas. Esses
algoritmos também têm sido utilizados para o treinamento de RNAs, como por
exemplo, o algoritmo DE. Em 2003, Ihonen, Kamarainen e Lampinen [Ihonen at al.,
2003] constataram em seus experimentos que as características do DE facilitam o
treinamento de redes neurais artificiais, principalmente pelo fato da convergência da
solução ser mais rápida e por flexibilizar a manutenção dos parâmetros de ajustes.
Slowik e Bialko [Slowik e Bialko, 2008] aplicaram o DE no treinamento de rede
neural FF para a classificação do problema Parity p. Os resultados obtidos foram
comparados com os resultados do algoritmo BP e com os resultados de mais duas
abordagens: método EA-NNT [Slowik e Bialko, 2007] e o algoritmo LM Leven-
Marquardt [Marquardt, 1963]. Contudo, nessa comparação o DE mostrou-se uma boa
alternativa, principalmente para a classificação de dados. Na tentativa de incrementar o
uso do DE no treinamento de RNAs FF, Slowik [Slowik, 2011] combinou a seleção de
parâmetros adaptativos com a técnica de múltiplos vetores e comparou os resultados
obtidos com os resultados de três abordagens: BP, EA-NNT e LM, os resultados do DE
foram satisfatórios, mas o consumo de memória foi muito alto em relação as demais
abordagens.
6. Descrição do Experimento
Neste experimento, cinco bases de dados foram utilizadas para o treinamento de MLPs,
com o objetivo de comparar os resultados obtidos a partir de diferentes abordagens de
treinamento: backpropagation (BP), duas variações do algoritmo DE, e também uma
combinação híbrida de tais algoritmos foram utilizados.
6.1. Bases de dados e configuração das MLPs
As bases de dados usados para treinamento das redes neste experimento foram as
seguintes [Frank e Assunção, 2010]: Cancer (Breast Cancer Wisconsin Original Data
Set), Diabetes (Pima Indians Diabetes Data Set), Glass (Glass Identification Data Set),
Heart (Statlog Heart Data Set). Cada base de dados foi dividida em três grupos de
instâncias, cada um correspondendo ao conjunto de treinamento, conjunto de validação,
e conjunto de teste. Estes grupos foram criados com tamanhos diferentes, dependendo
da base de dados, como mostrado na Tabela 1.
8: …
9: for each individual Pi ∈ P do
10: AssessFitness(Pi)
11: if Q ≠ {} and Fitness(Qi) < Fitness(Pi) then
12: Pi ← Qi
12a: else
12b: BackPragation(Pi);
13: if Best={} or Fitness(Pi) < Fitness(Best) then
14: Best ← Pi
15: Q ← P
16: …
/0 = % × +,)-. (6)
6.5. Resultados
Como o BP não é exatamente um algoritmo evolutivo, foi usado um grupo de MLPs
independentes e selecionado o melhor MLP a partir deste grupo após o treinamento ter
sido finalizado. O número de MLPs treinados com BP foi o mesmo que o tamanho da
população usada para o DE. O máximo de 500 ciclos para o BP e 500 gerações para o
DE foram definidas como limite do processo de treinamento. Contudo, sempre que 200
ciclos ou gerações eram executados sequencialmente sem melhoria no best MLP, o
processo era também finalizado.
De acordo com o uso de CPU, a Tabela 2 mostra que o BP é mais rápido que o
DE para todas as bases de dados utilizadas.
7. Conclusões
Com base nos resultados apresentados nas Tabelas 2-6, pode-se observar que a
execução do treinamento com o algoritmo BP consome menos tempo de CPU que o
algoritmo DE. Isso faz sentido uma vez que o algoritmo DE necessita criar um maior
número de instâncias MLPs para realizar a combinação linear. Considerando os fitness
de treinamento e de validação, apesar da aparente vantagem apresentada pelo algoritmo
BP em relação ao algoritmo DE, testes estatísticos mostraram que ambos os algoritmos
são equivalentes ao medir Scores, ainda que o BP seja melhor para cobrir a confiança
desejada nos testes. O algoritmo DE provê a vantagem de pesquisa global e pode
também ser combinado com outros algoritmos em soluções híbridas para obter melhores
resultados. Apesar disso, neste experimento o algoritmo BP ainda mostrou-se mais
eficiente para cobrir os casos usados no teste com base no parâmetro de confiança
considerado. Para futuros trabalhos, sugerimos que outras variações híbridas sejam
testadas para combinar algoritmos de busca global e local e ajustar os parâmetros
utilizados na tentativa de encontrar soluções mais eficientes para a classificação desses
dados e de outros dados.
Referências
Blum C. and Socha K. (2005) “Training feed-forward neural networks with ant colony
optimization: An application to pattern classification”, HIS`05, Fifth Intern. Confer.
on Hybrid Intelligent Systems, IEEE Computer Society Washington, USA, pp., 233-
238.
Frank, A. and Assuncion, A. (2010) “UCI Machine Learning Repository”
http://archive.ics.uci.edu/ml, Irvine, CA: University of California, School of
Information and Computer Science.
Haykin S. S. (2001) “Redes neurais: princípios e prática”, 2ª.ed. Porto Alegre, RS
Bookman.
Ilonen J., Joni-Krisitan K. and Lampinen J. (2003) “Differential Evolution Training
Algorithm for Feed-Forwar Neural Networks”, Neural Processing Letters, Kluwer
Academic Publishers, Vol.17, No.1 pp 93-105, March.
Karaboga D., Akay B. and Ozturk C. (2007) “Artificial Bee Colony (ABC) Optmization
Algorithm for Training Feed-Forward Neural Networks”, Modeling Decision for
Artificial Intelligence, Springer Berlin/Heidelberg, Vol. 4617, pp. 318-329.
Karaboga D. and Ökdem S. (2004) “A simple and global optimization algorithm for
engineering problems: Differential Evolution Algorithm”, Turk J Elec Engin, Vol.12
No.1.
Kennedy J. and Eberhart R. (1995) “Particle Swarm Optimization”, Neural Networks,
IEEE International Conference, Vol. 4, pp. 1942-1948.
Luke S. (2011) “Essentials of Metaheuristics”, Department of Computer Science,
George Mason University, Online Version 1.1, January.
Marquardt, D. W. (1963) “An algorithm for least-squares estimation of nonlinear
parameters”, Journal of the Society for Industrial and Applied Mathematics,
Philadelphia, v. 11, n. 2, p. 431–441.
Ooyen A. V. and Nienhuis B. (1992) “Improving the Convergence of the
Backpropagation Algorithm”, Neural Networks, vol.5, pp. 465-471, Pergamon Press.
Osowski A. (1996) “Neural networks in algorithmic use”. WNT, Warsaw, (in Polish).
Rumelhart D. E., Hinton G. E. and Williams R. J. (1986) “Learning representations by
back-propagating errors”, Nature, Vol. 323 pp 533- 536, October.
R-Project (2012), “The R Project for Statistical Computing”, www.r-project.org, June.
Slowik A. (2011) “Application of an Adaptive Differential Evolution Algorithm With
Multiple Trial Vectors to Artificial Neural Network Training”, IEEE Transactions on
Industrial Electronics, Vol. 58, no.8, pp. 3160-3167, August.
Slowik A. and Bialko M. (2008) “Training of Artificial Neural Networks Using
Differential Evolution Algorithm”, IEEE, HIS, pp. 60-65, Krakow, Poland, May.
Shang Y. and Benjamin W. W. (1996) “Global Optimization for Neural Network
Training”, IEEE Computer, Vol. 29, no.3, pp. 45-54, March.
Storn R. and Price K. (1997) “Differential Evolution - A simple and Efficient Heuristic
for Global Optimization over Continuous Spaces”, Journal of Global Optimization,
Vol. 11, pp 341-359, Netherlands.
Storn R. (1999) “System design by constraint adaptation and differential evolution”,
IEEE Transactions on Evolutionary Computation Vol.3, pp. 22-34.
Tvrd´ık. J. (2007) “Adaptive Differential Evolution: Application to Nonlinear
Regression”. Proceedings of the International Multiconference on Computer Science
and Information Technology pp. 193–202.
Yilmaz I. and Kaynar O. (2011) “Multipe regression”, ANN (RBF, MLP) and ANFIS
models for prediction of swell potential of clayey soils, Expert Systems with
Applications, Elsiver Vol.38, pp 5958-5966.