1 / 14

AULA06-exercícios

AULA06-exercícios. MLP. exercício1. Definir os pesos iniciais e aplicar o algoritmo do gradiente (backpropagation com atualização em lote) para a função XOR, com entradas binárias e funções de ativação sigmoidais. Algoritmo de primeira ordem: gradiente.

bertha
Download Presentation

AULA06-exercícios

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. AULA06-exercícios MLP

  2. exercício1 Definir os pesos iniciais e aplicar o algoritmo do gradiente (backpropagation com atualização em lote) para a função XOR, com entradas binárias e funções de ativação sigmoidais.

  3. Algoritmo de primeira ordem: gradiente Dado o gradiente da soma dos quadrados dos erros por: a direção de maior decrescimento é dada por e o ajuste do peso é dado por:

  4. Programa – gradiente1 • Os seguintes arquivos constituem o programa do gradiente binário: • Inicializa – deve ser executado primeiro para inicializar os pesos e parametros • Continua100 – executa 100 épocas • Continua1000– executa 1000 épocas • Subprogramas • Passo1 – calcula o passo do cálculo da saida • Passo2 – calcula o passo da retro-propagação do erro • Erromed – calcula o erro medio quadrático • Atualizarpesos – atualiza os pesos • Epoca – calcula e ajusta os pesos para uma época • Plotag – plota o erro medio quadrático para todas as épocas • Plotatodos – plota as saídas dos neurônios para todas as épocas e entradas • Saídas – mostra as saídas atuais para todas as entradas

  5. exercício2 Definir os pesos iniciais e aplicar o algoritmo do gradiente com momento para a função XOR, com entradas binárias e funções de ativação sigmoidais

  6. Momentum • As fórmulas de atualização são ou onde o parâmetro de momentum m é restrito ao intervalo (0,1). • O momentum permite à rede realizar ajustes de peso razoavelmente grande enquanto as correções forem na mesma direção para vários padrões, e uma pequena taxa de aprendizado para quaisquer erros de padrão de treinamento. • Exemplo: Usando os mesmos pesos iniciais e arquitetura para os exemplos de aplicação para o problema do Xor e valores desejados +1 e -1, adicionando momentum (parâmetro = 0.9) com a taxa de aprendizado como antes (0.02) reduz o número de épocas de 387 para 38.

  7. Programa – momento1 • Os seguintes arquivos constituem o programa do gradiente binário: • Inicializa – deve ser executado primeiro para inicializar os pesos e parametros • Continua100 – executa 100 épocas • Continua1000– executa 1000 épocas • Subprogramas • Passo1 – calcula o passo do cálculo da saida • Passo2 – calcula o passo da retro-propagação do erro • Erromed – calcula o erro medio quadrático • Atualizarpesos – atualiza os pesos • Epoca – calcula e ajusta os pesos para uma época • Plotag – plota o erro medio quadrático para todas as épocas • Plotatodos – plota as saídas dos neurônios para todas as épocas e entradas • Saídas – mostra as saídas atuais para todas as entradas

  8. exercício3 Definir os pesos iniciais e aplicar o algoritmo do gradiente com delta-bar-delta para a função XOR, com entradas binárias e funções de ativação sigmoidais.

  9. Delta-bar-delta • Seja wji (t) um peso arbitrário no tempo t, e aji (t) a respectiva taxa de treinamento, e a soma dos quadrados dos erros para o padrão apresentado nesse tempo t. • A regra delta-bar-delta muda os pesos conforme: • Cada peso muda numa taxa de aprendizado individual.

  10. Delta-bar-delta (cont.) • Se, para regra delta convencional, • a regra delta-bar-delta usa uma combinação da informação sobre a derivada atual e passada para formar um novo delta, ou delta-bar, para cada unidade: onde o valor do parâmetro b deve ser especificado pelo usuário (0< b <1). Assim a nova taxa de aprendizado é dada por

  11. Programa – deltabardelta1 • Os seguintes arquivos constituem o programa do gradiente binário: • Inicializa – deve ser executado primeiro para inicializar os pesos e parametros • Continua100 – executa 100 épocas • Continua1000– executa 1000 épocas • Subprogramas • Passo1 – calcula o passo do cálculo da saida • Passo2 – calcula o passo da retro-propagação do erro • Erromed – calcula o erro medio quadrático • Atualizarpesos – atualiza os pesos • Epoca – calcula e ajusta os pesos para uma época • Plotag – plota o erro medio quadrático para todas as épocas • Plotatodos – plota as saídas dos neurônios para todas as épocas e entradas • Saídas – mostra as saídas atuais para todas as entradas

  12. exercício4 Definir os pesos iniciais e aplicar o algoritmo do gradiente conjugado para a função XOR, com entradas binárias e funções de ativação sigmoidais.

  13. Resumo do Algoritmo de Gradiente Conjugado • Iniciar os valores de w(0) • Para w(0) usar o back-propagation para computar o gradiente g(0). • Fazer s(0)=r(0)=-g(0) • No passo n, usar a busca em linha para encontrar h(n) que minimiza . • Testar se a norma euclidiana do residual r(n) caiu num valor abaixo do especificado, ou seja numa pequena fração do valor inicial r(0). • Atualizar o vetor peso: • Para w(n+1) usar back-propagation para computar o vetor gradiente g(n+1) • Fazer r(n+1) = - g(n+1) • Usar o método de Polak-Ribiére para calcular • Atualizar a direção conjugada • Fazer n = n + 1 e ir para o passo 4.

  14. Programa – gradienteconjugado1 • Os seguintes arquivos constituem o programa do gradiente binário: • Inicializa – deve ser executado primeiro para inicializar os pesos e parametros • Continua– executa até minimizar o MSE, 100 épocas • Subprogramas • Passo1 – calcula o passo do cálculo da saida • Passo2 – calcula o passo da retro-propagação do erro • polak– calcula a direção conjugada s(n), a partir de n = 2 • Calculalinha– faz a busca em linha para a obtenção de h(n) • Linha – calcula o valor do erro médio quadratico na linha • Erromed – calcula o erro medio quadrático para a época • Atualizarpesos – atualiza os pesos • Epoca – calcula e ajusta os pesos para uma época • Plotagc – plota o erro medio quadrático para todas as épocas • Plotatodos – plota as saídas dos neurônios para todas as épocas e entradas • Saídas – mostra as saídas atuais para todas as entradas

More Related