Skip to content

English · Español

Fase 10 — Inicialización, normalización, residuales

Requiere: 09 — MLP diminuto y abstracción de módulos (minitorch) Enseña: initialization · xavier · kaiming · layer-norm · rms-norm · residuals · pre-ln Salta a cualquier capítulo desde el índice de referencia de fases.

Mapa del capítulo

Pre-redactado según A12. La teoría y los enunciados de los laboratorios son borradores estables; las soluciones se redactan justo a tiempo en la apertura de fase.

🇪🇸 Tres trucos arquitectónicos hacen entrenable una red profunda: inicialización conservadora de varianza, normalización por capa, y conexiones residuales. Sin ellos, todo lo que viene después (transformers de 30+ capas) es físicamente imposible de entrenar.


Objetivo

Hacer que Borja sea capaz de predecir, antes de ejecutar un experimento, si una combinación dada (profundidad × activación × inicialización × norm × ¿residual?) divergirá, se desvanecerá o entrenará. La figura estrella de la fase son tres curvas de pérdida sobre los mismos ejes — la inicialización uniforme diverge, Xavier avanza a paso de tortuga, Kaiming entrena — para la misma arquitectura y los mismos datos. Después de eso, el resto de la Fase 10 es simplemente añadir los dos trucos siguientes (norm, residual) encima de una inicialización correcta.

Orden de lectura

  1. theory/00-motivation.md — por qué la profundidad necesita estos tres trucos siquiera. El argumento de varianza en el forward pass.
  2. theory/01-initialization.md — derivar Xavier (lineal/tanh) y Kaiming (ReLU) a partir de Var(y) = Var(x). Forma cerrada, con ejemplo.
  3. theory/02-normalization.md — BatchNorm vs LayerNorm vs RMSNorm. Por qué RMSNorm gana para LLMs en 2026.
  4. theory/03-residuals.md — la autopista del gradiente. Pre-LN vs Post-LN. Por qué Pre-LN es el default moderno.
  5. theory/04-putting-it-together.md — combinando init + norm + residual. Fallos de interacción comunes.
  6. lab/00-variance-walk.mdver las activaciones explotar bajo mala inicialización; trazar Var(activations) a través de las capas.
  7. lab/01-init-ablation.md — ejecutar el experimento estrella de tres curvas.
  8. lab/02-norm-ablation.md — misma arquitectura, tres variantes de norm.
  9. lab/03-residual-depth.md — MLP de 50 capas, con y sin residuales, normas de gradiente en la capa 1.

solutions/ está vacío durante el pre-redactado — se rellena en la apertura de la fase.

Definición de hecho (DoD)

Ver PHASE_10_PLAN.md §6. Brevemente:

  • Tres experimentos de inicialización demuestran divergencia vs convergencia sobre (datos, arquitectura, optimizador) idénticos.
  • LayerNorm y RMSNorm ambos entrenan; RMSNorm es más rápido (comparación de tiempos comprometida).
  • Un MLP de 50 capas entrena sólo con residuales (figura de norma de gradiente en la capa 1 comprometida).
  • src/minigrad/nn/{init,norm,residual}.py existen con tests que pasan.
  • Puedes predecir la trayectoria de pérdida de una nueva configuración (profundidad, init, norm, residual) sin ejecutarla.

Qué NO cubre esta fase intencionadamente

  • Atención (attention). Fase 15. La self-attention tiene su propia historia de normalización — se cubre allí.
  • Bloques transformer. Fase 17. Aquí construimos los componentes, allí los ensamblamos.
  • Optimizadores más allá de SGD/Adam. La Fase 9 introdujo ambos; la Fase 10 no los extiende.
  • BatchNorm para visión / CNNs. Mencionado en la teoría por vocabulario; no implementado. Los LLMs modernos no lo usan.
  • Entrenamiento en precisión mixta y su interacción con norms. Fase 26 (cuantización).

El alcance de la Fase 10 son los tres trucos estructurales que convierten un MLP de 2 capas en un MLP profundo que aún entrena. Nada más.

Lecturas recomendadas

Opcional — enriquece pero no es necesario para aprobar la fase.