Mecanismos de atenção: como a IA decide o que importa

Atenção revolucionou a IA. Mas o que é, afinal? Eis como funcionam os mecanismos de atenção e por que mudaram tudo.

Mecanismos de atenção: como a IA decide o que importa

O Desenvolvimento Que Ninguém Viu Chegar

Em 2017, um artigo intitulado "Attention Is All You Need" mudou significativamente a IA. Não através de uma matemática nova e exótica. Através de uma ideia simples: deixar o modelo decidir o que é importante.

Mecanismos de atenção. Parecem abstratos. Na verdade, são simples. E permitiram o ChatGPT, os geradores de imagem, toda a IA moderna que usa.

Compreender a atenção ajuda a compreender a IA moderna. Vamos decompor o conceito.

O Problema Que a Atenção Resolve

A IA antiga (redes recorrentes) processava os dados sequencialmente. Palavra a palavra. Mantendo um estado oculto. A informação fluía de forma linear.

Problema: sequências longas degradavam-se. A informação do início desvanecia-se no fim. O modelo "esquecia" o contexto inicial. Limitava o que a IA conseguia fazer.

A atenção resolveu isto. Conceito simples: olhar para todos os dados em simultâneo. Determinar quais as partes que importam para quais resultados. Ponderá-las em conformidade.

Sem processamento sequencial. Sem degradação da informação. Contexto completo sempre disponível. Revolucionário.

A atenção remove o estrangulamento recorrente: o token atual pode inspecionar a frase inteira em vez de herdar um resumo desvanecido.

O Que a Atenção Faz Realmente

Atenção é uma média ponderada. É só isto.

Tem dados de entrada. Quer processar um deles. Mas a forma correta de o processar depende de todos os outros dados. A atenção descobre quanto é que cada dado importa para processar o atual.

Exemplo: Tradução

Traduzir "The cat sat on the mat" para francês. Ao traduzir "sat", quais são as palavras inglesas que mais importam?

"The" importa um pouco (género). "Cat" importa muito (sujeito). "Sat" importa mais (a própria palavra). "On" importa algum (contexto). As restantes, menos.

A atenção calcula estes pesos. Depois combina os dados de acordo com esses pesos. A média ponderada dá a melhor representação para traduzir "sat".

Faça isto para cada palavra. Em cada camada. Isto é atenção.

Para uma palavra-alvo, a atenção é uma mistura de valores ponderados: "cat" e "sat" dominam, enquanto as palavras circundantes ainda contribuem com contexto.

Como a Atenção Funciona Realmente

Três passos: Query, Key, Value. Parece complicado. Não é.

Passo 1: Criar Queries, Keys e Values

Para cada dado de entrada, crie três vetores:

- Query: "O que estou à procura?"

- Key: "O que ofereço?"

- Value: "Aqui está a minha informação real"

Estes são apenas transformações lineares dos dados de entrada. Multiplicações de matrizes. Nada de especial.

Passo 2: Calcular os Pesos de Atenção

Para cada query, compare-a com todas as keys. O produto escalar mede a semelhança. Query e key semelhantes = pontuação alta. Diferentes = pontuação baixa.

Aplique softmax. Transforma as pontuações em probabilidades. Agora tem os pesos de atenção. Somam 1.

Passo 3: Média Ponderada dos Values

Use os pesos de atenção para calcular a média dos values. Peso alto = mais influência. Peso baixo = menos influência.

Resultado: uma nova representação para cada dado de entrada, informada por todos os outros dados, ponderada pela relevância.

Isto é atenção. A semelhança entre consulta e chave determina os pesos. Os pesos combinam valores. Pronto.

Autoatenção vs. Atenção Cruzada

Dois tipos de atenção servem propósitos diferentes:

Autoatenção:

As entradas atendem a si mesmas. Cada palavra observa todas as outras palavras na mesma frase. Determina quais palavras são importantes para compreender cada palavra.

Exemplo: "O animal não atravessou a rua porque estava demasiado cansado." A que se refere "ele"? A autoatenção descobre isto ao atender fortemente a "animal".

Atenção Cruzada:

Uma sequência atende a outra. Tradução: palavras francesas atendem a palavras inglesas. Legendagem de imagens: palavras da legenda atendem a regiões da imagem.

Sequências diferentes. Consultas de uma, chaves e valores de outra. Liga diferentes modalidades ou idiomas.

Atenção Multi-Cabeça (Perspetivas Múltiplas)

Uma única cabeça de atenção = uma perspetiva. Multi-cabeça = múltiplas perspetivas em simultâneo.

Em vez de um conjunto de consultas/chaves/valores, criam-se múltiplos conjuntos. Cada cabeça aprende padrões diferentes.

A cabeça 1 pode aprender relações sintáticas (sujeito-verbo). A cabeça 2 pode aprender relações semânticas (significados das palavras). A cabeça 3 pode aprender padrões posicionais.

