You are on page 1of 12

Treinamento de Redes Neurais Feedforward: comparativo

dos algoritmos Backpropagation e Differential Evolution


Hegler C. Tissot1, Luiz C. Camargo1, Aurora T. R. Pozo1
1

Departamento de Informtica Universidade Federal do Paran (UFPR)


Jardim das Amricas Curitiba PR Brazil
{hctissot,lccamargo,aurora}@inf.ufpr.br

Resumo. Neste artigo, os algoritmos Backpropagation (BP) e Differential


Evolution (DE) so comparados no treinamento de redes multilayer
perceptron (MLP) em quatro abordagens: (a) backpropagation, (b) DE com
parmetros fixos, (c) DE com parmetros ajustados e (d) uma alternativa
hbrida usando ambos os algoritmos. Os resultados mostram que as solues
hbridas so uma boa alternativa para combinar caractersticas de diferentes
algoritmos, como busca local e busca global. Por outro lado, a dificuldade em
se ajustar parmetros de treinamento desse tipo de soluo hbrida pode
prejudicar na eficincia dos mesmos, impedindo de alcanarem melhores
resultados.
Abstract. This paper compares Backpropagation (BP) and Differential
Evolution (DE) algorithms on training multilayer perceptron (MLP) networks
in four approaches: a) backpropagation, (b) DE with fixed parameters, (c) DE
with adjusted parameters and (d) a hybrid alternative using both the
algorithms. The results show that hybrid solutions are good alternative to
combine different characteristics, such as local search and global search.
Therefore, it is difficult to adjust training parameters in this sort of hybrid
solutions, which may impair their efficiency, thereby preventing them from
achieving better results.

1. Introduo
Redes Neurais Artificiais (RNA) so frequentemente utilizadas para detectar tendncias
que so complexas para serem percebidas pelos seres humanos. RNAs so
especialmente usadas para encontrar solues genricas para problemas onde um padro
de classificao precisa ser extrado. RNAs oferecem maneiras diferentes de resolver
muitos problemas no-lineares que so difceis de serem resolvidos por meio de tcnicas
convencionais. Muitos algoritmos so aplicados para a minimizao e melhoria da
aprendizagem da RNA. Esses algoritmos podem ser classificados como de minimizao
local e minimizao global. Algoritmos de minimizao local, tal qual o mtodo
gradiente descendente, so rpidos, mas convergem para mnimos locais. Por outro
lado, os algoritmos de minimizao global usam estratgias heursticas para escapar dos
mnimos locais [Shang e Benjamin, 1996].
Algoritmos evolutivos [Luke, 2011] podem ajudar a evitar o problema de
convergncia para mnimos locais e explorar tcnicas de minimizao 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, ateno voltada para a
inicializao e ajuste de pesos fundamental para a convergncia e para evitar
overfitting, problema que geralmente acontece em padres de treinamento [Shang e
Benjamin, 1996]. Algoritmos de aprendizagem so utilizados para ajustar os valores de
peso [Slowik e Bialko, 2008], backpropagation (BP) o mais popular [Ooyen e
Nienhuis, 1992]. BP, com base no mtodo gradiente descendente, eficiente para
treinar RNAs. No entanto, este algoritmo sensvel a mnimos 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 mnimos 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 caractersticas 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 parmetros. Para apoiar esta
experincia, dois algoritmos em quatro diferentes abordagens foram utilizados: (a)
backpropagation, (b) DE com parmetros fixos, (c) DE com parmetros ajustados e (d)
uma alternativa hbrida usando ambos os algoritmos.
Este artigo est organizado da seguinte forma: na Seo II encontra-se uma
breve apresentao da rede neural feedforward (FF) e do multilayer perceptron (MLP);
na Seo III, o algoritmo de differential evolution (DE) e seu pseudocdigo so
explicados; a Seo V expem alguns trabalhos relacionados; a Seo IV descreve o
algoritmo Backpropagation no processo de treinamento de RNAs; na Seo VI,
descrito o experimento e os resultados obtidos; na Seo VII, encontra-se a concluso
com trabalhos futuros.

2. Redes Neurais Feedforward (FF)


