Tema 23 · Fase 5, Lenguaje y atención · Toda la ruta
Lo esencial
1La atención es una búsqueda suave: cada palabra compara su consulta (Q) con las claves (K) de todas, convierte los parecidos en pesos que suman 1 con un softmax y se lleva el promedio ponderado de los valores (V): softmax(QKᵀ/√d)·V.
2Dividir por √d evita que el softmax se sature con vectores largos; la temperatura decide si la atención se concentra en una palabra o se reparte entre todas.
3En la autoatención, Q, K y V salen de la misma frase con capas lineales aprendidas, y varias cabezas miran con criterios distintos. Programada desde cero en PyTorch, da lo mismo que nn.MultiheadAttention.
4La atención no conoce el orden: hace falta sumar una codificación posicional. La máscara causal tapa el futuro con −∞ antes del softmax; con ella se arman los decodificadores, y sin ella, los codificadores.
5Un bloque transformer junta atención y un MLP, cada uno con LayerNorm y una conexión residual. Un transformer pequeño aprende en segundos a invertir dígitos, y su mapa de atención muestra la regla que descubrió.
6Un Vision Transformer corta la imagen en parches (con tensor.unfold), los trata como palabras y agrega un token [CLS] que resume la imagen.