• Nenhum resultado encontrado

com 25 atributos para classicação de falhas estatóricas

E.3 Conjunto de dados biomédicos relacionados a doenças da coluna vertebral

3.5 Métodos de Poda

3.5.3 Métodos Baseados no Cálculo de Sensibilidades

A idéia fundamental dos algoritmos de poda baseados em cálculos de sensibilidades é partir de uma rede completamente conectada e com o número de parâmetros suposta- mente suciente para aprender a relação entre entrada e saída, calcular alguma medida de contribuição (sensibilidade) de cada peso para a solução do problema, e então podar aqueles pesos com menores inuências na rede, resultando em uma rede com menos pesos e parcialmente conectada.

LeCun et al. (1990) propõem um modelo local da superfície de erro para prever analíti- camente o efeito da retirada de cada peso sobre o erro de saída da rede (Emed). A expansão

em série de Taylor foi utilizada para aproximar o erro quadrático médio como pode ser visto na expressão a seguir

Emed(¯θ+ ∆θ) = Emed(¯θ) + gT(¯θ)∆θ +

1 2∆θ

T

H(¯θ)∆θ + O(||∆θ||2), (3.41)

onde ∆θ é a perturbação, em torno do ponto de operação (¯θ), no vetor de pesos devido a retirada de um peso especíco. gTθ)e H(¯θ) são respectivamente o vetor gradiente e a

matriz Hessiana (H(¯θ) = d2E

med(¯θ)/dθ2) calculados no ponto de operação (¯θ).

Considerando que o treinamento exaustivo com convergência leva a rede a um mínimo global ou local e que a superfície de erro em torno deste mínimo é aproximadamente quadrática, a Equação (3.41) pode ser simplicada como segue

Emed(¯θ+ ∆θ) = Emed(¯θ) +

1 2∆θ

T

H(¯θ)∆θ (3.42)

e a variação no erro de saída em função da remoção de um peso pode ser dada por

∆Emed= ∆θT

H(¯θ)

3.5 Métodos de Poda 43 A idéia é minimizar a Equação (3.43) sujeito a condição ∆θi+ θi = 0, ou seja, sujeito

a remoção do peso θi. Isto recai num problema de otimização com restrições cuja solução

é obtida a partir do lagrangiano

S = ∆θTH(¯θ)

2 ∆θ− λ(1

T

i ∆θ + θi) (3.44)

onde λ é o multiplicador de Lagrange e 1i é um vetor unitário cujos elementos são todos

zeros, exceto o i-ésimo elemento. A solução deste problema fornece uma expressão que reete a variação do erro devido a remoção do peso θi, Equação (3.45), bem como a

modicação ótima do vetor de peso ∆θ, Equação (3.46), mostradas a seguir

Si = ∆Emed(i) =

1 2 θ2 i [H(¯θ)−1] i,i (3.45) ∆θ = θ 2 i [H(¯θ)−1] i,i H(¯θ)−11 i (3.46) onde [H(¯θ)−1]

i,i é o elemento (i, i) da matriz inversa de H(¯θ). Si é conhecida como a

saliência ou sensibilidade do peso θi.

LeCun et al. (1990) simplica o cálculo das sensibilidades fazendo a imposição de que a Hessiana seja uma matriz diagonal e intitula seu método como Optimal Brain Damage (OBD). Esta simplicação reduz substancialmente o esforço computacional. Entretanto, Hassibi et al. (1993) demonstra que a computação completa da matriz Hessiana torna o método mais poderoso e o intitula Optimal Brain Surgeon (OBS).

O processo de aplicação do OBS pode ser automatizado como segue:

Passo 1: Treinamento de uma arquitetura completamente conectada com parâmetros o bastante para capturar a relação entrada-saída;

Passo 2: Ordenar os parâmetros com base em suas sensibilidades;

Passo 3: Eliminação do peso com a menor sensibilidade e geração de uma nova arquite- tura;

Passo 4: Embora a Equação (3.46) seja utilizada para atualização do vetor de pesos da rede obtida, é recomendável retreinar a rede sempre que um peso ou uma pe- quena parte deles (3-5%) é eliminado (HASSIBI et al., 1993; HAYKIN, 2002; CORANI; GUARISO, 2005);

3.5 Métodos de Poda 44 Passo 6: Retornar ao Passo 2 enquanto a poda produzir resultados aceitáveis segundo

algum critério previamente estabelecido.

No caso do OBD, recomenda-se que apenas um peso deve ser eliminado por vez em virtude da simplicação da Hessiana. Dessa forma, a sensibilidade Si do i-ésimo peso é

denida como Si = 1 2 d2E med dθ2 i .θ2i (3.47)