Uma Rede Neural Feedforward (FF) formada por unidades de processamento
interligadas conhecidas como neurnios (ou ns), e tem a tendncia natural para
armazenar conhecimento experimental e torn-lo disponvel para uso [Haykin, 2001].
Dentre os principais tipos de redes FF, destaca-se o multilayer perceptron
(MLP). Redes MLP consistem de uma nica camada de ns de sada, que so
alimentados diretamente por uma camada de entrada atravs de um conjunto de pesos.
Redes MLP consistem em mltiplas camadas: uma camada de entrada, uma ou mais
camadas escondidas e uma camada de sada. Cada camada possui ns e cada n est
totalmente interligado por pesos com todos os ns da camada subsequente. O MLP
transforma entradas em sadas por meio de alguma funo no-linear como:


 =   , 


(1)
(1)

onde f() a funo de ativao do o-simo neurnio da camada de sada, xh a sada do


h-simo neurnio da camada escondida e wh,o a interconexo entre o h-simo neurnio
da camada escondida e o o-simo neurnio da camada de sada. H o tamanho da

camada escondida. Normalmente, a funo sigmoide a mais utilizada como funo de


ativao, e dada pela formula [Yilmaz and Kaynar, 2011]:
 =



 
 ,

(2)
(2)

A funo de ativao aplicada no h-simo neurnio da camada escondida e, da


mesma forma, no o-simo neurnio da camada de sada. Com base nas diferenas entre
a sada calculada e o valor esperado,
espera
um erro definido, na forma [Yilmaz and Kaynar,
2011]:


"







()
 =   



()

  ! 

(3)
(3)

onde N o nmero de padres de entrada do conjunto de dados de treinamento,


treinamento L o
()
nmero de neurnios da camada de sada,  o valor desejado de sada para o osimo neurnio da camada de sada para o s-simo dado do conjunto de dados de
()
treinamento,  a sada calculada pelo o-simo neurnio da camada de sada para o
s-simo
simo dado do conjunto de
d dados de treinamento. O objetivo reduzir o erro E,
ajustando os pesos das conexes entre as camadas. Camada de entrada e camadas
ocultas podem ter um n adicional chamado bias. Bias um neurnio cuja funo de
ativao
vao permanentemente definida como 1. Assim como outros neurnios, o bias
tambm ligado com pesos aos neurnios da camada subsequente. Na Figura 1,
mostrado um modelo de MLP usado neste artigo.

Figura 1. Modelo de MLP

De acordo com a Figura


