Otimização Global
4.4 Trabalhos Relacionados
Nesta seção são apresentados alguns trabalhos relacionados à otimização de redes neurais artificiais utilizando técnicas de otimização global. O objetivo desta seção não é elaborar um resumo da aplicação das técnicas de otimização global existentes, mas sim fornecer uma noção geral de como está sendo desenvolvida a aplicação destes métodos para a otimização de redes neurais artificiais.
Algumas abordagens na literatura já utilizam a integração das heurísticas Tabu Search,
Simulated Annealing e Algoritmos Genéticos para aplicações específicas. Uma forma de integração
das três heurísticas foi proposta por Mantawy et al (1999), também por Liu et al (2000) e novamente em Jiang et al (2000). Em Li et al (2002), algoritmos genéticos e simulated annealing foram combinados para otimização de processos em planejamentos de engenharia. Em Du et al (2006) as heurísticas de Simulated Annealing, Algoritmos Genéticos e modelos de Markov foram combinados para eliminação de ruídos e segmentação de imagens. Esta combinação também foi proposta por Shieh e Peralta (2005), Hongbo et al (2006) e Yogeswaran et al (2007). Smith et al (2004) propuseram uma versão multiobjetivos de Simulated Annealing. A integração das três técnicas também foi proposta por Fox (1992) e em Osman (1993) ela é utilizada para resolver o problema de roteamento de veículos.
No treinamento de redes neurais artificiais as heurísticas Simulated Annealing, Tabu Search e Algoritmos Genéticos foram utilizadas isoladamente em diversas aplicações. Na maioria das abordagens com o objetivo de minimizar o problema de convergência local do algoritmo
backpropagation.
Dentre as três abordagens, os algoritmos genéticos são os mais utilizados na literatura no treinamento e otimização de redes neurais artificiais. Em alguns trabalhos são otimizados simultaneamente os parâmetros de configuração e a arquitetura da rede (Harp et al, 1989). Outros autores utilizam os algoritmos genéticos para otimizar simultaneamente os parâmetros e os valores iniciais das conexões entre as unidades de processamento (Köhn, 1996). García-Pedrajas et al (2006) propõem novos operados de recombinação para o treinamento de redes neurais artificiais utilizando algoritmos genéticos.
Lacerda (2003) estudou a aplicação de algoritmos genéticos à otimização de redes neurais do tipo função de base radial. Tsai et al (2006) utilizam um algoritmo híbrido para o ajuste da arquitetura e parâmetros de redes neurais feedforward. Palmes et al (2005) utilizam um algoritmo baseado em mutação para treinar os pesos da rede neural artificial Multi-layer Perceptron. Gepperth e Roth (2006) utilizaram processos evolucionários multiobjetivo para otimização de arquiteturas feedforward.
Trabalhos utilizando Simulated Annealing e Tabu Search, na otimização de redes neurais artificiais, são mais escassos. Algumas aplicações utilizando Simulated Annealing e
backpropagation foram implementadas para o treinamento de redes Multi-layer Perceptron com
topologia fixa utilizando duas camadas intermediárias. O problema abordado foi o reconhecimento de respostas de sonar (Porto et al, 1995).
O método de Simulated Annealing já foi utilizado com sucesso em diversos problemas de otimização global, como se observa em Corana et al (1987) e Sexton et al (1999). Em Stepniewski e Keane (1997), Simulated Annealing e algoritmos genéticos foram utilizados para otimizar arquiteturas de redes Multi-layer Perceptron. Experimentos parecidos foram realizados por Sexton et al (1999) nos quais as soluções no espaço de busca foram representadas por vetores de números reais contendo todos os pesos da rede. Os mesmos experimentos foram realizados por Sexton et al (1998) aplicando o algoritmo de tabu search. Metin et al (2000) utilizaram Simulated Annealing para otimizar arquiteturas de redes neurais artificiais aplicadas a sistemas de diagnósticos auxiliados por computador. Em Hamm (2002) Simulated Annealing também é utilizado para otimizar os pesos de redes neurais artificiais.
Karaboga e Kalinli (1997) propuseram um modelo Tabu Search baseado em paralelismo para treinar uma rede neural artificial recorrente com o objetivo de identificar sistemas dinâmicos. Cannas et al. (1999) utilizaram Tabu Search para otimizar arquiteturas de redes
32
neurais artificiais para previsão de séries temporais. Martí e El-Fallahi (2004) apresentam uma nova proposta baseada na heurística de tabu search para o ajuste dos pesos de redes neurais Multi-Layer Perceptron.
A integração de Tabu Search, Simulated Annealing e backpropagation para otimização da arquitetura e pesos em redes neurais artificiais Multi-layer Perceptron foi proposta por Yamazaki et al (2002). O algoritmo proposto por Yamazaki combina características de Simulated Annealing e busca tabu, além de fazer uso de treinamento híbrido, através da utilização de uma técnica local de treinamento. Neste algoritmo, em cada iteração, é gerado um conjunto de soluções novas a partir da solução atual. Cada uma tem seu custo avaliado, e a melhor solução é escolhida, assim como acontece na busca tabu. No entanto, esta solução nem sempre á aceita, diferentemente do que ocorre na busca tabu. O critério de aceitação é o mesmo utilizado na técnica de Simulated
Annealing, porém o método não utiliza lista tabu. Durante o processo de otimização, armazena-se
apenas a melhor solução encontrada. Esta solução é a solução final retornada pelo método. O pseudo-código do método proposto por Yamazaki é apresentado no Algoritmo 4.
neste algoritmo S representa um conjunto de soluções, sBSF representa a melhor solução encontrada
até o momento, T representa o valor da variável temperatura,
I
max o número de iterações e f uma função de custo real. A busca objetiva encontrar o mínimo/máximo global s, tal queS
s
s
f
s
f(
)≤
(
'),
∀
'∈
.As soluções são mapeadas em vetores que representam a topologia da rede e os pesos relacionados às conexões entre as unidades de processamento. Para geração de novas soluções bits de conectividade da solução, que representam a arquitetura da rede corrente são invertidos, de
acordo com uma probabilidade. Esta escolha é realizada da seguinte forma: extrai-se um número aleatório
δ
a partir de uma distribuição uniforme no intervalo [0, 1]. O valor do novo bit de conectividadec'
i da conexão i é definido pela Equação (4.1).⎩
⎨
⎧
>
≤
p
se
c
p
se
c
c
i i iα
α
,
,
'
(4.1)onde ci é o inverso do bit
c
i e p é a probabilidade de inverter cada bit de conectividade. Além da inversão dos bits de conectividade, um número aleatórioθ
retirado de uma distribuição uniforme no intervalo [-1, +1] é adicionado aos pesos das conexões existentes. Desta forma o valor do novo pesow'
i correspondente à conexão i é definido pela Equação (4.2).θ
+
=
ii
w
w'
(4.2)Nesta abordagem a topologia máxima da rede deve ser definida pelo projetista da rede neural artificial.
Lins (2005) propôs algumas alterações sobre o modelo de Yamazaki objetivando aumentar o espaço de busca. Assim, durante a modificação do valor dos pesos das conexões entre as unidades de processamento, o intervalo foi estendido na proporção do próprio valor do peso. Ou seja, foi adicionado um número aleatório retirado de uma distribuição uniforme no intervalo [-n, +n] sendo este o valor do peso da respectiva conexão. A este valor pode ainda ser multiplicado por uma determinada taxa ajustável. As outras alterações propostas foram em relação ao esquema de esfriamento e na função de custo. O esquema de esfriamento original foi substituído pelo esquema proposto por Lundy e Mess (1986). O custo de cada solução é medido pela média ponderada entre o erro de classificação do conjunto de treinamento e a porcentagem de conexões utilizadas pela rede.
Em todas estas abordagens, Simulated Annealing, Tabu Search e Algoritmos Genéticos são normalmente utilizados para ajustar os valores das conexões entre as unidades de processamento em topologias fixas. O objetivo deste trabalho é apresentar uma técnica que combina estas três heurísticas de busca na otimização simultânea da topologia e dos valores das conexões de uma rede
Multi-layer Perceptron, resultando em arquiteturas com baixa complexidade e alta performance de
generalização.
Na Tabela 4.1 é apresentado um resumo das principais diferenças entre as principais técnicas existentes na literatura e o método proposto nesta tese (GaTSA) para otimização da arquitetura e pesos em redes neurais artificiais Multi-layer Perceptron.
34
Tabela 4.1 – Diferenças entre os algoritmos investigados
Características Fox (1992) Stepniewski e Keane
(1997)
Yamazaki et al (2002) Lins (2005) Método proposto
GaTSA
Heurísticas Algoritmos Genéticos,
Simulated Annealing, Tabu Search e Backpropagation
Algoritmos Genéticos,
Simulated Annealing Simulated Annealing, Tabu Search e Backpropagation Simulated Annealing, Tabu Search e Backpropagation Algoritmos Genéticos, Simulated Annealing, Tabu Search e Backpropagation
Inicialização Solução isolada Solução isolada Solução isolada Solução isolada População de soluções
Vizinhança Gera a vizinhança a
partir de uma solução
Gera a vizinhança a partir de uma solução
Gera a vizinhança a partir de uma solução
Gera a vizinhança a partir de uma solução
Evolui a população com micro-evoluções genéticas
Evolução Operadores genéticos Operadores genéticos Operadores de inversão
de bits Operadores de inversão de bits modificado em relação a Yamazaki et al (2002) Operadores genéticos
Avaliação Encontra a melhor
solução da população Encontra a melhor solução da população Encontra a melhor solução da vizinhança Encontra a melhor solução da vizinhança Encontra a melhor solução da população – foram testadas 5 diferentes funções de avaliação
Visitação Mantém uma lista das
soluções recentemente visitadas - Visita soluções aleatoriamente Visita soluções aleatoriamente
Mantém uma lista das soluções recentemente visitadas Ordem da Busca - Projetista define topologia máxima e algoritmo realiza a poda das conexões
Projetista define topologia máxima e algoritmo realiza a poda das conexões
Projetista define topologia máxima e algoritmo realiza a poda das conexões
Algoritmo inicia com topologia mínima e evolui de forma
poda de conexões sem relevância
Aceitação Baseado na função de
avaliação dos
Algoritmos Genéticos
Aceita soluções baseado no critério Metrópolis
Aceita soluções baseado no critério Metrópolis
Aceita soluções baseado no critério Metrópolis, utilizando esquema de esfriamento proposto por Lundy e Mess (1986)
Aceita soluções baseado no critério Metrópolis
Critério de Parada
Número de iterações Número de iterações Critério
GL
5 doProben1 e número de iterações Critério
GL
5 do Proben1 e número de iterações CritérioGL
5 do Proben1 e número de iteraçõesAjuste Local Não possui Não possui Realiza ajuste local
utilizando
Backpropagation
Realiza ajuste local utilizando
Backpropagation
Realiza ajuste local utilizando
Backpropagation