¿Qué es?
Cuando una variable influye en la salida por varios caminos, se suman las aportaciones de cada camino, cada una producto de las derivadas locales a lo largo de él: . En forma matricial, las jacobianas se multiplican. Es exactamente lo que calcula la retropropagación sobre el grafo de una red.
¿Por qué existe?
Los cálculos reales se ramifican y se juntan: un peso afecta a muchas neuronas, que afectan todas a la pérdida. La regla de la cadena de una variable trata un único camino; la versión multivariable trata cualquier grafo acíclico dirigido de operaciones: cualquier programa sin bucles, o con ellos desenrollados.
Intuición
Dibuja el cálculo como un grafo: entradas abajo, la salida arriba, y cada arista etiquetada con una derivada parcial local. es la suma, sobre todos los caminos, de los productos de las etiquetas del camino. La retropropagación calcula todas esas sumas a la vez recorriendo el grafo desde arriba y acumulando en cada nodo «cuánto le importo a la salida» (el adjunto).
Definición formal
Si es diferenciable en y en , entonces
Para escalar con : .
Fórmulas
- una red profunda: un producto de jacobianas
- las ecuaciones de la retropropagación
¿Cómo se calcula?
El producto se puede evaluar de derecha a izquierda (modo directo: coste ∝ número de entradas) o de izquierda a derecha (modo inverso: coste ∝ número de salidas). Una pérdida tiene una salida y millones de entradas, así que el modo inverso gana por un factor de millones: esa elección es la retropropagación.
Ejemplo
con , . Dos caminos de a (por y por ): .
¿Por qué importa?
Es el contenido matemático de la retropropagación y de toda librería de diferenciación automática (PyTorch, JAX, TensorFlow). También da las velocidades de un robot a través de la cadena cinemática y las sensibilidades del diseño de ingeniería (los métodos adjuntos en CFD y predicción meteorológica son la misma idea del modo inverso).
Aplicaciones en informática
La asimilación de datos 4D-Var usa modelos adjuntos (modo inverso) para ajustar el estado inicial de las predicciones.
Dónde aparece en IA
Retropropagación = la regla de la cadena multivariable evaluada en orden inverso sobre el grafo de la red.
Los modos directo e inverso son los dos órdenes naturales de multiplicar la cadena de jacobianas.
¿Dónde se utiliza?
Temas de informática a los que se llega desde aquí, con la cadena de ideas que lleva a ellos:
λ Computación científica y algoritmos
- Matriz jacobiana→Integrales múltiples y cambio de variables→Métodos de Monte Carlo★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Rigidez y métodos implícitos→Cálculo científico★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Atractores→Caos y sensibilidad a condiciones iniciales→Coma flotante (IEEE 754)★★★★★
ℒ IA y machine learning
- Diferenciación automática★★★★★
- Retropropagación (backpropagation)★★★★★
- Retropropagación (backpropagation)→Deep learning (aprendizaje profundo)★★★★★
- Matriz jacobiana→Modelos generativos★★★★★
- Retropropagación (backpropagation)→Deep learning (aprendizaje profundo)→Redes convolucionales (CNN)★★★★★
- Retropropagación (backpropagation)→Deep learning (aprendizaje profundo)→Neural ODE★★★★★
- +8
⚙ Robótica y control
- Matriz jacobiana→Jacobiana del robot (cinemática de velocidades)★★★★★
- Matriz jacobiana→Cinemática inversa★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Teoría de control★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Teoría de control→Optimización de trayectorias y MPC★★★★★
- Matriz jacobiana→Filtro de Kalman★★★★★
⚛ Física y simulación
- Matriz jacobiana→Integrales múltiples y cambio de variables→Integrales de superficie y flujo→Teorema de la divergencia (Gauss)→Electromagnetismo (ecuaciones de Maxwell)★★★★★
- Matriz jacobiana→Integrales múltiples y cambio de variables→Integrales de superficie y flujo→Teorema de la divergencia (Gauss)→Dinámica de fluidos y CFD★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Atractores→Caos y sensibilidad a condiciones iniciales→Predicción meteorológica y clima★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Rigidez y métodos implícitos→Motores físicos★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Rigidez y métodos implícitos→Motores físicos→Simulación gravitatoria de N cuerpos★★★★★
- Matriz jacobiana→Puntos de equilibrio y estabilidad→Bifurcaciones→Modelos de poblaciones y epidemias★★★★★
Qué depende de él
Ejercicios
Si con , , expresa y .
Solución
, .
Una red calcula . Escribe con la regla de la cadena y di qué factores se reutilizan de .
Solución
Sea , , . Con : y . El gradiente que llega desde arriba, , se calcula una vez y se reutiliza: ese reaprovechamiento es lo que hace barata la retropropagación.