Self-Attention
Definição em uma frase: mecanismo em que cada token calcula, para todos os demais, o quanto é relevante, e mistura os valores com esses pesos.
Fórmula
Cada token produz três vetores por matrizes treináveis:
- Q (query) — o que estou procurando
- K (key) — o que eu ofereço
- V (value) — o que entrego se houver interesse
Passo a passo:
- → matriz de compatibilidades.
- Divisão por → scaling. Sem ela, com grande, o softmax satura e o gradiente morre.
softmax→ linha vira distribuição (soma 1). São os attention weights.- → cada posição vira média ponderada dos valores.
O passo 4 é o coração: cada token renova o próprio significado usando o contexto inteiro, em uma operação.
Variações
| Variação | Efeito |
|---|---|
| Máscara causal | no triângulo superior — o token só vê . Obrigatória em decoder-only. |
| Multi-head | cabeças em paralelo, cada uma livre para capturar outra relação |
Confusões e aparências
- ❌ Não é “importância” interpretável. Attention weights de uma camada não são explicações.
- ❌ Não é um mecanismo de roteamento. As cabeças não são selecionadas; a especialização é emergente e frágil.
Autoavaliação
- P: O que acontece se remover ? R: logits de atenção grandes → softmax satura → gradientes quase nulos → o modelo não treina.
- P: Sem máscara causal, o que a loss faz num decoder-only? R: cai para quase zero: o modelo enxerga o token alvo ao prever, e nunca precisa aprender nada.
- P: Por que atenção é e isso importa? R: a matriz de scores é ; com 32k de contexto isso domina custo e memória do prefill.
Onde vi isso
- Visto em: Arquitetura Transformers e Attention
- Aprofundamento: Pesquisa - Transformer e self-attention · Lab 03 - Inspecionando a atenção
Ver também
Atualizado em 2026-09-30