Convolutional Bypasses Are Better Vision Transformer Adapters

Shibo Jie, Zhi-Hong Deng
7/14/2022
cs.CV

No official code found. Best implementation: JieShibo/PETL-ViT (202 stars, MIT, PyTorch, last commit 2023-08-01).

Abstract

The pretrain-then-finetune paradigm has been widely adopted in computer vision. But as the size of Vision Transformer (ViT) grows exponentially, the full finetuning becomes prohibitive in view of the heavier storage overhead. Motivated by parameter-efficient transfer learning (PETL) on language transformers, recent studies attempt to insert lightweight adaptation modules (e.g., adapter layers or prompt tokens) to pretrained ViT and only finetune these modules while the pretrained weights are frozen. However, these modules were originally proposed to finetune language models and did not take into account the prior knowledge specifically for visual tasks. In this paper, we propose to construct Convolutional Bypasses (Convpass) in ViT as adaptation modules, introducing only a small amount (less than 0.5% of model parameters) of trainable parameters to adapt the large ViT. Different from other PETL methods, Convpass benefits from the hard-coded inductive bias of convolutional layers and thus is more suitable for visual tasks, especially in the low-data regime. Experimental results on VTAB-1K benchmark and few-shot learning datasets show that Convpass outperforms current language-oriented adaptation modules, demonstrating the necessity to tailor vision-oriented adaptation modules for adapting vision models.

View on arXivView PDF

Code Implementations(1)

JieShibo/PETL-ViTCommunity100%
PyTorchMIT

[ICCV 2023 & AAAI 2023] Binary Adapters & FacT, [Tech report] Convpass

2029Shell, PythonJul 8, 20223 years agoMIT
parameter-efficient-tuningpytorchtransfer-learningvisual-prompting

Similar Papers

Cite this paper

@article{jie2022convolutional,
  title  = {Convolutional Bypasses Are Better Vision Transformer Adapters},
  author = {Shibo Jie and Zhi-Hong Deng},
  year   = {2022},
  eprint = {2207.07039},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2207.07039v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2207.07039.svg)](https://codeofpaper.com/paper/2207.07039)

Discussion