sparse attention mechanism

**Sparse Attention Mechanisms** are the **architectural modifications to the standard Transformer self-attention that replace the O(N²) full attention matrix with structured sparsity patterns — computing attention only between selected token pairs rather than all pairs — enabling processing of sequences with 100K to 1M+ tokens while maintaining the ability to capture both local context and long-range dependencies**. **The Full Attention Bottleneck** Standard self-attention computes QK^T for all N² token pairs, requiring O(N²) memory and compute. For a 128K-token context: 128K² = 16.4 billion attention scores per layer per head. At FP16, the attention matrix alone requires 32 GB — exceeding single-GPU memory. **Sparse Attention Patterns** - **Sliding Window (Local) Attention**: Each token attends only to W neighbors (W/2 left, W/2 right). Complexity: O(N×W). Captures local context well but cannot model dependencies beyond window size W. Used in Mistral (W=4096) and as a base pattern in hybrid approaches. - **Global + Local (Longformer)**: Combine sliding window attention for most tokens with global attention for a few special tokens ([CLS], question tokens in QA). Global tokens attend to all positions and are attended by all positions. Complexity: O(N×W + N×G) where G is the number of global tokens. Enables document-level reasoning through global token aggregation. - **BigBird**: Combines three patterns: (1) sliding window (local), (2) global tokens, (3) random attention (each token attends to R random positions). The random connections ensure the attention graph has short average path length, theoretically preserving the ability to propagate information between any two tokens in O(log N) layers. - **Dilated Attention**: Like dilated convolutions — attend to every k-th token within a window. Exponentially increasing dilation across heads or layers captures multi-scale dependencies. LongNet uses dilated attention to scale to 1B tokens. - **Block Sparse Attention**: Divide the sequence into blocks. Compute full attention within blocks and sparse attention between selected block pairs (e.g., every m-th block attends to every n-th block). Efficient GPU implementation using block-sparse matrix operations. **Hybrid Approaches (Production Models)** Modern long-context models combine dense and sparse attention: - **Sliding Window + Global Sink**: Mistral/Mixtral use sliding window attention with attention sinks (the first few tokens always attended to, as they accumulate global information). Effective to 32K+ tokens. - **Layer-Wise Mixing**: Dense attention in some layers (for global reasoning) and sparse attention in others (for local processing). Different layers serve different computational roles. **Alternative Efficiency Approaches** - **Flash Attention**: Not sparse — computes exact full attention but with IO-aware tiling that reduces HBM reads/writes. O(N²) compute but practical speedup of 2-4× and O(N) memory. The dominant approach for sequences up to ~128K tokens. - **Ring Attention**: Distributes the sequence across multiple GPUs, each computing attention on its local segment while passing KV blocks in a ring topology. Enables arbitrary context length limited only by aggregate GPU memory. Sparse Attention Mechanisms are **the architectural innovations that extend Transformer capabilities to document-scale and beyond** — replacing the quadratic bottleneck with structured sparsity patterns that preserve the attention mechanism's core strength of dynamic information routing while making million-token contexts computationally feasible.

Go deeper with CFSGPT

Get AI-powered deep-dives, save terms, and run advanced simulations — free account.

Create Free Account