Figur 1, bias recebe um valor igual a 1; wh so pesos para
todas as conexes entre a camada de entrada e a camada intermediria (hidden);
(
wo so
pesos para todas as conexes entre a camada intermediria
intermediria e a camada de sada;
sada xo a
funo sigmoide usada como funo de ativao na camada intermediria e na camada
de sada; e E a funo que calcula o erro do
d MLP, comparando o resultado da camada
de sada com os valores desejados.

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 alcanando solues
es muito prximas de
d timos.

DE descrito como um mtodo de pesquisa paralelo estocstico 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 populao
avaliado individualmente [Storn and Price, 1997] [Storn, 1999]. DE eficiente na
otimizao no-linear e tambm til na otimizao de problemas multimodais
[Karaboga and kdem, 2004]. O algoritmo DE destaca-se sobre os algoritmos genticos
tradicionais por ser mais fcil de usar, por fazer uso mais eficiente de memria, baixa
complexidade para implementao e exigir um menor esforo computacional. [Slowik,
2011].
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:

Initialize Parameters
F mutation rate
CR crossover rate
P {} (Empty population of length popsize)
Q {} (Empty population of length popsize)
for i from 1 to popsize do
Pi new random individual
Best {}
repeat
for each individual Pi P do
AssessFitness(Pi)
if Q {} and Fitness(Qi) < Fitness(Pi) then
Pi Qi
if Best={} or Fitness(Pi) < Fitness(Best) then
Best Pi
Q P
for each individual Qi Q do
a Copy (Qrand1) (Qrand1 Qi)
b Copy (Qrand2) (Qrand2 Qi,a)
c Copy (Qrand3) (Qrand3 Qi,a,b)
d a + F (b c)
Pi one child from Crossover(d,Copy(Qi))(CR)
until Best is the ideal solution or timeout
return Best

Figura 2. Algoritmo DE adaptado de [Luke, 2011]

De acordo com o pseudocdigo, depois de criar a populao inicial (P), o fitness


de cada elemento deve ser calculado (linha 11) e comparado com os demais para
escolher o melhor elemento da populao (linhas 14-15). Para cada elemento da
populao criado um filho atravs da combinao linear de trs outros elementos
aleatoriamente escolhidos (linhas 18-21). O crossover aplicado entre o elemento filho
e seu pai e um dos elementos resultantes Pi escolhido (linha 22). Os elementos
escolhidos so ento comparados com seus pais e podem substitu-los quando o fitness
dos filhos melhor que o fitness de seus respectivos pais (linhas 12-13). F um
parmetro que indica a taxa de mutao e determina o valor adicionado aos vetores b e c
(linha 21). CR representa a taxa de crossover, usado para combinar pesos entre cada pai
e seu respectivo filho (linha 21). F [0, 1] e CR [0,1] so determinados manualmente
pelo usurio.
Ajuste de parmetros um problema no treinamento de RNAs, uma vez que F e
CR podem assumir valores fixos ou gerados dinamicamente por meio de uma funo de
ajuste. Alm de definir os parmetros F e CR para mutao e crossover, DE tambm usa
uma seleo por torneio onde cada filho compete diretamente contra seu respectivo pai.

4. Backpropagation (BP)
Proposto em 1986 por Rumelhart, Hinton e Willian, o mtodo backpropagation
[Rumelhart at al., 1986] e um procedimento de aprendizagem para redes feedforward
(FF) de mltiplas camadas (MLP). Basicamente o procedimento de aprendizagem
utiliza vetores que mapeiam um conjunto de entradas para um conjunto de sadas.
O aprendizado realizado por ajuste iterativo dos pesos da rede para minimizar
as diferenas entre a sada atual e a sada desejada. A rede inicializada com pesos
aleatrios. Durante o processo de aprendizagem, um vetor de entrada apresentado para
a rede e propagado para determinar os valores da sada. A seguir, o vetor de sada
produzido pela rede comparado com o vetor de sada desejado, resultando num sinal
de erro, que retropropagado atravs da rede para permitir o ajuste dos pesos. Este
processo repetido at que a rede responda, para cada vetor de entrada, com um vetor
de sada com valores suficientemente prximos dos valores desejados [Ooyen and
Nienhuis, 1992], [Rumelhart at al., 1986]. Neste processo, a sada geralmente
produzida por uma funo sigmoide.
BP um mtodo baseado no gradiente descendente, o que significa que este
algoritmo no garante encontrar um mnimo global e pode estagnar em solues de
mnimos locais, onde ficaria preso indefinidamente. Contudo, BP muito popular e
amplamente utilizado no treinamento de RNAs.

5. Trabalhos Relacionados
O uso de algoritmos evolutivos tem se destacado na soluo de problemas que exige a
otimizao do espao de busca global na soluo de diversos tipos de problemas. Esses
algoritmos tambm tm 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 caractersticas do DE facilitam o
treinamento de redes neurais artificiais, principalmente pelo fato da convergncia da
soluo ser mais rpida e por flexibilizar a manuteno dos parmetros de ajustes.
Slowik e Bialko [Slowik e Bialko, 2008] aplicaram o DE no treinamento de rede
neural FF para a classificao do problema Parity p. Os resultados obtidos foram
comparados com os resultados do algoritmo BP e com os resultados de mais duas
abordagens: mtodo EA-NNT [Slowik e Bialko, 2007] e o algoritmo LM LevenMarquardt [Marquardt, 1963]. Contudo, nessa comparao o DE mostrou-se uma boa
alternativa, principalmente para a classificao de dados. Na tentativa de incrementar o
uso do DE no treinamento de RNAs FF, Slowik [Slowik, 2011] combinou a seleo de
parmetros adaptativos com a tcnica de mltiplos vetores e comparou os resultados
obtidos com os resultados de trs abordagens: BP, EA-NNT e LM, os resultados do DE
foram satisfatrios, mas o consumo de memria foi muito alto em relao as demais
abordagens.

6. Descrio 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 variaes do algoritmo DE, e tambm uma
combinao hbrida de tais algoritmos foram utilizados.

6.1. Bases de dados e configurao das MLPs


As bases de dados usados para treinamento das redes neste experimento foram as
seguintes [Frank e Assuno, 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 trs grupos de
instncias, cada um correspondendo ao conjunto de treinamento, conjunto de validao,
e conjunto de teste. Estes grupos foram criados com tamanhos diferentes, dependendo
da base de dados, como mostrado na Tabela 1.
Tabela 1. Conjuntos de treinamento, validao e teste.
Base
Cancer
Diabetes
Glass
Heart
Iris

Nmero de Instncias
Treinamento Validao Teste
347
176
176
256
256
256
128
43
43
134
68
68
74
38
38

Neste experimento algumas configuraes foram usadas por padro. Para todas
as abordagens, as MLPs foram inicializadas com pesos aleatrios entre [-1, +1]. Uma
camada oculta com tamanho diferente foi definida para cada banco de dados. Nas bases
de dados cancer e heart foram usadas MLPs com 5 ns na camada intermediria. Nas
demais bases foram usadas MLPs com 10 ns na camada intermediria. Neurnios das
camadas intermediria e de sada foram conectadas a um bias com valor 1. As ligaes
entre o bias e os neurnios da camada subsequente tambm foram inicializadas com
valores aleatrios entre [-1, +1].
6.2. Abordagens de treinamento das MLPs
Cada base de dados foi usada no processo de treinamento de uma populao de MLPs.
Dois tamanhos de populao diferentes foram utilizados (50 e 200), e para cada
tamanho de populao, MLPs foram treinadas para comparar quatro diferentes
abordagens, usando os algoritmos BP e DE:

BP: o algoritmo backpropagation foi usado para treinar as MLPs da populao e


a melhor MLP foi selecionada, considerando o ciclo de treinamento com a
melhor combinao de fitness de treinamento e de validao.

DE com parmetros fixos: como recomendado na literatura [Tvrdk, 2007], os


valores fixos escolhidos para F e CR foram: F = 0,8 e CR = 0,5.

DE com parmetros ajustados dinamicamente: F e CR foram recalculados


depois de cada ciclo ou gerao de treinamento seis tcnicas, descritas na
sesso 6.3, foram testadas para selecionar o mtodo que consideramos o mais
apropriado.

Hbrido DE+BP: DE com parmetros ajustados dinamicamente foi combinado


com BP, com o objetivo de complementar as caractersticas encontradas em cada
um desses algoritmos, ou seja, busca global do DE refinada com uma busca
local do BP aps cada gerao. Figura 3, mostra parte do algoritmo DE (extrado
da Figura 2 com uma variao hbrida usando o BP para realizar a busca local,
sempre que uma melhoria de fitness e alcanada pelo DE. Uma chamada do BP

foi adicionada (linhas 12a e 12b) cada vez que um filho Pi substitui seu
respectivo pai Qi na populao. Backpropagation executa o mximo de dez
ciclos de refinamento, finalizando antes disso se houver qualquer melhoria no
fitness de Pi em comparao com o fitness original de Pi gerado pelo crossover
do DE.
8:
9:
10:
11:
12:
12a:
12b:
13:
14:
15:
16:

for each individual Pi P do


AssessFitness(Pi)
if Q {} and Fitness(Qi) < Fitness(Pi) then
Pi Qi
else
BackPragation(Pi);
if Best={} or Fitness(Pi) < Fitness(Best) then
Best Pi
Q P

Figura 3. Parte do algoritmo DE com variao hbrida usando BP

A evoluo de cada elemento MLP na populao baseia-se apenas na melhoria


da funo de fitness de treinamento, mas para selecionar o melhor MLP para ser usado
na fase final de testes, no apenas o fitness de treinamento foi considerado, como
tambm o fitness de validao. Para ser substitudo por um novo MLP best, o MLP
candidato deve ter tanto fitness de treinamento e de validao melhores que o do MLP
best atual. A Figura 4 mostra a evoluo do fitness de treinamento de um MLP (em
azul) e do fitness de validao (em vermelho) ao longo do mximo de 500 geraes. A
gerao 187 foi destacada em verde porque apresentou a melhor combinao de fitness
de treinamento e de validao. Melhor fitness de treinamento pode ser observado nas
geraes seguintes, mas no h melhora do correspondente valor da funo de
validao.

Figura 4. Evoluo de Treinamento de um MLP para seleo do Best

6.3. Tcnicas para ajuste de parmetros no DE


Como parte do experimento, foi necessrio selecionar um mtodo para ajustar
dinamicamente os parmetros F e CR ao longo do processo de treinamento com o
algoritmo DE. Seis tcnicas foram testadas, todas com uma populao de 50 MLPs e
usando a base heart. Os resultados parciais foram comparados e analisados, e,
finalmente, a tcnica considerada mais adequada para ser executado com o DE foi
escolhida.
O ajuste de F e CR efetuado com os reclculos destes parmetros aps cada
gerao [Slowik, 2011]. Um fator A usado para identificar o grau de melhoria que

cada gerao tem para o melhor fitness parcial. Slowik [Slowik, 2011] sugere que A
seja calculado como a razo entre o melhor fitness da gerao atual (i) e melhor fitness
da gerao anterior (i-1), e depois calcular um novo F e CR baseado em A e um nmero
aleatrio escolhido entre 0 e 1. Os novos valores calculados de F e CR so ento
aplicados para todos os elementos do MLP da populao na prxima gerao.
%=

&'()(
&'()(

' =  % +,)-.
/0 = % +,)-.

(4)
(5)
(6)

Outras tcnicas para ajustar F e CR foram avaliadas: a) ajuste por elemento, em


que F e CR so calculados para cada elemento da populao; b) ajuste por elemento
com fator de reduo, em que um fator de reduo de 0,5 aplicado a um (A = A * 0,5)
para cada gerao em que nenhuma melhoria alcanada para o melhor fitness parcial;
c) ajuste global usando best, onde a melhor MLP na populao forada a ser usada na
na combinao linear; d) ajuste global usando vetores mltiplos, onde um vetor de "N"
candidatos gerado aleatoriamente para escolher um candidato para crossover (um
vetor de tamanho 5 foi utilizado para testar esta abordagem) [Slowik, 2011]; e e) ajuste
por elemento usando best e fator de reduo, que combina duas das tcnicas
mencionadas.
Para comparar os resultados das tcnicas utilizadas para ajustar os parmetros F
e CR, os conjuntos de treinamento e de validao da base heart foram utilizados para
extrair algumas medidas que possibilitaram essa comparao: melhor fitness de
treinamento e de validao, gerao em que o best MLP foi encontrado, scores de
respostas corretas usando o best MLP sobre os dados de validao e taxa de cobertura
para a confiana de 70% estabelecida.
A abordagem que utiliza vetores mltiplos teve a melhor avaliao, mas
apresenta alto consumo de tempo CPU para processar o treinamento da populao. Por
este motivo, foi escolhida a abordagem que usa ajuste global dos parmetros.
6.4. Critrios para comparao entre BP e DE
Os algoritmos BP, DE com parmetros fixos, DE com parmetros ajustados e uma
abordagem hbrida usando DE e BP foram executadas para cada uma das bases
utilizadas neste experimento, com populaes de 50 e 200 indivduos. Os resultados
foram comparados de acordo com os seguintes critrios:

