Pular para o conteúdo
fg
Voltar ao Journal
·

Transformers: A Arquitetura que Revolucionou a Inteligência Artificial

Uma análise do paper 'Attention Is All You Need' (Vaswani et al., 2017): o que é a arquitetura Transformer, como funciona na prática e por que ela se tornou a base de toda a IA generativa moderna.

Em junho de 2017, um grupo de oito pesquisadores do Google publicou um paper de título provocativo: “Attention Is All You Need” (Vaswani et al., 2017). Na época, a área de processamento de linguagem natural (PLN) era dominada por redes neurais recorrentes (RNNs) e LSTMs, que processavam texto sequencialmente — palavra por palavra. A proposta era radical: abandonar a recorrência por completo e depender exclusivamente de um mecanismo chamado atenção.

Sete anos depois, este paper é o mais citado da história da ciência da computação, com mais de 130 mil citações. Praticamente todos os grandes modelos de linguagem que você já ouviu falar — GPT, Claude, Gemini, Llama, BERT — são variações da arquitetura Transformer.

O Problema: Processamento Sequencial

Antes do Transformer, modelos de sequência como RNNs e LSTMs processavam tokens um após o outro:

Entrada: "O gato subiu no telhado"
Processamento: O → gato → subiu → no → telhado

Isso criava dois gargalos fundamentais:

  1. Paralelização impossível — para processar a palavra “telhado”, o modelo precisava ter processado todas as palavras anteriores. Isso tornava o treinamento lento, especialmente em GPUs que são projetadas para operações paralelas.

  2. Dependências de longo alcance — se uma palavra no início da frase fosse importante para entender uma palavra no final, o gradiente precisava “viajar” por toda a sequência, desvanecendo ao longo do caminho. Na prática, RNNs tinham dificuldade em capturar contextos além de 20-30 tokens.

A Solução: Atenção Escalonada por Produto Escalar

O Transformer resolve ambos os problemas com um mecanismo de Self-Attention (autoatenção) que permite que cada palavra “olhe” para todas as outras palavras da sequência simultaneamente.

Como funciona a autoatenção

Para cada palavra, o modelo calcula três vetores:

  • Query (Q): o que esta palavra está “procurando”?
  • Key (K): o que esta palavra “oferece” como contexto?
  • Value (V): o conteúdo real que será passado adiante

A atenção entre duas palavras é calculada como:

Attention(Q, K, V) = softmax(Q × K^T / √d_k) × V

O termo Q × K^T mede a similaridade entre cada par de palavras. A divisão por √d_k (raiz da dimensionalidade) evita que os valores cresçam demais, estabilizando os gradientes. O softmax normaliza para probabilidades. Por fim, multiplicamos pelos valores (V) para obter a representação ponderada.

O que isso significa intuitivamente: cada palavra decide quanto “prestar atenção” em cada outra palavra da frase. Na frase “O gato subiu no telhado porque ele estava com medo”, o modelo aprende que “ele” se refere a “gato”, não a “telhado”, mesmo que “telhado” esteja mais próximo.

Atenção Multi-Cabeça (Multi-Head Attention)

Em vez de calcular um único conjunto de atenção, o Transformer calcula múltiplas “cabeças” de atenção em paralelo:

MultiHead(Q, K, V) = Concat(head_1, ..., head_h) × W_O

Cada cabeça pode aprender um tipo diferente de relação:

  • Uma cabeça aprende relações sintáticas (sujeito-verbo)
  • Outra aprende relações semânticas (pronome-referente)
  • Outra aprende posições relativas (distância entre palavras)

A Arquitetura Completa

O Transformer original é dividido em duas partes principais:

Encoder

O encoder transforma a sequência de entrada em uma representação rica e contextualizada. Ele é composto por uma pilha de N = 6 blocos idênticos, cada um contendo:

  1. Multi-Head Self-Attention — cada palavra “olha” para todas as outras
  2. Feed-Forward Network (FFN) — uma rede neural simples de duas camadas que processa cada posição independentemente
  3. Conexões residuais — a saída de cada subcamada soma com sua entrada (LayerNorm(x + Sublayer(x)))
  4. Layer Normalization — estabiliza o treinamento normalizando as ativações

Decoder

O decoder gera a sequência de saída token por token. Ele tem uma estrutura similar ao encoder, mas com uma diferença crucial:

  1. Masked Multi-Head Self-Attention — cada token só pode “olhar” para tokens anteriores (não para o futuro). Isso é essencial para gerar texto: o modelo não pode “colar” vendo a resposta.

  2. Cross-Attention — o decoder também recebe a saída do encoder, permitindo que a geração seja guiada pelo contexto de entrada (essencial para tradução, sumarização, etc.)

Codificação Posicional (Positional Encoding)

