Gravit

Como um Transformer aprende a prever

Anatomia de uma previsão

Prólogo

Tudo começa com texto

Milhões de frases dão ao modelo uma tarefa simples: adivinhar o que vem a seguir.

01 / 19

A animação não carregou. O texto integral das 19 cenas está logo abaixo; para tentar de novo, recarregue a página.

00:00 / 04:44

Explicador animado · 19 cenas · 4 min 44 s

Um Transformer não aprende com regras escritas por alguém. Aprende com uma única tarefa, repetida sobre biliões de tokens de texto: prever o token seguinte. Esta animação mostra esse ciclo — do texto aos tokens, da atenção à previsão, do erro ao ajuste dos pesos — e o que nasce dele: uma representação interna do mundo, da próxima palavra à próxima jogada.

Em resumo

  • Um Transformer é treinado numa única tarefa: prever o próximo token de um texto.
  • O texto é partido em tokens; cada token torna-se um vetor (embedding), e o mecanismo de atenção decide que partes do contexto importam para cada token.
  • No treino, a previsão é comparada com o token verdadeiro; o erro (loss) é propagado para trás (backpropagation) e cada peso é ajustado um pouco.
  • Repetido sobre biliões de tokens, este ciclo faz emergir representações internas de conceitos e relações — até do estado de um tabuleiro de xadrez.
  • Na utilização, o modelo já não vê a resposta: escreve o texto um token de cada vez, a partir do contexto.

As 19 cenas, uma a uma

