Zubnet AIAprenderWiki › Self-Attention
Fundamentos

Self-Attention

Scaled Dot-Product Attention
Um mecanismo de atenção onde uma sequência atende a si mesma — cada token computa sua relevância em relação a cada outro token na mesma sequência. Queries, keys e values todos vêm da mesma entrada. Isso permite que cada token recolha informação de todos os outros tokens, ponderada por relevância. Self-attention é a operação central em cada camada Transformer.

Por que importa

Self-attention é o que faz os Transformers funcionarem. Substituiu o processamento sequencial das RNNs por conexões paralelas e diretas entre todas as posições. A palavra “bank” em “river bank” atende a “river” para resolver seu significado, não importa quão distantes estejam. Essa capacidade de conectar diretamente duas posições quaisquer é por que Transformers lidam tão bem com dependências de longo alcance.

Deep Dive

The computation: for input X, compute Q = X·W_Q, K = X·W_K, V = X·W_V. Then: Attention(Q,K,V) = softmax(Q·K^T / √d_k) · V. The softmax(Q·K^T) produces an N×N attention matrix where entry (i,j) represents how much token i attends to token j. The √d_k scaling prevents dot products from growing too large in high dimensions, which would push softmax into saturated regions with near-zero gradients.

Causal vs. Bidirectional

In decoder-only LLMs (GPT, Claude, Llama), self-attention is causal: each token can only attend to previous tokens (including itself). This is enforced by a causal mask that sets future positions to −∞ before softmax. In encoder models (BERT), self-attention is bidirectional: every token attends to every other token. The causal constraint is what makes autoregressive generation possible — the model can't "peek" at future tokens.

The Quadratic Cost

Self-attention computes an N×N attention matrix, making it O(N²) in both time and memory. For a 128K token context, that's ~16 billion entries per layer per head. This quadratic scaling is the fundamental limitation that drives research into sparse attention, linear attention, Flash Attention (which reduces memory but not compute), and SSMs (which avoid the N×N matrix entirely). Every approach to long-context modeling is ultimately about managing this quadratic cost.

Conceitos relacionados

← Todos os termos
← Scaling Laws Self-Supervised Aprendering →