Upload
internet
View
109
Download
0
Embed Size (px)
Citation preview
Projeto e Treinamento de MLPs
Prof. Júlio Cesar NievolaPPGIA - PUCPR
PPGIA - PUCPR Prof. Júlio Cesar Nievola 2
Controle da AprendizagemHá procedimentos sistemáticos na busca da superfície de desempenho. Entretanto, a busca deve ser controlada heuristicamenteO usuário atua na busca através
da seleção dos pesos iniciaisdas taxas de aprendizagemdo algoritmo de buscado critério de parada
Exemplo 01
PPGIA - PUCPR Prof. Júlio Cesar Nievola 3
Pesos e MSE MínimoConjuntos finais de pesos diferentes surgem com mesma topologia e mesmo treinamento
Muitas simetrias no mapeamento entrada-saídaNão há garantias que o problema tenha somente uma solução – topologias redundantesCondições iniciais aleatórias (conjunto de pesos)
Aprendizagem é um processo estocásticoDeve-se executar cada rede várias vezes com condições iniciais diferentes e usar a melhor
Exemplo 02
PPGIA - PUCPR Prof. Júlio Cesar Nievola 4
Controle do Tamanho do Passo
Em redes não-lineares (MLP) a seleção do tamanho do passo é muito importanteEscalonamento:
Experimentalmente obtém-se 0 e n0. Se 0 é muito grande então há divergência. Se n0 é muito pequeno a aprendizagem “pára”. Se n0 é muito grande a aprendizagem torna-se demorada.Escalonamento ajuda a escapar de mínimos locais em superfícies não-convexas
iterativocontadorumé
passodoinicialtamanhooéonde,
1 0
0
0
0
nnn
n
Exemplo 03
Exemplo 04
PPGIA - PUCPR Prof. Júlio Cesar Nievola 5
Taxas de Aprendizagem e Competição Interna
Aprendizagem robusta: todos os parâmetros devem aprender com mesma velocidadeRegra Prática: aumentar por um fator 2 a 5 a taxa de aprendizagem de uma camada para outraNão-linearidade do PE: fonte de competição interna => diferentes PEs se especializam em diferentes áreas do espaço de entradaCompetição Interna: assinala a grupos de PEs determinados padrões de agrupamento
PPGIA - PUCPR Prof. Júlio Cesar Nievola 6
Inicialização dos PesosÉ comum iniciar os pesos aleatoriamenteUm PE na região linear aprende mais rapidamente que na região saturadaRegra prática para não-linearidade tanh: deve-se ajustar os pesos iniciais com variância
onde I é o número de entradas do PE
II
4,2,
4,2
Exemplo 05
PPGIA - PUCPR Prof. Júlio Cesar Nievola 7
Aprendizagem baseada em Descida do Gradiente
Vantagem principal simplicidade não potência
Ou método de busca de primeira ordem
O algoritmo LMS, a regra delta e o backpropagation usam atualização dos pesos que são implementações deste conceito
ijij wJnw
nxnnw jiij
PPGIA - PUCPR Prof. Júlio Cesar Nievola 8
Aprendizagem com MomentoAprendizagem com momento usa uma memória (incremento anterior) para aumentar a velocidade e estabilizar a convergênciaEquação de correção dos pesos
onde é a constante de momentoNormalmente, é ajustada entre 0,5 e 0,9
11 nwnwnxnnwnw ijijjiijij
Exemplo 06
PPGIA - PUCPR Prof. Júlio Cesar Nievola 9
Exemplo de Momento
PPGIA - PUCPR Prof. Júlio Cesar Nievola 10
Ajuste Adaptativo do PassoIdéia simples: observar a trilha dos pesos:
Se o sinal do erro é consecutivamente o mesmo, então a taxa de aprendizagem está pequenaSe o sinal do erro alterna-se consecutivamente, então a taxa de aprendizagem está muito grande
Para funcionar deve-se usar um tamanho de passo diferente para cada pesoO acréscimo lento e decréscimo rápido do tamanho do passo evita a divergência
PPGIA - PUCPR Prof. Júlio Cesar Nievola 11
Algoritmo Delta-Bar-DeltaCada tamanho do passo é atualizado por
onde Sij indica a média dos gradientes anteriores e Dij é o atual gradiente
Sij é a média das derivadas anteriores e atual
onde é um número entre 0 e 1
contráriocasoem0
01se
01se
1 nDnSnb
nDnSk
n ijijij
ijij
ij
11 nSnDnS ijijij
Exemplo 07
PPGIA - PUCPR Prof. Júlio Cesar Nievola 12
Tamanho de Passo Adaptativo
de Almeida (e Silva)Se o sinal do erro é consecutivamente o mesmo, aumentar a taxa de aprendizagemSe o sinal do erro alterna-se consecutivamente, diminuir a taxa de aprendizagem
Atualização dos pesos
onde kjC(n) é cada componente do gradiente e a cada iteração
nCnnwnw kjkjkjkj 1
01se1
01se1
nCnCnd
nCnCnun
kjkjkj
kjkjkj
kj
PPGIA - PUCPR Prof. Júlio Cesar Nievola 13
Tamanho de Passo Adaptativo
de Almeida (e Silva)u e d são constantes positivas ligeiramente abaixo e acima de 1. Autores sugerem d=1/uA atualização dos pesos é geométrica em ambas as direções (aumento e diminuição)O método tem bom resultado quando o gradiente é conhecido com alta precisão, como por exemplo na aprendizagem batchAs equações são baseadas em heurísticas que controlam o crescimento do tamanho do passo
Exemplo 08
PPGIA - PUCPR Prof. Júlio Cesar Nievola 14
Método do Gradiente Conjugado
O gradiente não é o caminho mais rápido para o mínimo devido à excentricidade da superfície de desempenho (razão dos autovalores), causando um zigue-zaguePara melhorar isto, pondera-se a correção
onde é calculado dinamicamenteNa aprendizagem por momento a ponderação é fixa e não calculada para o melhor caso
oldnewnew sJs
PPGIA - PUCPR Prof. Júlio Cesar Nievola 15
Critério de ParadaNúmero de iteraçõesMSE: é apenas variável indireta na classificaçãoNão há garantia de que o sistema possa atingir um MSE especificadoTaxa de decréscimo do MSE
indica quando não há mais extração de informaçãohá parada prematura no caso de regiões planas
Exemplo 09
PPGIA - PUCPR Prof. Júlio Cesar Nievola 16
Critério de ParadaProblema da generalização: overtrainingParada com validação cruzada
dois conjuntos: treinamento e validaçãoconjunto de validação: 10% do total dos casoscom certa freqüência (5 a 10 iterações) verifica-se o desempenho no conjunto de validaçãoquando errovalid aumenta, pára-se o treinamento
Dificuldade: menor conjunto de treinamentoMétodo usado para problemas reais
Exemplo 10
PPGIA - PUCPR Prof. Júlio Cesar Nievola 17
Tamanho do conjunto de treinamento
Número N aproximado de padrões requerido para classificar exemplos de teste com um erro , em uma rede com W pesos
Considera-se dados representativosSolução do problema inverso (número de padrões limitado):
conexões esparsas da entrada para escondidapré-processamento para reduzir dimensionalidade
W
N
Exemplo 11
PPGIA - PUCPR Prof. Júlio Cesar Nievola 18
Escalabilidade e Treinabilidade
Barron[1993]: Para grandes conjuntos de treinamento, o erro no MLP é independente do tamanho do espaço de entrada e escala com o inverso do número de PEs escondidosTempo de treinamento de MLP com backpropagation aumenta exponencialmente com o tamanho do problemaAlternativa: uso de redes com arquiteturas modulares, conexões esparsas ou algoritmos de treinamento avançados
Exemplo 12
PPGIA - PUCPR Prof. Júlio Cesar Nievola 19
Motivos para Desempenho Fraco
Rede sem poder discriminanteRede com PEs insuficientesAprendizagem parada em mínimo local ou em região planaSobre-treinamento da redeExemplos de treinamento não adequadosProblema intrinsecamente difícil para características utilizadas (usar filtro, novas entradas)
PPGIA - PUCPR Prof. Júlio Cesar Nievola 20
Critério de Erro
PPGIA - PUCPR Prof. Júlio Cesar Nievola 21
Normas Lp
O critério de erro, ou custo, é calculado sobre a soma dos custos individuais, Jnk obtido pela apresentação de cada padrão de entrada
onde k é um índice sobre as saídas do sistema e n é um índice sobre os padrões de entrada
Jnk é o custo individual, e é necessário determinar somente o erro instantâneo nk
k n
nkJJ
nknknknk fydfJ
Exemplo 13
PPGIA - PUCPR Prof. Júlio Cesar Nievola 22
Critério MSEO critério MSE tem as características
em redes em avanço lineares ele conduz a um problema de otimização linear que tem uma solução analítica
fornece uma interpretação probabilística da saída da máquina de aprendizagem
é fácil de implementar, já que é o erro instantâneo que é injetado no sistema dual
apresenta problemas com relação a outliers
PPGIA - PUCPR Prof. Júlio Cesar Nievola 23
Normas Lp
De forma geral, o erro instantâneo pode ser
onde p é um inteiro, chamado norma de nk
Pode-ser ter vários casos em função de p:p=2: critério MSE
p=1: métrica de Manhattan, norma robusta
p=0: uso somente do sinal dos desvios
p=: todos os erros são zero, exceto o maior
p
nknknk ydJ
Exemplo 14
PPGIA - PUCPR Prof. Júlio Cesar Nievola 24
Medida de Erro baseada naTeoria da Informação
Pode-se medir a divergência entre duas funções de probabilidade de massa q(x) e p(x) usando o critério de informação de Kullback-Leibler ou entropia cruzada:
x xq
xpxpqpD log Implementação do critério
de entropia cruzada
PPGIA - PUCPR Prof. Júlio Cesar Nievola 25
Entropia CruzadaA saída do sistema, usando o critério de custo Kullback-Leibler aproxima-se da resposta desejada em sentido estatístico
Para c classes o critério K-L torna-se
onde n é o índice sobre os padrões de entrada e k o índice sobre as classes
A rede usa PEs de saída que implementam a função softmax e o critério de entropia cruzada pode ser implementado pelo critério MSE
n k nk
nknk d
ydJ log
Exemplo 15
PPGIA - PUCPR Prof. Júlio Cesar Nievola 26
Tamanho da Rede e Generalização
Redes MLP treinadas com backpropagation não controlam habilidade de generalizaçãoPara uma rede determinada o uso da validação cruzada para parar o treinamento permite maximizar a generalizaçãoO tamanho da rede (complexidade do modelo) está ligada ao desempenho:
Poucos pesos não permitem à rede atingir o objetivoMuitos pesos memorizam (não generalizam bem)
PPGIA - PUCPR Prof. Júlio Cesar Nievola 27
Occam’s Razor eAprendizagem Estrutural
O problema do tamanho da rede pode ser visto de maneira simplificada usando o Occam’s Razor: Qualquer máquina de aprendizagem deve ser grande o suficiente para resolver o problema, porém não maior.
Dificuldade: o que é grande o suficiente?
A Teoria da Aprendizagem Estrutural (dimensão V-C) fornece respostas teóricas à generalização, mas é difícil de ser aplicada a MLPs
PPGIA - PUCPR Prof. Júlio Cesar Nievola 28
Eliminação de PesosWeight Decay: alguns pesos aumentam mas outros se aproximam de zeroO método da eliminação de pesos não deve ser aplicada aos bias, somente aos pesosO termo de decaimento deve ser menor para pesos maiores:
É fácil de implementar pois os pesos estão sendo atualizados durante a adaptação
ji
ij
ijij xw
nwnw
221
11
Exemplo 16
PPGIA - PUCPR Prof. Júlio Cesar Nievola 29
Comitê de RedesVárias redes de tamanho e características diferentes podem ser usadas em conjunto para melhorar o desempenho do classificador[Perrone,94]: Sob certas condições, o erro de um comitê é C vezes menor que o erro médio de cada uma das C redes do comitê
Maior vantagem: redução na variância do erroCada rede deve ter acerto superior a 50%Pode-se ponderar a contribuição de cada rede para a resposta final
Exemplo 17
PPGIA - PUCPR Prof. Júlio Cesar Nievola 30
Heurísticas para melhorar Tempo de Treinamento e
DesempenhoNormalizar os dados em relação à faixa de ativação da redeUsar não-linearidade do tipo tanhUsar PE softmax na camada de saídaNormalizar o sinal desejado ligeiramente acima/abaixo do limite (p.ex. 0,9 e não 1)Adicionar um valor constante de 0,05 na derivada da não-linearidade
Exemplo 18
PPGIA - PUCPR Prof. Júlio Cesar Nievola 31
Heurísticas para melhorar Tempo de Treinamento e
DesempenhoAjustar um tamanho do passo maior nas camadas mais próximas da entradaEm aprendizagem online, alterar a seqüência do conjunto de treinamento periodicamenteInicializar os pesos da rede na região linear da não-linearidadeUsar métodos de aprendizagem mais sofisticados (delta-bar-delta, gradiente conjugado etc.) Exemplo 19
PPGIA - PUCPR Prof. Júlio Cesar Nievola 32
Heurísticas para melhorar Tempo de Treinamento e
DesempenhoSempre ter mais padrões de treinamento que pesos. Treinar a rede até que o MSE se torne menor que /2Usar validação cruzada para parar o treinamentoRodar a rede várias vezes para medir o desempenhoPara melhorar a classificação, usar um comitê de redes neurais
Exemplo 20