Self-Attention

Definición breve

El self-attention es un mecanismo que permite a un modelo evaluar la importancia de cada token dentro de una secuencia con respecto a los demás tokens.

Explicación del concepto

En los Transformers, cada token puede “prestar atención” a todos los demás tokens en la secuencia.

Esto permite que el modelo capture relaciones contextuales complejas entre palabras.

Cómo funciona

Cada token genera tres vectores:

  • Query
  • Key
  • Value

Las similitudes entre queries y keys determinan el peso de atención.

Por qué es importante

El self-attention permite que los modelos capturen dependencias de largo alcance en secuencias.

Ejemplo conceptual

En la frase:

«El banco junto al río estaba vacío.»

El modelo puede entender que “banco” está relacionado con “río” y no con un banco financiero.

Ejemplo en PyTorch

Python
import torch.nn as nn
attention = nn.MultiheadAttention(embed_dim=512, num_heads=8)

Conceptos relacionados

  • Transformers
  • Multi-Head Attention
  • Positional Encoding

Resumen

El self-attention permite que los modelos comprendan relaciones contextuales dentro de secuencias.