Paso hacia adelante y propagación hacia atrás: redes neuronales 101 |  de Egor Howell |  noviembre de 2023

Explicar cómo las redes neuronales “entrenan” y “aprenden” patrones en datos manualmente y en código usando PyTorch

Imagen de jugoso_fish de Flaticon. El autor tiene licencia de Flaticon para usar la imagen.

En mis dos últimos artículos, nos sumergimos en los orígenes de la red neuronal desde un solo perceptrón a una gran interconexión (perceptrón multicapa (MLP)) motor de optimización no lineal. Le recomiendo encarecidamente que consulte mis publicaciones anteriores si no está familiarizado con el perceptrón, MLP y las funciones de activación, ya que discutiremos bastante en este artículo:

Ahora es el momento de comprender cómo se “entrenan” estas redes neuronales y “aprenden” los patrones en los datos que se les pasan. Hay dos componentes clave: pase adelantado y propagación hacia atrás. ¡Entremos en ello!

Recapitulemos rápidamente la estructura general de una red neuronal:

Un perceptrón multicapa básico de dos capas ocultas. Diagrama por autor.

Donde cada neurona oculta está realizando el siguiente proceso:

El proceso se lleva a cabo dentro de cada neurona. Diagrama por autor.
  • Entradas: Estas son las características de nuestros datos.
  • Pesos: Algunos coeficientes por los que multiplicamos las entradas. El objetivo del algoritmo es encontrar los pesos más óptimos.
  • Suma ponderada lineal: Resuma los productos de las entradas y ponderaciones y agregue un término de sesgo/compensación, b.
  • Capa oculta: Aquí es donde se almacenan las múltiples neuronas para aprender patrones en los datos. El superíndice se refiere