Spatial Priors via Space Filling Curves for Small and Limited Data Vision Transformers
Abstract
Though Vision Transformers (ViTs) have become the dominant backbone in many computer vision tasks, due to permutation equivariance, their attention mechanism lacks explicit spatial inductive biases. This become particularly important in two settings: when model capacity is small or training data is limited. Inspired by the attention masking strategies in Linear Transformers and the scanning patterns of Vision SSMs, we introduce VIOLIN, a lightweight masked attention mechanism that encodes spatial structure within attention via Space Filling Curves (SFCs) with less than 0.0015% extra parameters and negligible computational overhead. VIOLIN scans the image using multiple SFCs to construct curve-specific decay masks, which are then combined and multiplied with the attention matrix. Across a wide range of evaluations, VIOLIN consistently improves performance. In limited data regimes such as fine-tuning on VTAB-1K, it boosts accuracy across all task groups and by up to 8.7% on the tasks where spatial information is essential. It can be combined with parameter-efficient fine-tuning methods such as LoRA to further increase the performance. Beyond fine-tuning, VIOLIN improves various small scale ViT architectures (e.g., DeiT, DINO) during pretraining on ImageNet-1K. Additionally, on pixel-level CIFAR-100 training, a task that is highly dependent on location information, VIOLIN increases accuracy by up to 7.2%. Overall, VIOLIN provides a computationally efficient yet effective way to inject spatial inductive bias into ViTs, especially benefiting small models and limited data settings.
Lay Summary
Vision Transformers, the dominant AI architecture for image understanding, have gotten very powerful, but they have a fundamental limitation: they treat images as an unordered pile of patches, small square regions of the image, with no sense of what's next to what. This becomes a real problem when you don't have much training data or are working with a small model. We introduce VIOLIN, a small and easy add-on that injects spatial awareness by using different paths that wind through an image. Multiple paths are combined into a single "closeness" map that nudges the model to pay more attention to nearby patches. VIOLIN adds almost no extra computation, works on top of existing models without retraining them and improves performance significantly, especially on spatially demanding tasks.