antes de aprendermos a Propagação de Costas, vamos compreender:
O que é Redes Neuronais Artificiais?
Uma rede neural é um grupo de unidades I/O ligadas onde cada ligação tem um peso associado aos seus programas de computador. Ajuda-o a construir modelos preditivos a partir de grandes bases de dados. Este modelo baseia-se no sistema nervoso humano. Ajuda-o a conduzir a compreensão da imagem, a aprendizagem humana, a fala no computador, etc.
O que é Backpropagation?
Back-propagation é a essência do treino de redes neurais. É o método de afinação dos pesos de uma rede neural com base na taxa de erro obtida na época anterior (ou seja, iteração). O ajuste adequado dos pesos permite reduzir as taxas de erro e tornar o modelo fiável, aumentando a sua generalização.
Backpropagation é uma forma abreviada de “propagação retrógrada de erros”. É um método padrão de treino de redes neurais artificiais. Este método ajuda a calcular o gradiente de uma função de perda com respeito a todos os pesos da rede.
Neste tutorial, aprenderá:
- O que são Redes Neurais Artificiais?
- O que é Backpropagation?
- Como funciona a Backpropagação
- Porque é que precisamos de Backpropagação?
- O que é uma Rede Feed Forward?
- Tipos de redes de retropropagação
- História da retropropagação
- Pontos-chave da retropropagação
- Melhores práticas de retropropagação
- Desvantagens da utilização da retropropagação
Como funciona a retropropagação: Algoritmo simples
Considerar o seguinte diagrama
- Inputs X, chegam através do caminho pré-conectado
- Input é modelado usando pesos reais W. Os pesos são geralmente seleccionados de forma aleatória.
- Calcular a saída para cada neurónio desde a camada de entrada, para as camadas ocultas, até à camada de saída.
- Calcular o erro nas saídas
ErrorB= Actual Output – Desired Output
- Voltar da camada de saída para a camada oculta para ajustar os pesos de modo a que o erro seja diminuído.
Keep repetindo o processo até se obter a saída desejada
Porque precisamos de Backpropagation?
Vantagens mais proeminentes da Backpropagation são:
- A retropropagação é rápida, simples e fácil de programar
- Não tem parâmetros para afinar, para além dos números de entrada
- É um método flexível, pois não requer conhecimento prévio sobre a rede
- É um método padrão que geralmente funciona bem
- Não necessita de qualquer menção especial às características da função a ser aprendida.
O que é uma rede neural feedforward?
Uma rede neural feedforward é uma rede neural artificial onde os nós nunca formam um ciclo. Este tipo de rede neural tem uma camada de entrada, camadas ocultas, e uma camada de saída. É o primeiro e mais simples tipo de rede neural artificial.
Tipos de Redes de retropropagação
Dois tipos de Redes de retropropagação são:
- Back-propagation
- Backpropagation Recorrente
Back-propagation estática:
É um tipo de rede de retropropagação que produz um mapeamento de uma entrada estática para saída estática. É útil para resolver questões de classificação estática como o reconhecimento óptico de caracteres.
retropropagação recorrente:
retropropagação recorrente é alimentada para a frente até que um valor fixo seja alcançado. Depois disso, o erro é calculado e propagado para trás.
A principal diferença entre estes dois métodos é: que o mapeamento é rápido em retropropagação estática enquanto que é não estático em retropropagação recorrente.
História da retropropagação
- Em 1961, o conceito básico de retropropagação contínua foi derivado no contexto da teoria de controlo por J. Kelly, Henry Arthur, e E. Bryson.
- Em 1969, Bryson e Ho deram um método de optimização dinâmica do sistema em várias fases.
- Em 1974, Werbos declarou a possibilidade de aplicar este princípio numa rede neural artificial.
- Em 1982, Hopfield trouxe a sua ideia de uma rede neural.
- Em 1986, pelo esforço de David E. Rumelhart, Geoffrey E. Hinton, Ronald J. Williams, a retropropagação ganhou reconhecimento.
li> Em 1993, Wan foi a primeira pessoa a ganhar um concurso internacional de reconhecimento de padrões com a ajuda do método de retropropagação.
Pontos-chave de retropropagação
- Simplifica a estrutura da rede por ligações ponderadas por elementos que têm o menor efeito na rede treinada
- Necessita de estudar um grupo de valores de entrada e de activação para desenvolver a relação entre as camadas de entrada e as unidades ocultas.
- Ajuda a avaliar o impacto que uma dada variável de entrada tem na saída de uma rede. O conhecimento adquirido com esta análise deve ser representado em regras.
li>A retropropagação é especialmente útil para redes neurais profundas que trabalham em projectos propensos a erros, tais como reconhecimento de imagem ou de fala.li>A retropropagação tira partido da cadeia e as regras de potência permitem que a retropropagação funcione com qualquer número de saídas.
A melhor prática de Backpropagation
Backpropagation pode ser explicada com a ajuda da analogia “Shoe Lace”
Tem pouca tensão =
- Não suficientemente restritivo e muito solto
- Tuito restritivo (sobretreinamento)
- Tomando demasiado tempo (processo relativamente lento)
- Possibilidade maior de quebra
- O desempenho real da retropropagação num problema específico depende dos dados de entrada.
- A retropropagação pode ser bastante sensível a dados ruidosos
- É necessário utilizar a abordagem baseada em matrizes para retropropagação em vez de mini-batch.
- Uma rede neural é um grupo de unidades I/O ligadas onde cada ligação tem um peso associado aos seus programas de computador.
- Backpropagation é uma forma abreviada de “propagação retroactiva de erros”. É um método padrão de treino de redes neurais artificiais
- Dois tipos de Redes de retropropagação são 1)Back-propagação estática 2)Backpropagação recorrente
- Em 1961, o conceito básico de retropropagação contínua foi derivado no contexto da teoria de controlo por J. Kelly, Henry Arthur, e E. Bryson.
- A retropropagação simplifica a estrutura da rede ao remover ligações ponderadas que têm um efeito mínimo sobre a rede treinada.
- É especialmente útil para redes neurais profundas que trabalham em projectos propensos a erros, tais como o reconhecimento de imagem ou de fala.
- O maior inconveniente da retropropagação é que pode ser sensível a dados ruidosos.
Tensão a mais =
Puxar uma renda mais do que outra =
- li>>Discomfort (bias)
Desvantagens de usar a retropropagação
Sumário
li>A retropropagação é rápida, simples e fácil de programarli>Uma rede neural feedforward é uma rede neural artificial.