Como o Transformer não processa a sequência em ordem (diferente das RNNs), ele precisa de uma forma de saber a posição de cada palavra. A solução foi adicionar sinais senoidais à representação de entrada:

PE(pos, 2i) = sin(pos / 10000^(2i/d_model))
PE(pos, 2i+1) = cos(pos / 10000^(2i/d_model))

Cada posição recebe um padrão único de senos e cossenos em diferentes frequências. O modelo aprende a usar esses sinais para entender a ordem das palavras.

Por que o Transformer Venceu?

1. Paralelização Total

Diferente de RNNs, o Transformer processa todos os tokens simultaneamente. Uma frase de 1000 palavras leva o mesmo tempo de processamento que uma de 10 palavras (em paralelo). Isso permitiu escalar o treinamento para quantidades de dados antes impossíveis.

2. Captura de Contexto Longo

A autoatenção cria conexões diretas entre qualquer par de palavras, não importa a distância. No Transformer, “gato” na posição 3 e “ele” na posição 12 têm uma conexão direta — o gradiente não precisa atravessar 9 passos de recorrência.

3. Escalabilidade

O Transformer provou escalar com mais dados, mais parâmetros e mais computação de forma consistente. Kaplan et al. (2020) e Hoffmann et al. (2022) mostraram que o erro do modelo segue uma lei de potência em relação a esses três fatores — o chamado scaling law.

A Base da IA Generativa

O Transformer original era um modelo encoder-decoder projetado para tradução. Mas variações da arquitetura deram origem a tudo que veio depois:

Modelos Encoder-only (BERT)

O BERT (Devlin et al., 2019) utiliza apenas o encoder do Transformer. Ele é pré-treinado com Masked Language Modeling: algumas palavras são ocultadas e o modelo precisa adivinhá-las pelo contexto. BERT é excelente para tarefas de compreensão: classificação de texto, resposta a perguntas, reconhecimento de entidades nomeadas.

Modelos Decoder-only (GPT)

O GPT (Radford et al., 2018) utiliza apenas o decoder do Transformer. Ele é pré-treinado com modelagem autorregressiva: prever a próxima palavra dado o contexto anterior. Esta é a família que dominou a IA generativa:

  • GPT-2 (2019): 1.5B parâmetros — mostrou que escala produz coerência
  • GPT-3 (2020): 175B parâmetros — inaugurou o aprendizado em contexto (in-context learning)
  • GPT-4 (2023), Claude, Gemini, Llama: centenas de bilhões a trilhões de parâmetros

O que torna os decoders tão poderosos para geração é que prever a próxima palavra é uma tarefa universal. Se o modelo é bom nisso, ele pode escrever código, traduzir idiomas, responder perguntas, criar poesia — desde que o prompt defina o contexto adequado.

Modelos Encoder-Decoder (T5, BART)

Mantêm a arquitetura completa e são úteis para tarefas que transformam uma sequência em outra, como sumarização e tradução.

Além do Texto: Visão, Áudio e Multimodalidade

A flexibilidade do Transformer permitiu que ele migrasse para outras modalidades:

  • ViT (Vision Transformer) — aplica a mesma arquitetura a imagens, tratando patches de pixels como tokens
  • Whisper — modelos de fala que tratam espectrogramas de áudio como sequências
  • DALL-E, Stable Diffusion — geram imagens usando Transformers no espaço latente
  • GPT-4V, Gemini, Claude — modelos multimodais que processam texto, imagem e áudio simultaneamente

Em todos os casos, o princípio é o mesmo: tokenizar a modalidade em uma sequência e aplicar autoatenção.

O Futuro Pós-Transformer

A arquitetura Transformer tem limitações conhecidas:

  1. Custo quadrático — a autoatenção tem complexidade O(n²) no comprimento da sequência. Processar um livro inteiro exige recursos proibitivos.

  2. Janela de contexto — apesar dos avanços (1M+ tokens no Gemini, 200K no Claude), ainda há limites práticos.

Novas arquiteturas como Mamba (State Space Models), RWKV e xLSTM buscam superar essas limitações com custo linear O(n). No entanto, até o momento, nenhuma delas destronou o Transformer em escala — e adaptações como Flash Attention e Attention Sinks continuam estendendo sua vida útil.

Referências

  • Vaswani, A., et al. (2017). Attention Is All You Need. arXiv:1706.03762.
  • Devlin, J., et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
  • Radford, A., et al. (2018). Improving Language Understanding by Generative Pre-Training. OpenAI.
  • Brown, T. B., et al. (2020). Language Models are Few-Shot Learners. arXiv:2005.14165.
  • Kaplan, J., et al. (2020). Scaling Laws for Neural Language Models. arXiv:2001.08361.
  • Hoffmann, J., et al. (2022). Training Compute-Optimal Large Language Models. arXiv:2203.15556.
  • Dosovitskiy, A., et al. (2021). An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale. arXiv:2010.11929.