Como o nome indica, a retropropagação é um algoritmo que propaga de volta os erros dos nós de saída para os nós de entrada. Portanto, é simplesmente referido como “propagação de erros para trás”. Essa abordagem foi desenvolvida a partir da análise de um cérebro humano. Reconhecimento de voz, reconhecimento de caracteres, verificação de assinatura e reconhecimento de rosto humano são algumas das aplicações interessantes das redes neurais. As redes neurais passam por aprendizado supervisionado, o vetor de entrada que passa pela rede produz o vetor de saída. Esse vetor de saída é verificado em relação à saída desejada. Se o resultado não corresponder ao vetor de saída, um relatório de erro é gerado. Com base no relatório de erro, os pesos são ajustados para obter a saída desejada.
O que é uma rede neural artificial?
A Rede neural artificial emprega regra de aprendizado supervisionado para se tornar eficiente e poderoso. As informações nas redes neurais fluem de duas maneiras diferentes. Principalmente, quando o modelo está sendo treinado ou aprendendo e quando o modelo opera normalmente - seja para teste ou usado para realizar qualquer tarefa. Informações em diferentes formas são alimentadas no modelo por meio de neurônios de entrada, acionando várias camadas de neurônios ocultos e alcançando os neurônios de saída, que são conhecidos como rede feedforward.
Como todos os neurônios não disparam ao mesmo tempo, os neurônios que recebem as entradas da esquerda são multiplicados com os pesos à medida que viajam pelas camadas ocultas. Agora, some todas as entradas de cada neurônio e quando a soma exceder um certo nível de limiar, os neurônios que permaneceram silenciosos serão acionados e conectados.
A forma como a Rede Neural Artificial aprende é que ela aprende com o que fez de errado e faz o que é certo, e isso é conhecido como feedback. Redes Neurais Artificiais usam feedback para aprender o que é certo e errado.
O que é retropropagação?
Definição: A retropropagação é um mecanismo essencial pelo qual as redes neurais são treinadas. É um mecanismo usado para ajustar os pesos de uma rede neural (também referida como um modelo neste artigo) em relação à taxa de erro produzida na iteração anterior. É semelhante a um mensageiro dizendo ao modelo se a rede cometeu um erro ou não assim que previu.
backpropagation-neural-network
A retropropagação em redes neurais é sobre o transmissão de informações e relacionando essas informações ao erro gerado pelo modelo quando uma suposição foi feita. Este método visa reduzir o erro, que também é conhecido como função de perda.
Como funciona a retropropagação - Algoritmo simples
A retropropagação no aprendizado profundo é uma abordagem padrão para o treinamento de redes neurais artificiais. Funciona assim: - Inicialmente, quando uma rede neural é projetada, valores aleatórios são atribuídos como pesos. O usuário não tem certeza se os valores de peso atribuídos estão corretos ou se encaixam no modelo. Como resultado, o modelo produz o valor que é diferente da saída real ou esperada, que é um valor de erro.
Para obter a saída apropriada com o mínimo de erro, o modelo deve ser treinado em um conjunto de dados ou parâmetros pertinentes e monitorar seu progresso cada vez que fizer uma previsão. A rede neural tem uma relação com o erro, portanto, sempre que os parâmetros mudam, o erro também muda. A retropropagação usa uma técnica conhecida como regra delta ou descida gradiente para alterar os parâmetros no modelo.
O diagrama acima mostra o funcionamento da retropropagação e seu funcionamento é fornecido abaixo.
- 'X' no alcance das entradas do caminho pré-conectado
- ‘W’, os pesos reais são usados para modelar a entrada. Os valores de W são distribuídos aleatoriamente
- A saída de cada neurônio é calculada por meio da propagação de encaminhamento - a camada de entrada, a camada oculta e a camada de saída.
- O erro é calculado nas saídas usando a equação Propagando para trás novamente através da saída e das camadas ocultas, os pesos são ajustados para reduzir o erro.
Novamente propague para frente para calcular a saída e o erro. Se o erro for minimizado, esse processo termina, ou então se propaga para trás e ajusta os valores de peso.
Este processo se repete até que o erro seja reduzido ao mínimo e a saída desejada seja obtida.
Por que precisamos de retropropagação?
Este é um mecanismo usado para treinar a rede neural relacionada a um conjunto de dados específico. Alguns dos vantagens da retropropagação estamos
- É simples, rápido e fácil de programar
- Apenas os números da entrada são ajustados e nenhum outro parâmetro
- Não precisa ter conhecimento prévio sobre a rede
- É flexível
- Uma abordagem padrão e funciona de forma eficiente
- Não requer que o usuário aprenda funções especiais
Tipos de rede de retropropagação
Existem dois tipos de redes de retropropagação. Ele é classificado como abaixo:
Retropropagação estática
A retropropagação estática é um tipo de rede que visa produzir um mapeamento de uma entrada estática para uma saída estática. Esses tipos de redes são capazes de resolver problemas de classificação estática, como reconhecimento óptico de caracteres (OCR).
Retropropagação recorrente
A retropropagação recorrente é outro tipo de rede empregada no aprendizado de ponto fixo. As ativações na retropropagação recorrente são alimentadas para frente até atingir um valor fixo. Em seguida, um erro é calculado e propagado para trás. UMA Programas , NeuroSolutions tem a capacidade de realizar a retropropagação recorrente.
As principais diferenças: A retropropagação estática oferece mapeamento imediato, enquanto o mapeamento de retropropagação recorrente não é imediato.
Desvantagens da retropropagação
As desvantagens da retropropagação são:
- A retropropagação pode ser sensível a dados ruidosos e irregularidades
- O desempenho disso é altamente dependente dos dados de entrada
- Necessita de tempo excessivo para treinamento
- A necessidade de um método baseado em matriz para retropropagação em vez de minilote
Aplicações de retropropagação
Os aplicativos são
- A rede neural é treinada para enunciar cada letra de uma palavra e uma frase
- É usado no campo de reconhecimento de fala
- É usado no campo do reconhecimento de caracteres e rosto
FAQs
1). Por que precisamos retropropagação em redes neurais?
Este é um mecanismo usado para treinar a rede neural relacionada ao conjunto de dados específico
2). Qual é o objetivo do algoritmo de retropropagação?
O objetivo desse algoritmo é criar um mecanismo de treinamento para redes neurais para garantir que a rede seja treinada para mapear as entradas para suas saídas apropriadas.
3). Qual é a taxa de aprendizado em redes neurais?
A taxa de aprendizagem é definida no contexto de otimização e minimização da função de perda de uma rede neural. Refere-se à velocidade com que uma rede neural pode aprender novos dados substituindo os dados antigos.
4). A rede neural é um algoritmo?
sim. As redes neurais são uma série de algoritmos de aprendizagem ou regras projetadas para identificar os padrões.
5). Qual é a função de ativação em uma rede neural?
A função de ativação de uma rede neural decide se o neurônio deve ser ativado / disparado ou não com base na soma total.
Neste artigo, o conceito de retropropagação de redes neurais é explicado usando uma linguagem simples para um leitor entender. Nesse método, as redes neurais são treinadas a partir dos erros gerados para se tornarem autossuficientes e lidar com situações complexas. As redes neurais têm a capacidade de aprender com precisão com um exemplo.