Combinam-se todas as cabeças. Agora tem múltiplas perspetivas sobre as mesmas entradas. Representação mais rica. Melhor compreensão.

Os transformers usam normalmente 8 a 16 cabeças. Cada cabeça tem 1/8 ou 1/16 do tamanho da dimensão total do modelo. O custo computacional mantém-se gerível.

O Custo Computacional

A atenção é poderosa. Também é cara.

Complexidade: O(n²)

Cada entrada atende a todas as outras entradas. Para n entradas, são n² comparações. Complexidade quadrática.

Duplique o comprimento da sequência e quadruplicará o cálculo. É por isto que as janelas de contexto são limitadas. Não é apenas memória. O cálculo explode.

Exemplo:

1.000 tokens: 1 milhão de operações

10.000 tokens: 100 milhões de operações

100.000 tokens: 10 mil milhões de operações

A atenção é o gargalo para contextos longos. Várias técnicas (atenção dispersa, atenção linear) tentam resolver isto. Soluções parciais, na melhor das hipóteses.

Porque é que a Atenção Mudou Tudo

Antes da atenção: processamento sequencial, contexto limitado, degradação da informação.

Depois da atenção: processamento paralelo, contexto completo, sem degradação.

Isto permitiu:

  • Modelos de Linguagem Melhorados: Conseguem compreender documentos longos. Sem limite de contexto do processamento sequencial. BERT, GPT, todos usam atenção.
  • Tradução Melhorada: Conseguem atender às palavras relevantes da origem. Não importa quão afastadas estejam. A qualidade melhorou substancialmente.
  • Transformers Visuais: A atenção funciona em segmentos de imagem. Competitivos com CNNs em muitas tarefas. Arquitetura unificada para visão e linguagem.
  • Modelos Multimodais: O texto atende a imagens. As imagens atendem a texto. Compreensão entre modalidades. CLIP, DALL-E, todos usam atenção.

A atenção é a base da IA moderna. Tudo se constrói sobre ela.

O avanço foi a reutilização arquitetónica: uma vez que o contexto completo era paralelo, os sistemas de linguagem, tradução, visão e multimodais puderam partilhar a mesma pista.

Atenção na Arquitetura da Dweve

A atenção tradicional é de vírgula flutuante. Cara. Mas o conceito aplica-se igualmente a sistemas baseados em restrições.

PAP (Popcount de Acordo Permutado):

A nossa versão de atenção para padrões binários. Em vez de produtos escalares, usamos XNOR e popcount. Em vez de softmax, usamos limites estatísticos.

Mesmo conceito: determinar quais os padrões que importam. Implementação diferente: operações binárias em vez de vírgula flutuante.

Resultado: seleção semelhante à atenção a uma fração do custo computacional. Quais os especialistas relevantes? O PAP determina isso. Com eficiência.

O Que Precisa de Lembrar

  • 1. A atenção é uma média ponderada. Determinar a relevância, ponderar as entradas em conformidade, combinar. Conceito simples, resultados poderosos.
  • 2. Mecanismo Query-Key-Value. A Query pergunta, as Keys respondem, os Values fornecem informação. A semelhança determina os pesos.
  • 3. Self-attention vs cross-attention. Self: as entradas atendem a si próprias. Cross: uma sequência atende a outra.
  • 4. Multi-head capta múltiplas perspetivas. Diferentes cabeças aprendem padrões diferentes. Combinadas, proporcionam uma compreensão rica.
  • 5. O custo computacional é O(n²). A complexidade quadrática limita o comprimento do contexto. O gargalo para sequências longas.
  • 6. A atenção tornou possível a IA moderna. Transformers, GPT, BERT, vision transformers. Tudo construído sobre atenção.
  • 7. Existem alternativas binárias. O PAP proporciona uma seleção semelhante à atenção com operações binárias. Mesmo conceito, implementação diferente.
O PAP mantém a ideia de seleção por relevância da atenção, mas troca produtos escalares e softmax por concordância binária e limites estatísticos.

A Conclusão Final

A atenção é a inovação mais importante da IA na última década. Ideia simples: deixar o modelo decidir o que importa. Impacto profundo: tornou possível todos os sistemas de IA modernos que utiliza.

Não é magia. É uma média ponderada baseada em semelhança aprendida. A correspondência query-key determina os pesos. Os pesos combinam valores. Repita para cada entrada, em cada camada.

O custo computacional é real. O(n²) limita o comprimento das sequências. Mas dentro desses limites, a atenção proporciona uma capacidade sem precedentes de compreender o contexto.

Compreender a atenção significa compreender a arquitetura da IA moderna. Tudo o resto se constrói sobre esta fundação. Domine isto, e o resto fará sentido.

Quer uma seleção eficiente semelhante à atenção? Explore o mecanismo PAP da Dweve. Correspondência de padrões binários com limites estatísticos. Seleção de especialistas a uma fração do custo da atenção tradicional. O tipo de determinação de relevância que funciona à escala.