Cada cena mostra o momento em que começa na animação; carregue em «Ver cena» para saltar para ela. Os números que a animação mostra (probabilidades, erro, pesos) são ilustrativos, não medições de um modelo real.

  1. Prólogo ·

    Tudo começa com texto

    Milhões de frases dão ao modelo uma tarefa simples: adivinhar o que vem a seguir.

    Um modelo de linguagem é treinado para uma única tarefa: dado um pedaço de texto, prever o que vem a seguir. Não há regras escritas à mão nem um objetivo escondido — tudo o que o modelo vier a saber fazer nasce desta tarefa, repetida em enorme escala.

    Ver cena
  2. 01 · Dados ·

    Uma frase de cada vez

    O modelo não recebe regras. Recebe exemplos de linguagem tal como ela é usada.

    O material de treino é texto real: livros, artigos, código, conversas. Cada frase é ao mesmo tempo pergunta e resposta — as primeiras palavras são o contexto e a palavra seguinte é o que o modelo tem de acertar.

    Ver cena
  3. 02 · Tokenização ·

    Texto torna-se peças

    Palavras e fragmentos são convertidos em tokens — pequenas unidades numeradas.

    Antes de qualquer cálculo, o texto é partido em tokens — palavras inteiras, pedaços de palavras ou sinais de pontuação —, cada um com um número num vocabulário fixo, tipicamente com dezenas de milhares de entradas. Palavras frequentes costumam ser um só token; as raras dividem-se em vários. Os números da animação são ilustrativos.

    Ver cena
  4. 03 · Embeddings ·

    Cada token ganha posição

    Um número transforma-se num ponto num espaço com milhares de dimensões.

    Cada token é convertido num vetor — uma lista de centenas ou milhares de números. Com o treino, tokens usados em contextos parecidos ficam com vetores próximos. A posição de cada token na frase também é codificada, para que a ordem das palavras conte.

    Ver cena
  5. 04 · Atenção ·

    Cada palavra olha para as outras

    A atenção mede que partes do contexto são importantes para compreender cada token.

    A atenção é o coração do Transformer: permite que cada token recolha informação dos outros tokens do contexto, com pesos aprendidos. Em «O gato dorme ao sol», é assim que «sol» vai buscar informação a «dorme» e a «gato». Num modelo que gera texto, cada token só olha para os que vieram antes dele.

    Ver cena
  6. 05 · Camadas ·

    A ideia é refinada

    Camada após camada, relações simples tornam-se padrões cada vez mais abstratos.

    Um Transformer empilha dezenas de blocos iguais — atenção seguida de uma pequena rede — e cada bloco reescreve as representações do anterior. As primeiras camadas captam relações próximas, como a gramática; as últimas, padrões mais abstratos.

    Ver cena
  7. 06 · Previsão ·

    Qual será o próximo token?

    No fim, o modelo atribui uma probabilidade a cada continuação possível.

    No topo da pilha, o modelo dá uma pontuação a cada token do vocabulário, e uma função chamada softmax transforma essas pontuações em probabilidades que somam 100%. «sol» fica com 62%, mas «lado», «fim» e «som» também são continuações possíveis.

    Ver cena
  8. 07 · Realidade ·

    A resposta certa já era conhecida

    Durante o treino, comparamos a previsão com o token que realmente vinha a seguir.

    No treino, o texto já existe, por isso o token seguinte verdadeiro é conhecido. Não é preciso ninguém etiquetar os dados: o próprio texto dá a resposta. Chama-se a isto aprendizagem auto-supervisionada.

    Ver cena
  9. 08 · Loss ·

    Medir o erro

    Um número resume a distância entre a previsão do modelo e a continuação correta.

    A distância entre a distribuição prevista e a resposta certa resume-se num número, a loss — tipicamente a entropia cruzada. Quanto menos probabilidade o modelo tiver dado ao token correto, maior é o erro.

    Ver cena
  10. 09 · Backpropagation ·

    O erro viaja para trás

    O sistema calcula quanto cada ligação contribuiu para aquele erro.

    A retropropagação (backpropagation) percorre a rede do fim para o início e calcula, para cada peso, o gradiente: em que direção, e com que intensidade, mexer nesse peso reduziria o erro.

    Ver cena
  11. 10 · Pesos ·

    Milhões de ajustes minúsculos

    Cada peso muda um pouco, tornando a próxima previsão ligeiramente melhor.

    Um otimizador — uma variante do gradiente descendente, como o Adam — muda cada peso numa quantidade minúscula, no sentido que reduz o erro. Um modelo grande tem milhões, muitas vezes milhares de milhões, de pesos, e todos são ajustados a cada passo.

    Ver cena
  12. 11 · Escala ·

    Repetir. E repetir.

    Este ciclo acontece com enormes quantidades de texto, muitas vezes e em paralelo.

    O ciclo prever → medir → ajustar repete-se sobre biliões de tokens, em milhares de processadores a trabalhar em paralelo. As chamadas leis de escala mostram que o erro desce de forma previsível quando crescem os dados, o tamanho do modelo e o cálculo.

    Ver cena
  13. 12 · Aprendizagem ·

    O erro começa a descer

    Sem memorizar uma lista de regras, o modelo aprende regularidades profundas.

    A curva da loss cai depressa no início e depois cada vez mais devagar. O modelo não guarda uma lista de frases: comprime regularidades — gramática, factos, estilos — que lhe permitem prever bem textos que nunca viu.

    Ver cena
  14. 13 · Interior ·

    Nasce um mapa invisível

    Conceitos, relações, estilos e estruturas organizam-se em representações internas.

    Dentro da rede, conceitos e relações organizam-se em representações internas: direções e regiões do espaço dos vetores que correspondem a ideias como «animal», «movimento» ou «luz». Ninguém as programou; emergem porque ajudam a prever.

    Ver cena
  15. 14 · Modelo do mundo ·

    Prever exige compreender estrutura

    Para continuar bem uma frase, o modelo tem de capturar algo sobre como o mundo funciona.

    Para continuar bem frases sobre causas, tempos e distâncias, é útil ao modelo representar essas estruturas. Até onde vai essa «compreensão» é tema de debate, mas há evidência experimental de que modelos treinados apenas a prever sequências formam representações internas do mundo.

    Ver cena
  16. 15 · Novo contexto ·

    Agora, sem a resposta

    Na utilização real, o modelo vê apenas o contexto e calcula o token seguinte.

    Na utilização — a inferência — já não há resposta certa para comparar nem pesos a ajustar. O modelo recebe um contexto novo, calcula a distribuição do token seguinte, escolhe um, acrescenta-o ao texto e repete: é assim que uma resposta é escrita, token a token.

    Ver cena
  17. 16 · Xadrez ·

    Uma posição é mais do que peças

    O modelo representa ameaças, espaço, segurança do rei e planos possíveis ao mesmo tempo.

    O mesmo princípio vale fora da linguagem. Modelos treinados apenas a prever a jogada seguinte em partidas de Othello ou de xadrez desenvolvem representações internas do tabuleiro — onde está cada peça e, no xadrez, até uma estimativa da força dos jogadores. A cena ilustra a ideia: ameaças, centro, rei e espaço vistos em conjunto.

    Ver cena
  18. 17 · Emergência ·

    A jogada emerge do estado

    «Cavalo para e5» não vem de uma regra isolada, mas de uma representação rica da posição.

    «Cavalo para e5» não sai de uma regra do tipo «se acontecer X, joga Y». Sai da representação da posição inteira, construída camada a camada — o mesmo mecanismo que escolhe a próxima palavra de uma frase.

    Ver cena
  19. Epílogo ·

    Aprender é ajustar previsões

    Da próxima palavra à próxima jogada: o conhecimento emerge de incontáveis correções pequenas.

    Contexto, representação, previsão. Tudo o que um Transformer sabe vem de incontáveis pequenas correções a este ciclo — da próxima palavra à próxima jogada.

    Ver cena

