Saltar al contenido
AI Atlas

Backpropagation

Retropropagación

Deep LearningNivel 3 · AvanzadoTécnica~2 min de lectura

En una frase

Backpropagation: el algoritmo que calcula cuánto contribuyó cada parámetro de una red al error, propagando ese error desde la salida hacia atrás.

¿Demasiado técnico? Ver explicación sencilla¿Quieres profundizar? Ver explicación técnica

Explícamelo fácil

Cuando el modelo se equivoca, hay que saber a quién «culpar». Backpropagation recorre la red desde la salida hasta la entrada y reparte la responsabilidad del error entre todas las conexiones.

Con esa información, el descenso de gradiente sabe cuánto ajustar cada peso.

En 30 segundos

  1. 1Forward pass: la entrada recorre la red y produce una predicción.
  2. 2Se calcula la pérdida comparando con la respuesta correcta.
  3. 3Backward pass: se aplica la regla de la cadena capa por capa, de la salida a la entrada.
  4. 4Se obtiene un gradiente para cada parámetro.
  5. 5El optimizador usa esos gradientes para actualizar los pesos.

Nivel técnico

Profundizando

Backpropagation es una aplicación eficiente de la regla de la cadena del cálculo, conocida como diferenciación automática en modo reverso. Reutiliza los valores intermedios del forward pass para calcular todos los gradientes con un costo del mismo orden que una sola evaluación de la red.

Frameworks como PyTorch y JAX lo implementan automáticamente construyendo un grafo de cómputo. Problemas clásicos: gradientes que se desvanecen o explotan en redes profundas, mitigados con conexiones residuales, normalización, buena inicialización y gradient clipping.

Ver explicación matemática
∂L/∂w = (∂L/∂y) · (∂y/∂z) · (∂z/∂w)

La regla de la cadena para un peso w en una neurona con z = w·x + b y salida y = σ(z).

Qué significa cada símbolo

∂L/∂w
Cuánto cambia la pérdida si cambia un poco el peso w
∂L/∂y
Sensibilidad de la pérdida a la salida de la neurona (viene de las capas siguientes)
∂y/∂z
Derivada de la función de activación
∂z/∂w
Igual a la entrada x

¿Por qué importa?

Sin backpropagation no sería práctico entrenar redes con millones o miles de millones de parámetros.

¿Dónde se utiliza?

  • Entrenamiento de toda red neuronal moderna

Antes de aprender esto

Continúa aprendiendo

Conceptos relacionados

Fuentes y lecturas