Learning to Merge Tokens in Vision Transformers
Cedric Renggli, André Susano Pinto, Neil Houlsby, Basil Mustafa, Joan Puigcerver, Carlos Riquelme
TL;DR
The paper addresses the computational burden of Vision Transformers by introducing PatchMerger, a simple learnable module that merges a variable number of input tokens into a fixed small set of output tokens between encoder blocks. This enables substantial compute savings (40–60% for large models) while maintaining comparable upstream and downstream performance after fine-tuning, across ViT and V-MoE variants. The authors provide extensive experiments on JFT-300M and ImageNet, including up to 10-shot and full finetuning transfers, and show that strategic placement and token-count choices yield favorable Pareto frontiers. They also discuss connections to attention mechanisms and propose future work on adaptive per-input compute for even greater efficiency.
Abstract
Transformers are widely applied to solve natural language understanding and computer vision tasks. While scaling up these architectures leads to improved performance, it often comes at the expense of much higher computational costs. In order for large-scale models to remain practical in real-world systems, there is a need for reducing their computational overhead. In this work, we present the PatchMerger, a simple module that reduces the number of patches or tokens the network has to process by merging them between two consecutive intermediate layers. We show that the PatchMerger achieves a significant speedup across various model sizes while matching the original performance both upstream and downstream after fine-tuning.
