La última pieza, y la que hace funcionar a las redes neuronales. Cuando algo afecta a otra cosa, que afecta a otra… ¿cómo medimos el efecto total? Multiplicando los efectos. Eso es backpropagation.
Imagina una cadena de engranajes: giras A, que mueve B, que mueve C. Si A hace girar a B al doble de rápido, y B hace girar a C al triple, entonces girar A mueve a C… 6 veces (2 × 3). Los efectos se multiplican.
x afecta a u, y u
afecta a y, entonces el efecto de x sobre y es el
producto de los dos efectos:
Recuerda la lección 7: una derivada es un efecto ("cuánto cambia la salida por la entrada"). La regla de la cadena con símbolos:
Veámoslo con un ejemplo concreto: una máquina que triplica (u = 3x) seguida de otra que eleva al cuadrado (y = u²).
Primero, los valores (hacia adelante): u = 3·x = 3·2 = 6 y = u² = 6² = 36 Ahora, los efectos de cada eslabón (las derivadas): du/dx = 3 (triplicar: efecto 3) dy/du = 2·u = 2·6 = 12 (al cuadrado: efecto 2u) La regla de la cadena multiplica los eslabones: dy/dx = (dy/du) × (du/dx) = 12 × 3 = 36
y = (3x)² = 9x² → derivada = 18x → en x=2: 18·2 = 36 ✓
¡Coincide! La cadena da el mismo resultado, pero eslabón por eslabón.
Cambia x y observa cómo se multiplican los efectos de cada eslabón.
Una red neuronal es una cadena larguísima de operaciones: la entrada pasa por una capa, luego otra, luego la activación, luego la pérdida… cada una afecta a la siguiente. Para saber cuánto afecta un peso del principio al error del final, se multiplican los efectos de toda la cadena, de atrás hacia adelante.
backward().