Uso de CPU: De acordo com os critrios de parada definidos anteriormente,


cada execuo de treinamento da populao pode chegar de 200 a 500 ciclos ou
geraes. Uso da CPU um critrio que mostra a rapidez com que cada
abordagem pode alcanar o melhor resultado de fitness dentro de uma rodada de
treinamento de uma populao.

Best Fitness: seleo do melhor MLP considerando a combinao de fitness de


treinamento e de validao, conforme explicado anteriormente (Figura 4).

Teste dos melhores MLPs: os melhores MLPs (best) foram testados para medir
a capacidade de generalizar a soluo, e utilizados com os conjuntos de dados de
teste selecionados de cada base de dados. Para demonstrar os resultados obtidos,
alguns conceitos utilizados para calcular a pontuao de cada MLP: a) Taxa de
Confiana: as respostas obtidas a partir dos ns da camada de sada do MLP so
dadas por nmeros reais entre 0 e 1; a taxa de confiana determina o grau de
confiana de que os valores de sada do MLP devem ter para serem considerados
como respostas vlidas para uma classificao positiva; na Tabela 2, a taxa
confiana utilizada foi de 70%, o que significa que apenas respostas maior ou
igual a 0,7 foram considerados; b) Taxa de Cobertura: quando valores de sada
do MLP so inferiores taxa de confiana, tais exemplos possuem respostas que
no cobrem a confiana desejada; a taxa de cobertura indica o percentual de
instncias em que as respostas so superiores taxa de confiana em relao ao
total de instncias consideradas no teste e c) Score: mesmo quando a MLP gera
uma resposta que corresponda taxa de confiana, no necessariamente significa
que esta resposta correta; o Score mede o nmero de respostas certas dadas
pelo MLP comparando as respostas desejadas registradas na base de dados,
considerando somente os casos que correspondem taxa de confiana.