Perguntas frequentes

O que é um Transformer?

É uma arquitetura de rede neuronal apresentada em 2017 no artigo «Attention Is All You Need» (Vaswani et al.). Processa sequências com mecanismos de atenção em vez de recorrência, o que permite treinar em paralelo com enormes quantidades de dados. É a base dos grandes modelos de linguagem atuais.

O que é um token?

É a unidade em que o texto é partido antes de entrar no modelo: uma palavra, um pedaço de palavra ou um sinal de pontuação. Cada token corresponde a um número num vocabulário fixo. Palavras frequentes costumam ser um só token; palavras raras dividem-se em vários.

O que faz o mecanismo de atenção?

Para cada token, calcula pesos sobre os outros tokens do contexto e combina a informação deles de acordo com esses pesos. É assim que uma palavra como «ele» vai buscar o nome a que se refere. Num modelo que gera texto, cada token só olha para os tokens anteriores.

O que são a loss e a backpropagation?

A loss é o número que mede o erro de uma previsão — normalmente a entropia cruzada, que aumenta quando o modelo dá pouca probabilidade ao token certo. A backpropagation calcula quanto cada peso contribuiu para esse erro, e o otimizador ajusta os pesos no sentido que o reduz.

Um modelo que só prevê a palavra seguinte compreende alguma coisa?

Prever bem obriga a captar estrutura: gramática, factos, relações de causa e efeito. Há evidência de que estes modelos formam representações internas do mundo — por exemplo, do estado de um tabuleiro de jogo. Mas isso não é compreensão humana: os modelos também erram com confiança e inventam factos plausíveis.

Qual é a diferença entre treino e utilização (inferência)?

No treino, o modelo vê a resposta certa, mede o erro e ajusta os pesos. Na utilização, os pesos ficam fixos: o modelo apenas calcula o token seguinte a partir do contexto, acrescenta-o e repete.

Para saber mais

Os artigos que estão na origem de cada ideia da animação:

  1. Vaswani, A. et al. (2017). Attention Is All You Need. NeurIPS 2017.
  2. Sennrich, R., Haddow, B. & Birch, A. (2016). Neural Machine Translation of Rare Words with Subword Units. ACL 2016.
  3. Rumelhart, D. E., Hinton, G. E. & Williams, R. J. (1986). Learning representations by back-propagating errors. Nature 323, 533–536.
  4. Kingma, D. P. & Ba, J. (2015). Adam: A Method for Stochastic Optimization. ICLR 2015.
  5. Kaplan, J. et al. (2020). Scaling Laws for Neural Language Models. arXiv.
  6. Li, K. et al. (2023). Emergent World Representations: Exploring a Sequence Model Trained on a Synthetic Task. ICLR 2023.
  7. Karvonen, A. (2024). Emergent World Models and Latent Variable Estimation in Chess-Playing Language Models. arXiv.