Essencial
Multi-head attention
Múltiplas heads criam subespaços paralelos de roteamento aprendido e combinam seus resultados por uma projeção de saída.
Atualizada em
1
Conceito
Uma única operação de attention cria uma distribuição de pontuações para cada query e retorna uma mistura ponderada de values. Ela é expressiva, mas obriga um conjunto de projeções a servir a todas as relações úteis. Multi-head attention cria várias operações em paralelo. Cada head recebe seu próprio subespaço aprendido de query, key e value, permitindo vários padrões de roteamento antes da combinação.
Se a largura do modelo é e o número de heads é , um projeto comum define . Implementações costumam usar três projeções lineares grandes e depois mudar o shape, em vez de criar módulos separados:
é batch e é comprimento. Attention roda de forma independente no eixo das heads:
A máscara impõe causalidade ou padding. As saídas são transpostas e concatenadas de volta para , depois multiplicadas por . A projeção final permite misturar features entregues por heads distintas antes de somar o resultado ao residual stream.
Por que dividir a largura? Uma query talvez precise de informação sobre pontuação próxima, um substantivo correferente e o início de uma citação. Heads separadas formam espaços de similaridade diferentes; “relevante” não precisa significar a mesma coisa em todos. Uma pode privilegiar posição relativa, outra conteúdo. Camadas posteriores compõem essas rotas.
Isso é uma capacidade, não uma promessa de interpretabilidade limpa. Pesquisas mostraram que muitas heads de certos modelos e tarefas podem ser removidas com pouco dano imediato, enquanto um subconjunto menor é importante. Redundância pode ajudar otimização ou robustez, e um cálculo significativo pode estar distribuído por heads e camadas. Batizar uma head de “head de sintaxe” com poucos exemplos é uma hipótese a testar causalmente.
Se a largura total permanece fixa e , as grandes projeções de , , e saída têm aproximadamente a mesma contagem de parâmetros sob diferentes números de heads. Mais heads não significam automaticamente parâmetros proporcionalmente maiores; mudam a partição da largura. Ainda assim, alteram eficiência de kernels, armazenamento de matrizes e gargalos de representação.
Heads muito estreitas podem perder capacidade por rota. Heads muito largas reduzem o número de padrões independentes. Arquiteturas modernas às vezes usam quantidades diferentes de query heads e key/value heads para acelerar inference; MQA e GQA preservam várias queries enquanto compartilham keys e values no cache.
Na implementação, a ordem dos eixos é uma fonte frequente de bugs. A multiplicação deve parear cada query com keys dentro do mesmo item e head. Softmax roda sobre o eixo das posições de key. Depois da mistura dos values, o código restaura a ordem dos tokens antes da concatenação. Shapes não são burocracia em torno do algoritmo; eles expressam o algoritmo.
O modelo mental durável é um banco de canais aprendidos de comunicação. Cada head decide onde ler em seu próprio sistema de coordenadas, produz uma mensagem contextual e a entrega a um misturador comum de saída.
2
Como explicar para uma criança de cinco anos
Uma editora de cinema revisa a mesma cena em vários monitores sincronizados. Um acompanha diálogo, outro continuidade, outro iluminação e outro movimento. Cada monitor só pode voltar aos frames permitidos e produz suas próprias anotações. A editora-chefe concatena as notas e decide o que entra no corte. Vários monitores oferecem subespaços úteis, mas comprar 16 não garante 16 insights distintos.
3
Ensine de volta
Descreva as projeções e a mudança de shape em multi-head attention e explique por que heads são oportunidades, não papéis humanos garantidos.
Mínimo: 80 caracteres e 15 palavras. Seu texto fica somente neste navegador.
Salvo somente neste dispositivo.
Ver uma resposta-modelo
A camada projeta o residual stream em queries, keys e values, divide a dimensão de features em h heads de largura d_head, executa scaled attention por head, concatena as saídas e aplica uma projeção de saída. Projeções separadas deixam heads aprenderem roteamentos diferentes, mas a otimização pode torná-las redundantes ou distribuídas; uma head não corresponde automaticamente a um conceito linguístico limpo.
4
Teste seu entendimento
Conclua o teach-back e acerte o quiz para finalizar a aula.
Fontes
- Ashish Vaswani et al. (2017). Attention Is All You Need.
- Paul Michel, Omer Levy e Graham Neubig (2019). Are Sixteen Heads Really Better than One?.