In plain words: Instead of comparing every token with every other, it filters the sequence by frequency, cutting cost from quadratic to near-linear. It runs up to 7 times faster than the standard fast attention kernel at 128k tokens while matching or beating accuracy, adding under 6% parameters.
Abstract · SPECTRE: An FFT-Based Efficient Drop-In Replacement to Self-Attention for Long Contexts
Long-context transformers face significant efficiency challenges due to the quadratic cost of self-attention. However, many modern applications-from multi-turn dialogue to high-resolution vision-require contexts spanning tens of thousands of tokens. We introduce SPECTRE, a method that replaces each attention head with a fast real FFT, a content-adaptive spectral gate, and an inverse FFT, reducing per-layer complexity from $\mathcal{O}(L^{2})$ to $O(L\log L)$ while preserving the surrounding architecture. We extend this efficiency to autoregressive generation through our Prefix-FFT cache and enhance local feature representation with an optional wavelet module that adds negligible computational overhead. Our experiments demonstrate that SPECTRE operates up to 7$\times$ faster than FlashAttention-2 on 128k-token contexts while matching or exceeding baseline performance on PG-19 language modeling and ImageNet-1k classification tasks. SPECTRE achieves these improvements by adding fewer than 6\% parameters to the base model, making hundred-kilotoken context processing feasible on commodity GPUs without specialized hardware.
Jacob Fein-Ashley, Neelesh Gupta, Rajgopal Kannan, Viktor Prasanna
arXiv:2502.18394 · cs.LG · submitted Feb 25, 2025 · updated May 18, 2025
abstract · pdf · html
Whereever you have a convolution operation on your data, transform them to the conjugate domain to turn it into multiplication.
In other words, work in the domain that is natural to your data.
[0] https://en.wikipedia.org/wiki/Convolution_theorem