Preentrenamiento
¿Qué aprende un modelo al leer medio internet?
Lección completa
Si quieres:
En la lección anterior armamos un transformer, pero sus números empiezan al azar. Hoy lo vemos aprender leyendo una montaña de texto: es el preentrenamiento.
Sin voz: la lección avanza sola con subtítulos.
La voz de esta lección está en preparación: por ahora avanza sola con subtítulos.
Modo revisiónComentar este pasoTerminé la lección
Qué lograrás
- Explicar por qué adivinar la siguiente pieza de un texto es aprendizaje autosupervisado y qué es el preentrenamiento.
- Describir cómo se limpia un corpus (idioma, calidad, datos personales y duplicados) y calcular qué tanto se parecen dos textos por los trozos de cinco palabras que comparten.
- Reconocer, con mediciones reales de Pythia, en qué orden aprende un modelo y por qué un modelo base no es un asistente ni sabe lo que pasó después de su corte de conocimiento.
Ideas clave
- El preentrenamiento repite un solo ejercicio: tapar la siguiente pieza de un texto y adivinarla. Como la respuesta ya está en el texto, no hacen falta etiquetas puestas por personas: es aprendizaje autosupervisado, y por eso puede usar cientos de miles de millones de tokens (GPT-3 leyó unos trescientos mil millones).
- El texto se limpia antes: idioma, reglas de calidad, datos personales tapados y duplicados fuera. Un duplicado casi idéntico se detecta midiendo qué parte de los trozos de cinco palabras comparten dos textos; el umbral es una decisión (los autores de Pythia usaron 87 %).
- Calidad antes que cantidad: GPT-3 repasó casi tres veces y media su Wikipedia y menos de media vez su web filtrada. Y lo que casi no está en el corpus casi no se aprende: Pythia, entrenado sobre todo con inglés, nunca contesta «París» en español.
- En Pythia, medido en 25 puntos de control: con unos 34 millones de tokens repite lo más frecuente; con unos 2 000 millones ya escribe frases correctas; los hechos («París») y los patrones («casa») llegan hacia los 34 000 millones y siguen afinándose hasta el final.
- El resultado es un modelo base: continúa textos, no obedece; no sabe nada posterior a su corte de conocimiento y lo inventa con aplomo. Lo que entra al corpus puede salir (memorización y privacidad), y de dónde viene el texto es una cuestión legal y ética abierta.
Lo que mucha gente cree
Creencia común Un modelo preentrenado guarda internet como una base de datos y busca ahí las respuestas.
Lo correcto No guarda los documentos: ajusta sus parámetros para adivinar mejor la siguiente pieza. Retiene patrones y datos frecuentes, y a veces textos muy repetidos palabra por palabra (por eso importan los duplicados y la privacidad), pero no puede consultar lo que leyó, puede equivocarse con seguridad y no sabe nada posterior a su corte de conocimiento.
Compruébalo
Cuatro preguntas. Sin nota ni cuenta: sirven para ver si la idea quedó.
Por dentroPara quien quiere las fórmulas y el código. No hace falta para seguir el curso.
El objetivo, en una fórmula
Para un texto de piezas , el modelo con parámetros da, en cada lugar, una probabilidad a la pieza que de verdad sigue. El error de una apuesta es , y el preentrenamiento minimiza su promedio, la entropía cruzada:
Con la máscara causal de la lección 22, las predicciones de un texto se calculan en un solo pase. Si la pieza correcta recibe , el error es ; si recibe , crece sin límite. Adivinar al azar entre las piezas del tokenizador de Pythia da (nats por pieza). Las cifras de la escena: «five» sin entrenar recibe , error ; tras entrenar, , error .
Cómo medimos a Pythia
Pythia (Biderman et al., 2023) es una familia de 16 modelos abiertos entrenados con los mismos datos, en el mismo orden, con 154 puntos de control públicos por modelo: el paso 0, los pasos 1, 2, 4, …, 512 y cada 1 000 pasos hasta el 143 000. Cada paso usa 1 024 secuencias de 2 048 tokens ( tokens), así que el total es mil millones. Usamos el de 1 400 millones de parámetros (1 414 647 808 en total), entrenado con The Pile sin quitar duplicados, en 25 de sus puntos de control. El script build-pythia.py (junto a esta lección) carga cada uno, mide y escribe pythia-data.ts; nada se retoca a mano. Todo es determinista: decodificación voraz, sin sorteo.
El «error promedio» de la curva es sobre un texto de 500 tokens en inglés escrito para esta lección en 2026 (The Pile es de 2020: no pudo leerlo). Es poco texto: sirve para ver la forma de la curva, no para comparar modelos. Desglosado por tipo de pieza, se ve que la forma llega antes que el contenido:
| Paso (tokens leídos) | Puntuación | Palabras frecuentes | Otras palabras | Nombres y mayúsculas | Promedio |
|---|---|---|---|---|---|
| 0 (0) | 11.40 | 10.86 | 11.02 | 11.32 | 11.01 |
| 16 (34 M) | 2.94 | 7.34 | 11.09 | 11.32 | 8.65 |
| 128 (268 M) | 2.40 | 4.40 | 9.70 | 10.42 | 6.77 |
| 1 000 (2 100 M) | 1.46 | 2.82 | 5.94 | 7.64 | 4.21 |
| 16 000 (33 500 M) | 0.94 | 2.00 | 3.84 | 6.33 | 2.82 |
| 143 000 (300 000 M) | 0.80 | 1.84 | 3.39 | 6.14 | 2.52 |
La puntuación baja de 11.4 a 2.9 en los primeros 34 millones de tokens; los nombres propios siguen cerca de 10 con 500 millones y, al final, son lo más difícil (6.1). Las respuestas: «Paris» aparece por primera vez en el paso 16 000 (antes dice «the capital of France», «the city of Lyon», «Bordeaux»), con de 0.30 que llega a 0.61; «casa» en el mismo paso, con de 0.15 que llega a 0.82. En cambio, contar («1, 2, 3, 4, 5,» → «6») ya sale en el paso 1 000: algunos patrones sencillos llegan pronto. En español, «París» nunca es la pieza más probable: al final recibe . Para comparar idiomas sin depender del tokenizador se usan bits por byte: al final, 0.78 en inglés y 0.99 en el mismo texto traducido al español.
Duplicados casi idénticos
Cada documento se vuelve el conjunto de sus trozos de 5 palabras seguidas (en inglés, shingles). El parecido de dos documentos es el índice de Jaccard:
En la frase de la escena, y : . Comparar todos contra todos es imposible con miles de millones de páginas; por eso se usa MinHash (Broder, 1997): con una función de hash , la probabilidad de que el trozo con menor coincida en y en es exactamente . Con muchos hashes agrupados en cubetas, los documentos que coinciden en una cubeta entera se marcan como duplicados. FineWeb (Penedo et al., 2024) usa 5-gramas, 112 hashes en 14 cubetas de 8, apuntando a documentos parecidos en al menos 75 %; Pythia tiene una versión entrenada con The Pile sin duplicados, umbral 0.87, que bajó de unos 300 000 a 207 000 millones de tokens; GPT-3 redujo así cada conjunto un 10 %, en promedio. Lee et al. (2022) encontraron en C4 una frase de 61 palabras repetida más de 60 000 veces, y con datos sin duplicados sus modelos repitieron de memoria texto del entrenamiento diez veces menos.
Filtros de calidad y mezcla
La tubería de la escena (crawl.ts) aplica de verdad tres reglas de FineWeb: se descarta una página si a lo más el 12 % de sus líneas termina en puntuación, si al menos el 10 % de sus caracteres está en líneas repetidas, o si al menos el 67 % de sus líneas mide menos de 30 caracteres; y dos de C4 (Raffel et al., 2020): «lorem ipsum» y llaves {. Los correos y las direcciones IP se enmascaran, como en la versión pública de FineWeb. GPT-3 filtró Common Crawl con un clasificador que premiaba lo parecido a textos de referencia de calidad: de 45 TB comprimidos quedaron 570 GB. La mezcla no es proporcional al tamaño: Wikipedia (3 mil millones de tokens) pesa 3 % y se lee 3.4 veces; Common Crawl filtrado (410 mil millones) pesa 60 % y se lee 0.44 veces. FineWeb-Edu, 1.3 billones de tokens elegidos por valor educativo, iguala en MMLU a otro conjunto web con casi 10 veces menos tokens.
En código
import math
def shingles(texto, k=5):
w = texto.lower().split()
return {' '.join(w[i:i + k]) for i in range(len(w) - k + 1)}
def jaccard(a, b):
return len(a & b) / len(a | b)
A = shingles('plantarán dos mil árboles nuevos junto al río')
B = shingles('plantarán tres mil árboles nuevos junto al río')
print(len(A), len(A | B), len(A & B), round(jaccard(A, B), 2))
# error de una apuesta: −ln p de la pieza correcta
for p in (3.279e-05, 0.1175):
print(round(-math.log(p), 2))
print(round(math.log(50254), 2)) # adivinar al azar entre 50 254 piezas
# 4 6 2 0.33
# 10.33
# 2.14
# 10.82
Derechos, consentimiento y privacidad
The Pile (Gao et al., 2020) marca en su tabla 5 qué componentes tienen consentimiento de los autores; Books3 (libros de una copia del sitio privado Bibliotik) no lo tiene. En Bartz v. Anthropic (Distrito Norte de California), la orden del 23 de junio de 2025 consideró uso legítimo (fair use) usar los libros para entrenar y digitalizar libros comprados, pero no descargar copias piratas para una biblioteca permanente; el acuerdo de 1 500 millones de dólares, unos 3 000 por obra para unas 482 000 obras, se aprobó el 20 de julio de 2026. Es una decisión de un tribunal de un país; otras demandas siguen en curso y otras jurisdicciones tienen reglas distintas. El consentimiento también se mueve: Longpre et al. (2024) estiman que, en un solo año (de abril de 2023 a abril de 2024), una cuarta parte o más de los tokens de los sitios más importantes de C4 quedaron restringidos para los rastreadores de IA en su robots.txt. Carlini et al. (2021) extrajeron de GPT-2 604 textos memorizados de 1 800 candidatos; entre ellos había nombres, teléfonos y correos, algunos presentes en un solo documento del entrenamiento.
Lo que viene
Pythia leyó 300 mil millones de tokens con 1 400 millones de parámetros. La lección 24 muestra cómo baja el error al crecer los parámetros, los datos y el cómputo, y cuánto cuesta. Cómo se convierte un modelo base en asistente es tema de las lecciones 27 y 28.
Lente de decisión
Qué significa esta idea si tu trabajo es decidir, no programar.
- Pregunta de dónde salen los datos de un modelo: qué fuentes, con qué licencias y con qué consentimiento. Un proveedor serio documenta su corpus; si no puede decirlo, el riesgo legal y de reputación también es tuyo.
- Todo modelo tiene un corte de conocimiento: lo posterior no lo sabe y puede inventarlo con aplomo. Pregunta la fecha y, si tu caso depende de información reciente, combínalo con búsqueda en documentos (lección 31).
- Un modelo base no es un producto: continúa textos, no sigue instrucciones. Los modelos base abiertos sirven para investigar o para ajustarlos a tu tarea; para conversar hace falta la etapa de las lecciones 27 y 28.
- Lo que entra al corpus puede salir: un modelo puede repetir textos memorizados, incluidos datos personales. No pongas datos sensibles en datos de entrenamiento y pregunta cómo se filtraron y se quitaron duplicados.
Términos de la lección
- Token Pieza de texto (una palabra, un trozo de palabra, un signo o un código básico) tomada del vocabulario. Es la unidad que el modelo lee y genera, y por la que se cobra.
- Tokenizador Programa que corta el texto en tokens y da a cada uno su número (y hace el camino de vuelta). Se construye antes de entrenar el modelo y queda fijo.
- Vocabulario Lista de todas las piezas (tokens) que un tokenizador puede producir, cada una con su número. Los reales tienen de unas treinta y dos mil a unas doscientas mil; el de juguete de la lección, 656.
- Modelo de lenguaje Modelo que, dado un texto (el contexto), da una probabilidad a cada palabra o pieza que puede seguir. Escribe agregando una pieza a la vez.
- Transformer Arquitectura de red neuronal formada por una pila de bloques con la misma forma. Cada bloque combina atención (entre tokens) y una red aplicada a cada token, con conexiones residuales y normalización. Se presentó en «Attention Is All You Need» (2017).
- Parámetro Cada uno de los números que un modelo ajusta al entrenarse y en los que guarda lo aprendido.
- Función de pérdida Un único número que resume qué tan equivocado está un modelo con sus datos. Entrenar es buscar los parámetros que lo hacen lo más pequeño posible.
- Descenso del gradiente Método que ajusta los pesos paso a paso, siempre en contra de la pendiente del error (el gradiente), hasta llegar a un fondo.
- Datos de entrenamiento Ejemplos, cada uno con su respuesta correcta, con los que un modelo ajusta sus parámetros.
- Aprendizaje automático Enfoque en que una computadora obtiene las reglas a partir de ejemplos en lugar de que alguien las escriba. El término se asocia a Arthur Samuel (1959).
- Corte de conocimiento Fecha a partir de la cual los datos de entrenamiento no incluyen más textos. El modelo no conoce lo posterior, salvo que se le dé como contexto, y no siempre avisa que no lo sabe.
- Alucinación Respuesta fluida y segura de un modelo que es falsa o no está respaldada por ninguna fuente. Es consecuencia de predecir texto plausible, no de comprobar hechos.
- Ajuste con instrucciones Ajuste fino de un modelo base con pares de indicación y respuesta ideal escritos por personas, para que trate lo que se le pide como una petición y no como el comienzo de un texto.
- RLHF (aprendizaje por refuerzo con retroalimentación humana) Ajusta un modelo para que sus respuestas obtengan más puntos de un modelo de recompensa entrenado con preferencias humanas, con una penalización (la «correa» KL) que lo mantiene cerca del modelo de partida.
Transcripción completa
Fuentes
- Biderman, S., Schoelkopf, H., Anthony, Q., Bradley, H., O’Brien, K., Hallahan, E., et al. (2023). Pythia: A Suite for Analyzing Large Language Models Across Training and Scaling
- EleutherAI (2023). EleutherAI/pythia-1.4b (ficha del modelo y puntos de control)
- Gao, L., Biderman, S., Black, S., Golding, L., Hoppe, T., Foster, C., et al. (2020). The Pile: An 800GB Dataset of Diverse Text for Language Modeling
- Brown, T. B., Mann, B., Ryder, N., Subbiah, M., et al. (2020). Language Models are Few-Shot Learners (GPT-3)
- Common Crawl Foundation (2026). Common Crawl: corpus abierto de la web
- Penedo, G., Kydlíček, H., Ben Allal, L., Lozhkov, A., Mitchell, M., Raffel, C., Von Werra, L., Wolf, T. (2024). The FineWeb Datasets: Decanting the Web for the Finest Text Data at Scale
- Raffel, C., Shazeer, N., Roberts, A., Lee, K., Narang, S., et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer (T5, C4)
- Broder, A. Z. (1997). On the resemblance and containment of documents
- Lee, K., Ippolito, D., Nystrom, A., Zhang, C., Eck, D., Callison-Burch, C., Carlini, N. (2022). Deduplicating Training Data Makes Language Models Better
- Carlini, N., Tramèr, F., Wallace, E., Jagielski, M., Herbert-Voss, A., Lee, K., et al. (2021). Extracting Training Data from Large Language Models
- Longpre, S., Mahari, R., Lee, A., Lund, C., et al. (2024). Consent in Crisis: The Rapid Decline of the AI Data Commons
- U.S. District Court for the Northern District of California (juez W. Alsup) (2025). Bartz v. Anthropic PBC, n.º 3:24-cv-05417, Order on Fair Use (N. D. Cal., 23 de junio de 2025)
- U.S. District Court for the Northern District of California (jueza A. Martínez-Olguín) (2026). Bartz v. Anthropic PBC, Order Granting Final Approval of Class Action Settlement (N. D. Cal., 20 de julio de 2026)
- FIFA (2022). FIFA World Cup Qatar 2022, final: Argentina 3–3 France (Argentina won 4–2 on penalties), match centre
ComentariosConversación pública de esta lección: dudas, datos por revisar, ideas.
Los comentarios viven en GitHub Discussions, en el repositorio público del curso; para escribir se necesita una cuenta de GitHub. Se cargan desde giscus.app al abrir esta sección. Las personas que revisan el curso los leen, y si un cambio se acepta, se aplica en los dos idiomas. Abrir el hilo en GitHub