6.5. Resultados
Como o BP no exatamente um algoritmo evolutivo, foi usado um grupo de MLPs
independentes e selecionado o melhor MLP a partir deste grupo aps o treinamento ter
sido finalizado. O nmero de MLPs treinados com BP foi o mesmo que o tamanho da
populao usada para o DE. O mximo de 500 ciclos para o BP e 500 geraes para o
DE foram definidas como limite do processo de treinamento. Contudo, sempre que 200
ciclos ou geraes eram executados sequencialmente sem melhoria no best MLP, o
processo era tambm finalizado.
De acordo com o uso de CPU, a Tabela 2 mostra que o BP mais rpido que o
DE para todas as bases de dados utilizadas.
Tabela 2. Uso de CPU
Uso de CPU (minutos)

Uso de CPU (minutos)

Algoritmo

Algoritmo
Cancer Diabetes Glass Heart Iris

Cancer Diabetes Glass Heart Iris

BP

33

41

36

34

25

BP

53

76

65

59

26

DE fixed

56

216

131

97

40

DE fixed

184

343

196

185

82

DE adaptive

81

174

168

78

151

DE adaptive

236

365

139

293

36

58

47

38

64

35

DE + BP

174

165

116

187

37

DE + BP

(a) Populao = 50

(b) Populao = 200

