Atenção é uma técnica em aprendizado de máquina e aprendizado profundo que permite a uma rede neural focar dinamicamente nas partes mais relevantes de sua entrada ao gerar cada saída. Em vez de processar uma sequência em uma ordem fixa, a atenção calcula uma soma ponderada sobre todas as posições de entrada, com pesos determinados por pontuações de relevância aprendidas. Esse mecanismo foi introduzido no contexto de modelos sequência a sequência e tornou-se o bloco de construção fundamental da arquitetura Transformer (architecture), que alimenta a maioria dos modelos de linguagem de grande porte contemporâneos e sistemas de IA generativa.
Em uma operação típica de atenção, cada elemento de entrada é transformado em três vetores: uma consulta, uma chave e um valor. A consulta da posição atual é comparada com as chaves de todas as posições para produzir pontuações de atenção, frequentemente por meio de um produto escalar. Essas pontuações são normalizadas (geralmente com uma função softmax) para formar pesos, que são então usados para calcular uma soma ponderada dos vetores de valor. Isso permite que o modelo recupere informações de qualquer lugar na sequência, independentemente da distância, o que aborda uma limitação chave de arquiteturas recorrentes anteriores que lutavam com dependências de longo alcance.
Origens e Desenvolvimento
O conceito de atenção emergiu de pesquisas em tradução automática neural em meados da década de 2010. Um artigo seminal de 2014 de Dzmitry Bahdanau e colegas introduziu um mecanismo de atenção que permitia a um modelo codificador-decodificador alinhar palavras de origem com palavras de destino durante a tradução. Isso melhorou o desempenho em frases longas em comparação com vetores de contexto de comprimento fixo. Em 2015, Yoshua Bengio e outros exploraram ainda mais variantes de atenção, e em 2016, pesquisadores do Google Brain desenvolveram a arquitetura Transformer (architecture), que dependia exclusivamente de atenção e dispensava completamente a recorrência. O transformer foi introduzido no artigo de 2017 "Attention Is All You Need" por Ashish Kumar, Jakob Uszkoreit, Lukasz Kaiser, Niki Parmar e outros, e rapidamente se tornou o padrão para modelagem de sequências.
Atenção Multi-Cabeça e Variantes
O transformer usa atenção multi-cabeça, onde múltiplos mecanismos de atenção operam em paralelo, cada um aprendendo relações diferentes. As saídas são concatenadas e projetadas linearmente. Isso permite que o modelo capture padrões diversos, como dependências sintáticas e semânticas simultaneamente. Outra variante importante é a atenção cruzada, usada em modelos codificador-decodificador onde as consultas vêm do decodificador e as chaves/valores do codificador, permitindo que o decodificador atenda à sequência de entrada. A auto-atenção, onde consultas, chaves e valores vêm todos da mesma sequência, é usada tanto no codificador quanto no decodificador do transformer. Codificação posicional é adicionada às incorporações de entrada para injetar informações sobre a ordem dos tokens, já que a atenção em si é invariante a permutações.
Papel em Modelos de Linguagem de Grande Porte
A atenção é o mecanismo central em praticamente todos os modelos de linguagem de grande porte modernos, incluindo aqueles desenvolvidos por OpenAI, Anthropic e Google DeepMind. Esses modelos, como GPT e Claude, usam camadas de transformer empilhadas com auto-atenção para processar e gerar texto. A capacidade de atender a todos os tokens em uma janela de contexto permite geração coerente de texto longo, aprendizado em contexto e raciocínio complexo. No entanto, o custo computacional quadrático da atenção em relação ao comprimento da sequência motivou pesquisas em variantes eficientes, como atenção esparsa e atenção linear, para lidar com contextos mais longos. A partir do início da década de 2020, a maioria dos modelos de produção usa atenção completa com janelas de contexto variando de alguns milhares a centenas de milhares de tokens.
Aplicações Além da Linguagem
A atenção foi aplicada além do processamento de linguagem natural. Em visão computacional, transformers de visão (ViT) tratam patches de imagem como tokens e usam auto-atenção para classificação de imagens e detecção de objetos. Em reconhecimento de fala, mecanismos de atenção alinham quadros de áudio com saídas de texto. Em aprendizado por reforço, a atenção ajuda agentes a focar em partes relevantes de observações. O mecanismo também é usado em sistemas de recomendação e descoberta de medicamentos. Sua versatilidade o tornou uma ferramenta universal em pesquisa de inteligência artificial, e é um componente chave de muitos sistemas de última geração em diversos domínios.
Considerações Computacionais e Hardware
Operações de atenção envolvem grandes multiplicações de matrizes, que são bem adequadas ao processamento paralelo em GPUs e aceleradores especializados. Empresas como NVIDIA e AMD projetam hardware que otimiza essas operações. Provedores de nuvem como Amazon Web Services, Google Cloud e Azure oferecem instâncias com memória de alta largura de banda para lidar com cálculos de atenção. A pegada de memória da atenção cresce quadraticamente com o comprimento da sequência, o que levou a técnicas como checkpointing de gradiente e atenção flash para reduzir o uso de memória. À medida que os modelos escalam, implementações eficientes de atenção permanecem uma área ativa de pesquisa e engenharia.
Direções Futuras
A pesquisa continua a melhorar os mecanismos de atenção. Esforços incluem reduzir a complexidade computacional, incorporar memória externa e tornar a atenção mais interpretável. Alguns trabalhos exploram alternativas à atenção completa, como modelos de espaço de estado, mas a atenção permanece o paradigma dominante. A partir de 2025, modelos baseados em transformer com atenção são a base da maioria dos produtos comerciais de IA, e espera-se que o mecanismo permaneça central para o desenvolvimento de IA no futuro previsível.