1 / 32

Projeto e Treinamento de MLPs

Projeto e Treinamento de MLPs. Prof. Júlio Cesar Nievola PPGIA - PUCPR. Controle da Aprendizagem. Há procedimentos sistemáticos na busca da superfície de desempenho. Entretanto, a busca deve ser controlada heuristicamente O usuário atua na busca através da seleção dos pesos iniciais

moswen
Download Presentation

Projeto e Treinamento de MLPs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Projeto e Treinamento de MLPs Prof. Júlio Cesar Nievola PPGIA - PUCPR

  2. Controle da Aprendizagem • Há procedimentos sistemáticos na busca da superfície de desempenho. Entretanto, a busca deve ser controlada heuristicamente • O usuário atua na busca através • da seleção dos pesos iniciais • das taxas de aprendizagem • do algoritmo de busca • do critério de parada Exemplo 01 Prof. Júlio Cesar Nievola

  3. Pesos e MSE Mínimo • Conjuntos finais de pesos diferentes surgem com mesma topologia e mesmo treinamento • Muitas simetrias no mapeamento entrada-saída • Não há garantias que o problema tenha somente uma solução – topologias redundantes • Condições iniciais aleatórias (conjunto de pesos) • Aprendizagem é um processo estocástico • Deve-se executar cada rede várias vezes com condições iniciais diferentes e usar a melhor Exemplo 02 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 importante • Escalonamento: • 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 Exemplo 03 Exemplo 04 Prof. Júlio Cesar Nievola

  5. Taxas de Aprendizagem e Competição Interna • Aprendizagem robusta: todos os parâmetros devem aprender com mesma velocidade • Regra Prática: aumentar por um fator 2 a 5 a taxa de aprendizagem de uma camada para outra • Não-linearidade do PE: fonte de competição interna => diferentes PEs se especializam em diferentes áreas do espaço de entrada • Competição Interna: assinala a grupos de PEs determinados padrões de agrupamento Prof. Júlio Cesar Nievola

  6. Inicialização dos Pesos • É comum iniciar os pesos aleatoriamente • Um PE na região linear aprende mais rapidamente que na região saturada • Regra 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 Exemplo 05 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 Prof. Júlio Cesar Nievola

  8. Aprendizagem com Momento • Aprendizagem com momento usa uma memória (incremento anterior) para aumentar a velocidade e estabilizar a convergência • Equação de correção dos pesos onde  é a constante de momento • Normalmente,  é ajustada entre 0,5 e 0,9 Exemplo 06 Prof. Júlio Cesar Nievola

  9. Exemplo de Momento Prof. Júlio Cesar Nievola

  10. Ajuste Adaptativo do Passo • Idéia simples: observar a trilha dos pesos: • Se o sinal do erro é consecutivamente o mesmo, então a taxa de aprendizagem está pequena • Se 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 peso • O acréscimo lento e decréscimo rápido do tamanho do passo evita a divergência Prof. Júlio Cesar Nievola

  11. Algoritmo Delta-Bar-Delta • Cada 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 Exemplo 07 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 aprendizagem • Se 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 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/u • A 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 batch • As equações são baseadas em heurísticas que controlam o crescimento do tamanho do passo Exemplo 08 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-zague • Para melhorar isto, pondera-se a correção onde  é calculado dinamicamente • Na aprendizagem por momento a ponderação é fixa e não calculada para o melhor caso Prof. Júlio Cesar Nievola

  15. Critério de Parada • Número de iterações • MSE: é apenas variável indireta na classificação • Não há garantia de que o sistema possa atingir um MSE especificado • Taxa de decréscimo do MSE • indica quando não há mais extração de informação • há parada prematura no caso de regiões planas Exemplo 09 Prof. Júlio Cesar Nievola

  16. Critério de Parada • Problema da generalização: overtraining • Parada com validação cruzada • dois conjuntos: treinamento e validação • conjunto de validação: 10% do total dos casos • com certa freqüência (5 a 10 iterações) verifica-se o desempenho no conjunto de validação • quando errovalid aumenta, pára-se o treinamento • Dificuldade: menor conjunto de treinamento • Método usado para problemas reais Exemplo 10 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 representativos • Solução do problema inverso (número de padrões limitado): • conexões esparsas da entrada para escondida • pré-processamento para reduzir dimensionalidade Exemplo 11 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 escondidos • Tempo de treinamento de MLP com backpropagation aumenta exponencialmente com o tamanho do problema • Alternativa: uso de redes com arquiteturas modulares, conexões esparsas ou algoritmos de treinamento avançados Exemplo 12 Prof. Júlio Cesar Nievola

  19. Motivos para Desempenho Fraco • Rede sem poder discriminante • Rede com PEs insuficientes • Aprendizagem parada em mínimo local ou em região plana • Sobre-treinamento da rede • Exemplos de treinamento não adequados • Problema intrinsecamente difícil para características utilizadas (usar filtro, novas entradas) Prof. Júlio Cesar Nievola

  20. Critério de Erro 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 Exemplo 13 Prof. Júlio Cesar Nievola

  22. Critério MSE • O 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 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 Exemplo 14 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: Implementação do critério de entropia cruzada Prof. Júlio Cesar Nievola

  25. Entropia Cruzada • A 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 Exemplo 15 Prof. Júlio Cesar Nievola

  26. Tamanho da Rede e Generalização • Redes MLP treinadas com backpropagation não controlam habilidade de generalização • Para uma rede determinada o uso da validação cruzada para parar o treinamento permite maximizar a generalização • O tamanho da rede (complexidade do modelo) está ligada ao desempenho: • Poucos pesos não permitem à rede atingir o objetivo • Muitos pesos memorizam (não generalizam bem) 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 Prof. Júlio Cesar Nievola

  28. Eliminação de Pesos • Weight Decay: alguns pesos aumentam mas outros se aproximam de zero • O método da eliminação de pesos não deve ser aplicada aos bias, somente aos pesos • O termo de decaimento deve ser menor para pesos maiores: • É fácil de implementar pois os pesos estão sendo atualizados durante a adaptação Exemplo 16 Prof. Júlio Cesar Nievola

  29. Comitê de Redes • Vá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 erro • Cada rede deve ter acerto superior a 50% • Pode-se ponderar a contribuição de cada rede para a resposta final Exemplo 17 Prof. Júlio Cesar Nievola

  30. Heurísticas para melhorar Tempo de Treinamento e Desempenho • Normalizar os dados em relação à faixa de ativação da rede • Usar não-linearidade do tipo tanh • Usar PE softmax na camada de saída • Normalizar 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 Prof. Júlio Cesar Nievola

  31. Heurísticas para melhorar Tempo de Treinamento e Desempenho • Ajustar um tamanho do passo maior nas camadas mais próximas da entrada • Em aprendizagem online, alterar a seqüência do conjunto de treinamento periodicamente • Inicializar os pesos da rede na região linear da não-linearidade • Usar métodos de aprendizagem mais sofisticados (delta-bar-delta, gradiente conjugado etc.) Exemplo 19 Prof. Júlio Cesar Nievola

  32. Heurísticas para melhorar Tempo de Treinamento e Desempenho • Sempre ter mais padrões de treinamento que pesos. Treinar a rede até que o MSE se torne menor que /2 • Usar validação cruzada para parar o treinamento • Rodar a rede várias vezes para medir o desempenho • Para melhorar a classificação, usar um comitê de redes neurais Exemplo 20 Prof. Júlio Cesar Nievola

More Related