Os dados apresentados nas Tabela 2. foram obtidos depois de uma nica


execuo de cada algoritmo e suas respectivas variaes. Em decorrncia da falta de
tempo para a execuo das cinco bases, somente trs bases de dados foram selecionadas
(glass, heart e iris) para serem testadas com dez execues com as abordagens BP e
DE+BP com populao igual a 50 indivduos. Os resultados dessas dez execues
encontram-se na Tabela 6. J Tabela 3, mostra a mdia e o desvio padro de uso de
CPU. Valores so similares aos obtidos anteriormente com uma nica execuo de cada
algoritmo, e confirma que BP e mais rpido que as abordagens que utilizam DE.

Tabela 3. Mdia e Desvio Padro de uso de CPU


Uso de CPU (minutos)

Algoritmo

Desvio Padro

Glass

Heart

Iris

Glass

Heart

Iris

BP

36

35

13

3,52

2,59

1,14

DE + BP

55

76

17

3,35

2,09

1,14

De acordo com o critrio de melhores fitness de treinamento e de validao


obtidos para o melhor MLP encontrado durante o treinamento da populao para cada
base de dados, os resultados podem ser comparados na Tabela 4. Os melhores fitness
para cada base de dados foram destacados em negrito.
Tabela 4. Melhores Fitness de Treinamento e Validao (a partir do melhor MLP)
Fitness de Treinamento
Cancer Diabetes Glass Heart
Iris
BP
0,004
0,110
0,071 0,018 0,015
DE fixed
0,028
0,195
0,367 0,053 0,159
DE adaptive 0,026
0,146
0,297 0,081 0,033
DE + BP
0,020
0,125
0,166 0,049 0,014
(a) Fitness de Treinamento para Populao = 50

Fitness de Treinamento
Cancer Diabetes Glass Heart
Iris
BP
0,003
0,110
0,057 0,018 0,015
DE fixed
0,047
0,169
0,370 0,091 0,140
DE adaptive 0,022
0,166
0,372 0,097 0,100
DE + BP
0,021
0,141
0,176 0,032 0,013
(b) Fitness de Treinamento para Populao = 200

Fitness de Validao
Cancer Diabetes Glass Heart
Iris
BP
0,024
0,194
0,246 0,094 0,018
DE fixed
0,024
0,204
0,403 0,116 0,117
DE adaptive 0,022
0,177
0,319 0,114 0,034
DE + BP
0,025
0,262 0,106 0,021
0,174
(c) Fitness de Validao para Populao = 50

Fitness de Validao
Cancer Diabetes Glass Heart
Iris
BP
0,021
0,194
0,213 0,094 0,018
DE fixed
0,052
0,195
0,366 0,116 0,126
DE adaptive 0,019
0,181
0,371 0,125 0,093
DE + BP
0,023
0,253 0,095 0,017
0,176
(d) Fitness de Validao para Populao = 200

