Linear Attention
Descubra como a atenção linear otimiza modelos de deep learning ao reduzir a complexidade do Transformer para O(N). Saiba como ela aumenta a eficiência de aplicações de IA em escala.
A atenção linear é uma técnica fundamental de otimização, concebida para melhorar drasticamente a eficiência computacional dos modelos modernos de aprendizagem profunda (DL). Nas arquiteturas Transformer tradicionais, os mecanismos de atenção padrão processam sequências comparando cada token com todos os outros tokens. Isso cria um gargalo grave de computação e memória, conhecido como complexidade temporal quadrática, ou O(N ao quadrado), em que N é o comprimento da sequência. A atenção linear altera essa operação matemática subjacente para que escale linearmente, ou O(N). Esse avanço permite que modelos de inteligência artificial (AI) processem conjuntos de dados enormes, como livros inteiros ou imagens de gigapíxeis, sem esgotar a memória do hardware.
Como funciona a atenção linear#
Na atenção padrão, as redes neurais processam três vetores principais: consultas (Q), chaves (K) e valores (V). A fórmula clássica calcula a similaridade entre todas as consultas e chaves usando uma função softmax, gerando uma matriz enorme de N x N antes de multiplicá-la pelos valores.
A atenção linear evita gerar essa enorme matriz intermediária. Em vez disso, baseia-se na propriedade associativa da multiplicação de matrizes. Ao remover ou aproximar a camada softmax usando funções de kernel especializadas, o modelo agrupa as multiplicações de outra forma. Primeiro, multiplica as chaves pelos valores para criar uma matriz de contexto de tamanho fixo e, em seguida, multiplica as consultas por essa nova matriz comprimida. Essa simples reordenação reduz significativamente a complexidade computacional, liberando hardware como uma unidade de processamento gráfico (GPU) para lidar nativamente com entradas muito mais longas.
Avanços recentes e DeltaNet#
A comunidade de pesquisa em AI, liderada por instituições como a Universidade Stanford e gigantes da tecnologia como a Google DeepMind, inova continuamente em formulações lineares para aumentar a precisão. Em 2024 e 2025, pesquisadores apresentaram a DeltaNet, uma nova arquitetura que substitui as atualizações aditivas padrão em Transformers lineares pela «Regra Delta». Isso permite que a rede atualize sua memória interna em relação ao que já está armazenado, em vez de calcular valores absolutos do zero.
Avanços posteriores, como as arquiteturas Gated DeltaNet, introduzem taxas de decaimento por canal, permitindo que os modelos esqueçam ou retenham seletivamente características-chave específicas ao longo do tempo. Essas inovações eficientes em termos de hardware reduzem a diferença de desempenho entre Transformers lineares e a atenção softmax tradicional, especialmente em tarefas complexas de recuperação de informações em contexto.
Atenção linear vs. outros mecanismos de atenção#
Entender como essa técnica difere de conceitos relacionados da família mais ampla de mecanismos de atenção é essencial para engenheiros de AI que otimizam suas redes:
- Autoatenção: O mecanismo fundamental que utiliza a matriz softmax completa e computacionalmente dispendiosa de O(N ao quadrado) para capturar um contexto global perfeito.
- Flash Attention: Uma otimização que leva em conta as operações de E/S e acelera os cálculos exatos de autoatenção O(N ao quadrado), movendo dados com eficiência entre os níveis de memória da GPU. Ao contrário da atenção linear, a Flash Attention não altera a fórmula matemática subjacente.
- Atenção esparsa: Um método que economiza memória ao obrigar a rede a considerar apenas uma janela localizada de tokens vizinhos, enquanto a atenção linear comprime matematicamente toda a visão global em um estado de tamanho fixo.
Aplicações no mundo real#
Ao superar o limite do comprimento da sequência, a escala linear viabiliza recursos poderosos em vários domínios de AI:
- Processamento de linguagem natural (NLP): Modelos de linguagem de grande escala (LLMs) de organizações como a OpenAI podem processar bases de código extensas ou documentos jurídicos complexos sem dificuldades. A escala linear permite as enormes janelas de contexto necessárias para um raciocínio robusto sobre documentos.
- Visão computacional (CV) de alta resolução: Para tarefas complexas, como análise de imagens médicas ou análise de imagens de satélite, o achatamento de imagens de gigapíxeis gera sequências enormes de tokens. A atenção linear permite que os modelos executem segmentação de imagens detalhada diretamente em entradas de alta resolução, sem depender de uma redução agressiva da resolução que destrói detalhes essenciais.
Exemplo de código#
Frameworks modernos como PyTorch e [TensorFlow](https://ultralytics-translation-1.invalid simplificam a implementação desses conceitos matemáticos. Abaixo, um trecho conceitual de PyTorch demonstra como a atenção linear altera a ordem da multiplicação de matrizes para alcançar eficiência O(N).
import torch
import torch.nn as nn
import torch.nn.functional as F
class SimpleLinearAttention(nn.Module):
def __init__(self, dim):
super().__init__()
self.qkv = nn.Linear(dim, dim * 3)
def forward(self, x):
# x shape: (Batch, Sequence Length, Channels)
q, k, v = self.qkv(x).chunk(3, dim=-1)
# Apply an activation function as a kernel approximation (replaces softmax)
q = F.elu(q) + 1.0
k = F.elu(k) + 1.0
# Associative trick: Multiply Key and Value first (O(N) complexity)
# k^T @ v yields a fixed (Batch, Channels, Channels) matrix
kv_context = torch.matmul(k.transpose(-2, -1), v)
# Multiply Query by the fixed context matrix to get the final output
return torch.matmul(q, kv_context)
# Example: Processing a sequence of 1024 tokens
model = SimpleLinearAttention(dim=64)
dummy_input = torch.randn(1, 1024, 64)
output = model(dummy_input)
print(f"Output shape: {output.shape}")Embora modelos experimentais da comunidade possam incorporar várias camadas de atenção linear ou esparsa, muitas vezes apresentam baixas velocidades de CPU ou instabilidade no treinamento. Para implantações robustas de visão computacional prontas para produção, Ultralytics YOLO26 é o padrão recomendado. Ele apresenta uma arquitetura altamente otimizada e nativamente ponta a ponta, que maximiza a velocidade e a precisão em tarefas essenciais, como detecção de objetos, sem depender de camadas de atenção pesadas. Os desenvolvedores podem anotar conjuntos de dados, treinar, implantar e monitorar esses modelos de ponta com facilidade usando a abrangente Ultralytics Platform.









