Retropropagación
Algoritmo que calcula eficientemente los gradientes de la función de pérdida respecto a cada parámetro de la red, propagando errores hacia atrás desde la capa de salida hasta la capa de entrada mediante la regla de la cadena.
La retropropagación calcula el gradiente de una función de pérdida respecto a cada parámetro entrenable aplicando la regla de la cadena en orden inverso, desde la capa de salida hasta la de entrada. Redescubierta por Rumelhart et al. en 1986, sigue siendo el mecanismo fundamental de entrenamiento del aprendizaje profundo.
El paso hacia adelante produce predicciones a partir de los datos de entrada, la función de pérdida cuantifica el error, y el paso hacia atrás calcula los gradientes capa por capa en orden inverso. Los optimizadores como SGD o Adam actualizan entonces los parámetros. Los 25 millones de parámetros de ResNet-50 se optimizan simultáneamente mediante este proceso.
- Regla de la cadena: Descompone los gradientes de funciones compuestas en productos de derivadas locales en cada capa, haciendo el cómputo O(n) comparable al paso hacia adelante
- Gradientes que se desvanecen y explotan: Los gradientes pueden reducirse o crecer exponencialmente a través de capas profundas. La normalización por lotes, las conexiones residuales y el recorte de gradientes son mitigaciones estándar
- Diferenciación automática: PyTorch (
autograd) y TensorFlow (GradientTape) construyen grafos de cómputo y ejecutan la retropropagación automáticamente
En el entrenamiento de modelos de imagen, un paso adelante-atrás procesa un mini-lote (ej. 32 imágenes), actualizando parámetros con gradientes promediados. Repetir esto decenas de miles de veces enseña al modelo características visuales desde bordes hasta conceptos semánticos.