Algoritmo

Algoritmo

Algoritmo

Algoritmo

BP alcanou os melhores valores para fitness de treinamento em todas as bases


de dados exceto para iris, ainda que considerando os dois tamanhos diferentes de
populao que foram utilizados no experimento, e BP tambm teve os melhores fitness
de validao para a metade das abordagens avaliadas.
Tabela 5. Comparativo de Scores e Coberturas (cover) para confiana = 70%
Algoritmo
BP
DE fixed
DE adaptive
DE + BP

Algoritmo
BP
DE fixed
DE adaptive
DE + BP

Cancer
Score
Cover
95,9
99,4
93,1
100
95,2
97,1
97,6
98,2

Diabetes
Glass
Score
Cover
Score
Cover
81,3
81,6
70,2
86,0
84,6
43,3
50,0
4,6
89,8
57,8
100
16,2
86,1
62,1
77,2
51,1
(a) Populao = 50

Heart
Score
Cover
80,3
97,0
67,1
100
83,3
97,0
84,1
92,6

Score
94,7
96,5
94,5
94,7

Iris
Cover
100
76,3
97,3
100

Cancer
Score
Cover
96,5
98,8
94,1
97,7
94,7
97,7
98,2
95,4

Diabetes
Glass
Score
Cover
Score
Cover
81,3
81,6
81,2
74,4
83,2
53,5
42,8
16,2
88,8
52,7
75,0
18,6
85,8
69,1
62,8
81,4
(b) Populao = 200

Heart
Score
Cover
80,3
97,0
79,7
100
82,3
100
83,0
95,5

Score
94,7
100
100
94,7

Iris
Cover
100
50,0
81,5
100

Considerando a fase de testes dos melhores MLPs selecionados em cada


processo de treinamento, a Tabela 5 mostra os scores e as taxas de cobertura (cover
rate) obtidas a partir de uma taxa de confiana de 70%. Essas medidas so o resultado
do processo de treinamento de cada base de dados, com populao de 50 e 200
indivduos para cada algoritmo.

Nos resultados apresentados na Tabela 5 pode-se observar que DE+BP parece


ser um pouco mais eficiente do que a abordagem que usa apenas BP, mas nos resultados
da avaliao estatstica apresentada na Tabela 6, ambos os algoritmos so equivalentes
considerando Scores, e BP ainda leva uma pequena vantagem contra o DE+BP
considerando a taxa de cobertura (cover rate).
Tabela 6. Mdias de Scores e Coberturas (Cover rate)
Algoritmo
Glass
Heart
Iris

Score
71,4
82,5
94,74

BP
Cover
72,0
92,6
100

DE+BP
Score Cover
71,3
65,5
82,2
83,6
94,75
99,2

Para identificar a significncia estatstica entre os valores que compem as


mdias de Score e Cover obtidas com as bases Glass, Heart e Iris (Tabela 6), foi
utilizado o mtodo estatstico Kruskal-Wallis, por meio da ferramenta R-Comander [RProject, 2012]. Apenas os valores da mdia do Score para a base Heart apresentou
significncia estatstica de 0.01341, ou seja, o p-value=0.01341.

7. Concluses
Com base nos resultados apresentados nas Tabelas 2-6, pode-se observar que a
execuo 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
nmero de instncias MLPs para realizar a combinao linear. Considerando os fitness
de treinamento e de validao, apesar da aparente vantagem apresentada pelo algoritmo
BP em relao ao algoritmo DE, testes estatsticos mostraram que ambos os algoritmos
so equivalentes ao medir Scores, ainda que o BP seja melhor para cobrir a confiana
desejada nos testes. O algoritmo DE prov a vantagem de pesquisa global e pode
tambm ser combinado com outros algoritmos em solues hbridas 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 parmetro de confiana
considerado. Para futuros trabalhos, sugerimos que outras variaes hbridas sejam
testadas para combinar algoritmos de busca global e local e ajustar os parmetros
utilizados na tentativa de encontrar solues mais eficientes para a classificao desses
dados e de outros dados.

Referncias
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., 233238.
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: princpios e prtica, 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. 431441.
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.
Tvrdk. J. (2007) Adaptive Differential Evolution: Application to Nonlinear
Regression. Proceedings of the International Multiconference on Computer Science
and Information Technology pp. 193202.
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.

You might also like