La retropropagación es el algoritmo estándar para calcular los gradientes en redes neuronales, pero su mecanismo de propagación inversa no es intuitivo. Aunque las redes neuronales son funciones compuestas y la regla de la cadena permite calcular derivadas en un paso hacia adelante, hacerlo resulta computacionalmente ineficiente. El artículo explica que una solución de propagación hacia adelante genera un tiempo de ejecución cuadrático en el número de nodos debido a la repetición de términos en el grafo computacional. Al analizar la regla de la cadena multivariable, se observa que cada nodo debe transmitir información a sus predecesores para evitar recalcular derivadas redundantes. Esta necesidad de evitar la redundancia computacional es la razón fundamental de la dirección inversa. El texto reconstruye el algoritmo desde principios fundamentales, demostrando que la retropropagación resuelve un problema de asignación de crédito: cada nodo informa a sus vecinos upstream sobre los errores cometidos. Este enfoque es óptimo porque permite calcular los gradientes de manera eficiente en grafos acíclicos dirigidos, a diferencia de una solución naive que sería prohibitivamente costosa. La comprensión de esta limitación computacional clarifica por qué la propagación de errores hacia atrás es la única vía viable para el entrenamiento eficiente de modelos de aprendizaje profundo.
