MÓDULO 7 · HUGGING FACE · LECCIÓN 03 · 25 MIN

Las tres familias de Transformer

Encoder, Decoder y Encoder-Decoder no se diferencian por «uno lee y otro escribe». Se diferencian por qué puede mirar cada token: en un encoder la atención es bidireccional y cada posición ve toda la frase; en un decoder está enmascarada y cada posición solo ve lo anterior. Todo lo demás —qué tarea le va bien, cómo falla— sale de ahí.
01 — La máscara
Quién puede mirar a quién
Bidireccional · encoder
fila = token que consulta
columna = token consultado
el token 3 puede usar el 4
Causal · decoder
el futuro está tapado
el token 3 no ve el 4
predecir ≠ copiar

En un encoder, para representar «banco» la posición puede usar «río», que va después. Por eso sirve para clasificar y extraer: cada posición sale contextualizada por la frase entera.

En un decoder la restricción es de entrenamiento, no de hardware. Se entrena a predecir el token siguiente; si pudiera atender al futuro, la tarea sería copiar la respuesta.

// De la máscara salen los objetivos: reconstruir tokens tapados (encoder) frente a predecir el siguiente (decoder).
02 — Las tres familias
Qué produce cada una
FamiliaAtenciónQué saleEjemplos que cita la guía
EncoderBidireccionalUn vector por tokenBERT, RoBERTa
DecoderCausalDistribución sobre el vocabularioGPT, Llama
Encoder-DecoderBidireccional en la entrada, causal en la salidaSecuencia nuevaT5, BART

El Encoder-Decoder existe porque hay tareas donde la entrada se entiende entera antes de empezar a producir: traducir, resumir, corregir. El encoder construye la representación completa y el decoder genera consultándola.

03 — Elegir
Sin metáforas de lector y escritor
Lo que necesitasFamiliaPor qué
Etiqueta de un conjunto fijoEncoderLa salida es una clasificación sobre una representación, no texto libre
Extraer entidades o spansEncoderNecesitas un vector por token, contextualizado por toda la frase
Embeddings para búsqueda semánticaEncoderMismo motivo, agregado a nivel de frase
Texto libre, conversación, códigoDecoderLa tarea es continuar una secuencia
Convertir una entrada en otra secuenciaEncoder-DecoderLees todo, luego escribes todo

El error caro que describe la guía es real: usar un decoder generativo para clasificar. No es que no pueda. Es que devuelve texto donde querías una etiqueta, y ahora tienes un problema de parsing y de salidas fuera del conjunto de clases que antes no existía.

04 — El error simétrico
Un encoder no escribe mal: no escribe

Menos comentado y también real: usar un encoder cuando la salida no cabe en un conjunto cerrado. La cabeza de un encoder produce una distribución sobre las clases que le pusiste al entrenarlo. Si mañana aparece una categoría nueva, un decoder la maneja con una frase en el prompt y un encoder necesita reentrenar la cabeza.

El trade-off real

Encoder: inferencia barata y salida controlada, a cambio de un conjunto de clases congelado.
Decoder: se adapta a lo que no previste, a cambio de coste y de una salida que hay que validar.

Auditoría

La tabla de la guía dice que los Decoder no valen para «clasificación precisa donde el error debe ser 0 %». Dos cosas ahí. Primera: ningún clasificador tiene 0 % de error, tampoco un encoder; un texto que promete eso está describiendo un deseo. Segunda, llamar «alucinación» al fallo de un clasificador mezcla dos modos de fallo distintos — un decoder usado para clasificar no inventa hechos, devuelve una cadena que no está en tu conjunto de clases.

La misma tabla desaconseja el Encoder-Decoder para «tareas simples de clasificación» por ser «matar moscas a cañonazos». Pero la familia T5 se diseñó precisamente para tratar toda tarea como texto-a-texto, clasificación incluida. ¿Es un argumento de arquitectura o de coste? Si es de coste, el criterio no es la familia: es el tamaño del modelo.

Y los nombres. GPT-3, Llama, BERT, RoBERTa, T5, BART salen de un PDF sin fecha. La taxonomía de tres familias envejece bien; la lista de ejemplos, no. Antes de citar un nombre concreto, comprueba qué hay hoy en el Hub para esa familia.

05 — Ahora tú
Clasifica tres tareas y ponles precio

Coge las tres últimas tareas de IA que hayas visto plantear en tu entorno y asígnales familia, justificando en una frase: qué necesita ver cada token y qué forma tiene la salida.

Después coge la que hayas puesto como Encoder y pregúntate qué pasa si mañana hace falta una categoría nueva. Si la respuesta es «reentrenar», ya tienes el coste real de esa elección — que es justo el dato que la tabla de la guía no da.