Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Attention Mechanism

Un mecanismo de atención pondera las características de entrada según su relevancia mediante consultas, claves y valores. Incluye las matemáticas, los tipos de atención y la comparación entre atención y convolución.

Un mecanismo de atención es una operación de red neuronal que genera cada resultado como una media ponderada de las características de entrada; los pesos se calculan según la relevancia de cada entrada para el elemento que se está procesando. La relevancia se puntúa comparando un vector de consulta con vectores clave, y las puntuaciones resultantes ponderan los vectores de valor correspondientes. La atención se introdujo en 2014 para la traducción automática, donde permitió que un decodificador de red neuronal recurrente (RNN) consultara cada palabra de origen, en lugar de comprimir toda la frase en un único vector de longitud fija. El Transformer de 2017 construyó toda una arquitectura a partir de la atención, que ahora es la operación central de los modelos de lenguaje de gran tamaño, los transformadores de visión y muchos modelos de detección de objetos.

Cómo funciona la atención#

La atención utiliza tres proyecciones lineales aprendidas de su entrada. La consulta (Q) describe qué busca el token actual, cada clave (K) describe lo que ofrece un token y cada valor (V) contiene el contenido que se transmite. El modelo compara la consulta con todas las claves, convierte las puntuaciones de comparación en pesos y devuelve la suma ponderada de los valores. Cuando un modelo de traducción genera «noir» para «The black cat», la consulta de ese paso obtiene la puntuación más alta frente a la clave de «black», aunque en francés el adjetivo va después del sustantivo.

La atención multicabezal ejecuta varias de estas operaciones en paralelo, cada una con sus propias proyecciones de menor dimensión, y concatena los resultados. Así, distintos cabezales pueden especializarse en relaciones diferentes dentro de una misma capa.

Atención de producto escalar escalado#

La atención del Transformer se expresa como Attention(Q, K, V) = softmax(QKᵀ / √d_k) V. Cada consulta se compara con todas las claves mediante un producto escalar, y las puntuaciones se dividen por la raíz cuadrada de la dimensión de la clave d_k para que no aumenten con el tamaño del vector ni saturen la función softmax. Softmax convierte las puntuaciones de cada consulta en pesos que suman 1, y el resultado es la suma ponderada de los vectores de valor.

import torch
import torch.nn.functional as F

torch.manual_seed(0)

# Consultas, claves y valores para una secuencia de 4 tokens, cada uno de 8 dimensiones
q, k, v = torch.randn(3, 4, 8).unbind(0)

# Puntuar cada consulta frente a cada clave, escalar por sqrt(d_k) y normalizar cada fila con softmax
weights = (q @ k.T / k.shape[-1] ** 0.5).softmax(dim=-1)

# Cada token de salida es una media ponderada de los vectores de valor
output = weights @ v

print("Attention weights of token 0:", [round(w, 3) for w in weights[0].tolist()])
print("Matches PyTorch SDPA:", torch.allclose(output, F.scaled_dot_product_attention(q, k, v), atol=1e-6))

Imprime [0.121, 0.741, 0.106, 0.032] y True: el token 0 obtiene el 74 % de su salida del vector de valor del token 1; sus cuatro pesos suman 1; y el resultado manual coincide con la operación fusionada de PyTorch scaled_dot_product_attention, que utiliza kernels eficientes en memoria, como FlashAttention, en las GPU compatibles.

Tipos de atención#

  • Autoatención: Las consultas, las claves y los valores proceden de la misma secuencia, así que cada token obtiene contexto de todos los demás. Es la atención que se utiliza en los codificadores Transformer y los ViT.
  • Atención cruzada: Las consultas proceden de una secuencia y las claves y los valores, de otra. Un decodificador de traducción presta atención a la frase de origen; un modelo de difusión de texto a imagen, a la indicación; y las consultas de objeto de un decodificador DETR, a las características de imagen.
  • Atención causal: Una máscara impide que cada token preste atención a tokens posteriores, por lo que un modelo de lenguaje genera texto de izquierda a derecha y las claves y los valores de los tokens anteriores se pueden guardar en una caché KV.
  • Atención eficiente: La atención dispersa, la atención de ventana deslizante y la atención lineal reducen el coste cuadrático de comparar cada token con todos los demás; la atención deformable solo muestrea unos pocos puntos aprendidos alrededor de cada posición de referencia.
  • Atención de canal en las CNN: Las redes Squeeze-and-Excitation reajustan el peso de los canales de un mapa de características mediante su promedio global; es una forma de atención de bajo coste que sirvió de base para la propuesta ganadora de la clasificación ILSVRC 2017.

Atención frente a convolución#

Una convolución aplica el mismo filtro pequeño en cada posición, por lo que cada salida ve una ventana local fija y sus pesos no dependen de la imagen. La atención calcula sus pesos a partir del contenido y puede conectar dos posiciones cualesquiera dentro de una capa. El coste es que crece con el cuadrado del número de tokens. Una imagen de 640×640 con stride 32 produce una cuadrícula de 20×20, es decir, 400 tokens y 160.000 pares de consulta y clave; la cuadrícula con stride 8 de la misma imagen tiene 6.400 tokens y casi 41 millones de pares. YOLO26 sitúa sus bloques de atención en consecuencia: el bloque C2PSA que cierra el backbone y un bloque C3k2 con atención en el neck ejecutan atención propia multicabezal sobre el mapa de características de 20×20 con stride 32, mientras que todas las capas de mayor resolución siguen siendo convolucionales.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático