Skip to content

English · Español

Fase 16 — Codificaciones posicionales (positional encodings)

Requiere: 15 — Attention desde cero Enseña: positional-encoding · rope · sinusoidal · extrapolation Salta a cualquier capítulo desde el índice de referencia de fases.

Mapa del capítulo

Preescrito según A12; alcance de gramática verbal inglesa según A13. Esta entrada de fase existe antes de que Borja comience a estudiar. La teoría y los enunciados de los problemas del laboratorio son borradores estables; las soluciones se escriben justo a tiempo al abrir la fase.

🇪🇸 Attention sin posiciones es permutación-equivariante: para el modelo, I work he y he work I son el mismo conjunto de tokens reordenado — pero la respuesta correcta a ... he ___ (works) depende crucialmente de qué viene antes del slot. Esta fase añade la información posicional como una pieza separada al embedding (o, en RoPE, como una rotación de Q y K). Implementamos tres variantes y comparamos extrapolación más allá del largo de entrenamiento.


Objetivo

Implementar tres esquemas de codificación posicional (positional encoding) — sinusoidal, aprendida, RoPE — y comparar su comportamiento. Al final de la Fase 16:

  1. Borja puede demostrar la equivarianza por permutación de attention con un contraejemplo de 3 tokens (sobre un fragmento de gramática verbal como I work he).
  2. Los tres esquemas de PE existen en src/minimodel/positional/.
  3. La propiedad de posición relativa de RoPE se verifica numéricamente.
  4. Borja tiene un argumento escrito de por qué el Mini-GPT de la Fase 17 debería usar RoPE (opción por defecto preferida) o sinusoidal (alternativa de respaldo).

La Fase 16 es una fase de taller. Tres implementaciones, un experimento de comparación, decide cuál usar aguas abajo. Planifica entre 8 y 15 horas de estudio.

Orden de lectura

  1. theory/00-motivation.md — equivarianza por permutación, el problema que estamos resolviendo.
  2. theory/01-sinusoidal.md — la PE original de Vaswani. Deriva la fórmula.
  3. theory/02-learned-vs-sinusoidal.md — cuándo gana cada una; por qué ambas fallan en extrapolación; el hueco que RoPE/ALiBi llenan.
  4. theory/03-rope.md — derivación de RoPE, la propiedad de posición relativa, el truco de implementación.
  5. lab/00-permutation-equivariance.md — demuestra que attention sin PE no distingue el orden de las palabras.
  6. lab/01-sinusoidal-pe.md — implementa y visualiza la PE sinusoidal.
  7. lab/02-rope-implementation.md — implementa RoPE; verifica numéricamente la propiedad de posición relativa.
  8. lab/03-extrapolation-compare.md — comparación cara a cara más allá del largo de entrenamiento.

solutions/ está vacío durante el preescrito.

Definición de hecho (DoD)

Ver PHASE_16_PLAN.md §6. En resumen:

  • Tres esquemas de PE implementados.
  • Contraejemplo de equivarianza por permutación commiteado.
  • Verificación numérica de RoPE pasa.
  • Gráfico de comparación de extrapolación commiteado; elige un ganador para la Fase 17.

Lo que esta fase intencionadamente NO cubre

  • Sesgos de posición relativa estilo T5. Mención de un párrafo en theory/02. No implementado.
  • ALiBi. Mención de un párrafo. No implementado (extensión opcional de Borja).
  • xPos, NoPE, otras variantes de 2023+. Fuera de alcance.
  • Posiciones 2D (vision transformers). Territorio de la Fase 22, si acaso.
  • Entrenamiento consciente de la posición. No entrenamos en la Fase 16. Sólo forward-pass y comparación de patrones.

El alcance de la Fase 16 es las tres codificaciones posicionales canónicas y su comportamiento de extrapolación. Nada más.

Lecturas recomendadas

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