Karnin (1990) propõe uma medida aproximada de sensibilidade que pode ser usada durante o processo de treinamento. Ao invés de realmente remover o peso e calcular o erro com a sua remoção, a Equação (3.48) aproxima a sensibilidade pelo monitoramento da soma de todas as mudanças nos pesos durante o treinamento:

ˆ Si =− N −1X n=0 dE dθi ∆θi(n) θF i θF i − θiI (3.48)

onde N é o número de épocas de treinamento, θI

i é o peso inicial, θFi é o peso nal e

∆θi(n) é a atualização do peso θi na época n. Todos estes termos são disponíveis durante

o treinamento, e assim, a expressão é fácil de calcular e não há uma fase especíca para cálculo de sensibilidades. Quando ∆θi é calculado pela retropropagação sem termo de

momento, a Equação 3.48 passa a ser escrita como

ˆ Si = N −1X n=0 [∆θi(n)]2 θF i θF i − θiI . (3.49)

Após o treinamento, cada peso tem uma sensibilidade estimada e o peso com a mais baixa sensibilidade pode ser eliminado.

Finno et al. (1993) propõem outro método para calcular o coeciente de importância (T ) do peso que pode ser calculado a qualquer instante durante o treinamento. Em contraste com o OBS e OBD, esta medida não assume que um mínimo na superfície de erro tenha sido atingido. Na realidade T é uma estatística de teste para a hipótese de que um peso venha a ser zero durante o processo de treinamento:

T (θi) = log   | P Nθi− η(dE/dθi)N| ηqPN((dE/dθi)N − (dE/dθi))2   (3.50)

Na equação acima, os somatórios são sobre todos os N exemplos do conjunto de treinamento, η é a taxa de aprendizado, e o elemento barrado indica média amostral

3.5 Métodos de Poda 45 sobre os exemplos. Um valor grande de T indica alta importância do peso θi. Conexões

com pequenos valores de T podem ser podadas.

Os autores sugerem podar quando começa haver sobreajustamento dos dados, por exemplo, quando o erro no conjunto de validação dobra durante o treinamento. Sobre o número de parâmetros a serem removidos eles sugerem remover 35% dos pesos na primeira poda e 10% em cada passo posterior. Tais heurísticas, entretanto, não são satisfatórias, pois obviamente não podem ser ótimas sempre. Assim, a seleção do número de pesos a serem removidos em cada passo de poda é uma questão importante.

Prechelt (1995) propõe um método de poda chamado Lprune que adapta automati- camente a extensão da poda à evolução dos pesos e à perda de generalização durante o treinamento. O método é baseado na distribuição da estatística T durante o treinamento e não requer ajuste de parâmetros de algorítmo pelo usuário. O número de pesos a serem podados é uma fração (λ) da média (µT) de todos os valores T (θi). Dessa forma, a re-

gra é: em cada passo de poda, podar todas aquelas conexões i cujos pesos θi satisfazem

T (θi) < λµT para algum λ ∈ [0, 1].

O fator λ é ajustado dinamicamente por

λ = λ(GL) = λmax à 1− 1 1 + GL α ! (3.51)

onde λmax = 2/3 e α = 2 foram encontrados por experimentação. Estes parâmetros são

moderadamente críticos. GL é uma medida de sobreajustamento dos dados dada por GL = GL(t) = 100. µ Eva(t) Eopt(t) ¶ (3.52) cujo Eva(t) é o erro quadrático no conjunto de validação na época t e Eopt(t) é o erro

quadrático mais baixo no conjunto de validação obtido até a época t.

É importante observar que para um alto grau de sobreajustamento de dados, mais pesos serão podados. Prechelt (1995) conclui por experimentação que a adaptação au- tomática da extensão da poda pode resultar em redes melhores que aquelas obtidas com esquemas de poda estáticos, principalmente para redes pequenas. Entretanto, o Lprune é apenas parcial, pois é inábil para executar podas severas em estágios iniciais do treina- mento como as vezes é necessário, em particular para redes com demasiado número de entradas, tais como aquelas usadas em problemas de bioinformática.

Em Moody & Utans (1992) é proposto um método simples de poda de variáveis de entrada xi baseado em sensibilidade. A sensibilidade do modelo neural para a variável i

3.5 Métodos de Poda 46 é denida como: Si = 1 N X t Si(t) (3.53)

em que Si(t)é a sensibilidade calculada para o padrão de entrada x(t). Considerando que

geralmente existem muito menos entradas que pesos, a avaliação direta de Si é factível:

Si(t) = Ã 1 N N X t=1 xi(t) ! − xi(t) = ¯xi− xi(t). (3.54)

Si é utilizada como uma estimativa de quanto o erro quadrático no conjunto de treina-

mento é afetado pela substituição do i-ésimo atributo xi por sua média ¯xi em todos as

amostras. A substituição de uma variável de entrada por sua média remove sua inuência sobre a saída da rede.