Rafhael Oliveira · IA

Doze cabeças em vez de uma, e a única linha de código que separa o GPT do RoBERTa

Multi-head attention e a máscara causal, com o código completo.

1 min de leitura· apostila: 8 min

Caiu aqui pelo LinkedIn? Este é o capítulo 04 do curso GPT-1 e GPT-2, desmontados. Dá para ler solto; se quiser o começo, é o capítulo 00.

A atenção é um orçamento fixo: cada linha soma 1. Se 70% vai para uma palavra, sobram 30% para todo o resto. Só que uma palavra participa de várias relações ao mesmo tempo. 'Mordeu', em 'o cachorro grande mordeu o carteiro ontem', precisa olhar para quem mordeu, para quem foi mordido e para quando. Uma cabeça só não dá conta. A resposta do Transformer foi dividir, não multiplicar: doze cabeças, cada uma com um orçamento próprio. E logo depois dessa decisão vem uma linha de código que é a única diferença estrutural entre o GPT-2 e o RoBERTa.

Os três pontos

  1. Multi-head não custa mais: as 768 dimensões são divididas em 12 fatias de 64. Cada cabeça vê uma fatia.
  2. A máscara causal coloca menos-infinito em tudo o que está no futuro. Depois do softmax, isso vira zero. O modelo não pode espiar.
  3. Tire a máscara e você tem um encoder. Deixe, e você tem um decoder. Todo o resto é igual.

Da apostila, o começo

Por que doze cabeças em vez de uma — e a única linha de código que separa o GPT do RoBERTa.

A atenção da apostila 03 funciona, mas tem uma limitação séria: cada linha do mapa de atenção soma 1. Isso significa que a atenção é um orçamento fixo. Se um token gasta 70% olhando para seu antecedente sintático, sobram 30% para todo o resto.

Continuar lendo a apostila 04 →Read in EnglishOs PDFs por e-mail →
O que a apostila cobre · 5 seções · 8 min
  1. O problema de uma cabeça só
  2. Como funciona: dividir, não multiplicar
  3. A máscara causal — a linha que define tudo
  4. O código completo
  5. No laboratório
Todos os capítulos do curso · GPT-1 e GPT-2, desmontados
  1. 00 · Os sete fósseis: por que GPT-1, GPT-2 e RoBERTa são um corte histórico, não uma lista
  2. Glossário · Glossário do curso: o que token, camada e modelo querem dizer em IA, e no resto da TI
  3. 01 · Por que o GPT-2 não enxerga letras nem palavras, e o que isso custa em português
  4. 02 · Embeddings: de um inteiro sem sentido a um vetor que sabe que rei e rainha são parentes
  5. 03 · Atenção: a única operação que substituiu vinte anos de redes recorrentes
  6. 04 · Doze cabeças em vez de uma, e a única linha de código que separa o GPT do RoBERTa
  7. 05 · Por que o GPT-2 precisa de 48 andares para responder, e o que acontece dentro de cada um
  8. 06 · O que a escala realmente compra: de 124 milhões a 1,5 bilhão, medido
  9. 07 · Temperature, top-k e top-p: a decisão que muda mais o texto do que trocar de modelo
  10. 08 · Perplexidade: o único número que diz o que o modelo aprendeu, sem anedotas
  11. 09 · GPT-1 para GPT-2: mesmo tamanho, metade da perplexidade. Quatro decisões explicam
  12. 10 · RoBERTa: quando o avanço é treinar melhor o que já existia
  13. 11 · Encoder vs decoder: uma linha de código e todas as consequências que descem dela
  14. 12 · O detector: como um modelo de linguagem vira classificador, e por que esse não deve decidir nada
  15. 13 · Lendo o código original do GPT-2: 174 linhas contra tudo o que você aprendeu
  16. 14 · Servindo modelos: da chamada de função ao servidor HTTP, e o que a produção faz a mais
  17. 15 · O guia do laboratório: cada comando, cada script, e tudo o que foi medido
  18. 16 · O teto deste caminho: o argumento de LeCun, lido de dentro do GPT-2

Depois disto: o experimento Antevisão

Rafhael Oliveira
Rafhael Oliveira

Escreve o curso do GPT-2 e conduz o experimento Antevisão, medindo cada rodada antes de publicar o número. Os posts no LinkedIn começam aqui e terminam nas apostilas.

Seguir no LinkedIn →