Rafhael Oliveira · IA

GPT-1 para GPT-2: mesmo tamanho, metade da perplexidade. Quatro decisões explicam

O experimento controlado que a história nos deu, e o que ele ensina sobre onde o ganho vem.

1 min de leitura· apostila: 7 min

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

Você sabe como o GPT-1 virou o GPT-2? E por que isso acontece? O GPT-1 tem 117 milhões de parâmetros. O GPT-2 small tem 124 milhões. Seis por cento de diferença, praticamente nada. E no entanto, medido no mesmo parágrafo, a perplexidade cai de 46 para 21,7. Menos da metade. Não foi tamanho. Foram quatro decisões, e a maior delas não é de arquitetura. É sobre de onde veio o texto, e envolve três votos no Reddit.

Os três pontos

  1. Mudança 1, a maior: o corpus. De 1 GB de livros de ficção para 40 GB de páginas web filtradas por karma do Reddit.
  2. Mudança 2: o tokenizador. De BPE sobre caracteres, tudo em minúsculo, para BPE sobre bytes, caixa preservada, sem token desconhecido.
  3. Mudança 3: Pre-LN, a mudança de engenharia. Mudança 4: o que não mudou, mas mudou de propósito. Foi aqui que a engenharia de prompt nasceu.

Da apostila, o começo

Praticamente o mesmo tamanho, menos da metade da perplexidade. Quatro decisões explicam a diferença.

O openai-gpt (GPT-1, junho de 2018) tem 117 milhões de parâmetros. O gpt2 small (fevereiro de 2019) tem 124 milhões. Seis por cento de diferença — praticamente nada.

Isso é raro e valioso. Muitos avanços em modelos de linguagem vieram junto com aumento de escala, o que dificulta separar o efeito de cada mudança. Aqui a escala está essencialmente controlada, e podemos atribuir o ganho a decisões de projeto específicas. São quatro.

Continuar lendo a apostila 09 →Read in EnglishOs PDFs por e-mail →
O que a apostila cobre · 7 seções · 7 min
  1. O experimento controlado que a história nos deu
  2. Mudança 1 — o corpus (a maior de todas)
  3. Mudança 2 — o tokenizador
  4. Mudança 3 — Pre-LN (a mudança de engenharia)
  5. Mudança 4 — o que não mudou, mas mudou de propósito
  6. A tabela final
  7. 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 →