{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/vision-transformer-adapter-for-dense","title":"Vision Transformer Adapter for Dense Predictions","arxiv_id":"2205.08534","date":"2022-05-17","proceeding":null,"authors":["Zhe Chen","Yuchen Duan","Wenhai Wang","Junjun He","Tong Lu","Jifeng Dai","Yu Qiao"],"abstract":"This work investigates a simple yet powerful dense prediction task adapter for Vision Transformer (ViT). Unlike recently advanced variants that incorporate vision-specific inductive biases into their architectures, the plain ViT suffers inferior performance on dense predictions due to weak prior assumptions. To address this issue, we propose the ViT-Adapter, which allows plain ViT to achieve comparable performance to vision-specific transformers. Specifically, the backbone in our framework is a plain ViT that can learn powerful representations from large-scale multi-modal data. When transferring to downstream tasks, a pre-training-free adapter is used to introduce the image-related inductive biases into the model, making it suitable for these tasks. We verify ViT-Adapter on multiple dense prediction tasks, including object detection, instance segmentation, and semantic segmentation. Notably, without using extra detection data, our ViT-Adapter-L yields state-of-the-art 60.9 box AP and 53.0 mask AP on COCO test-dev. We hope that the ViT-Adapter could serve as an alternative for vision-specific transformers and facilitate future research. The code and models will be released at https://github.com/czczup/ViT-Adapter.","url_abs":"https://arxiv.org/abs/2205.08534v4","url_pdf":"https://arxiv.org/pdf/2205.08534v4.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"vision-transformer-adapter-for-dense","repo_url":"https://github.com/czczup/vit-adapter","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"vision-transformer-adapter-for-dense","repo_url":"https://github.com/chenller/mmseg-extension","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"instance-segmentation","task_name":"Instance Segmentation"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"panoptic-segmentation","task_name":"Panoptic Segmentation"},{"task_slug":"real-time-object-detection","task_name":"Real-Time Object Detection"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"adapter","method_name":"Adapter"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"},{"method_slug":"vision-transformer","method_name":"Vision Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/instance-segmentation-on-coco-minival","task":"Instance Segmentation","dataset":"COCO minival","model":"ViT-Adapter-L (HTC++, BEiTv2, O365, multi-scale)","rank_in_archive_order":7,"of":93,"metrics":{"mask AP":"54.2"},"uses_additional_data":true},{"leaderboard":"/sota/instance-segmentation-on-coco-minival","task":"Instance Segmentation","dataset":"COCO minival","model":"ViT-Adapter-L (HTC++, BEiTv2 pretrain, multi-scale)","rank_in_archive_order":14,"of":93,"metrics":{"mask AP":"52.5"},"uses_additional_data":false},{"leaderboard":"/sota/instance-segmentation-on-coco-minival","task":"Instance Segmentation","dataset":"COCO minival","model":"ViT-Adapter-L (HTC++, BEiT pretrain, multi-scale)","rank_in_archive_order":15,"of":93,"metrics":{"mask AP":"52.2"},"uses_additional_data":false},{"leaderboard":"/sota/instance-segmentation-on-coco","task":"Instance Segmentation","dataset":"COCO test-dev","model":"ViT-Adapter-L (HTC++, BEiTv2, O365, multi-scale)","rank_in_archive_order":8,"of":112,"metrics":{"mask AP":"54.5"},"uses_additional_data":true},{"leaderboard":"/sota/instance-segmentation-on-coco","task":"Instance Segmentation","dataset":"COCO test-dev","model":"ViT-Adapter-L (HTC++, BEiTv2 pretrain, multi-scale)","rank_in_archive_order":13,"of":112,"metrics":{"mask AP":"53.0"},"uses_additional_data":false},{"leaderboard":"/sota/instance-segmentation-on-coco","task":"Instance Segmentation","dataset":"COCO test-dev","model":"ViT-Adapter-L (HTC++, BEiT pretrain, multi-scale)","rank_in_archive_order":15,"of":112,"metrics":{"mask AP":"52.5"},"uses_additional_data":false},{"leaderboard":"/sota/object-detection-on-coco-minival","task":"Object Detection","dataset":"COCO minival","model":"ViT-Adapter-L (HTC++, BEiTv2 pretrain, multi-scale)","rank_in_archive_order":22,"of":220,"metrics":{"box AP":"60.5"},"uses_additional_data":false},{"leaderboard":"/sota/object-detection-on-coco-minival","task":"Object Detection","dataset":"COCO minival","model":"ViT-Adapter-L (HTC++, BEiT pretrain, multi-scale)","rank_in_archive_order":26,"of":220,"metrics":{"box AP":"60.2"},"uses_additional_data":false},{"leaderboard":"/sota/object-detection-on-coco","task":"Object Detection","dataset":"COCO test-dev","model":"ViT-Adapter-L (HTC++, BEiTv2 pretrain, multi-scale)","rank_in_archive_order":25,"of":225,"metrics":{"box mAP":"60.9"},"uses_additional_data":false},{"leaderboard":"/sota/object-detection-on-coco","task":"Object Detection","dataset":"COCO test-dev","model":"ViT-Adapter-L (HTC++, BEiT pretrain, multi-scale)","rank_in_archive_order":28,"of":225,"metrics":{"box mAP":"60.4"},"uses_additional_data":false},{"leaderboard":"/sota/object-detection-on-coco-o","task":"Object Detection","dataset":"COCO-O","model":"ViT-Adapter (BEiTv2-L)","rank_in_archive_order":11,"of":45,"metrics":{"Average mAP":"34.25","Effective Robustness":"7.79"},"uses_additional_data":false},{"leaderboard":"/sota/panoptic-segmentation-on-coco-minival","task":"Panoptic Segmentation","dataset":"COCO minival","model":"ViT-Adapter-L (single-scale, BEiTv2 pretrain, Mask2Former)","rank_in_archive_order":9,"of":31,"metrics":{"AP":"48.9","PQ":"58.4","PQst":"48.4","PQth":"65.0"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-ade20k","task":"Semantic Segmentation","dataset":"ADE20K","model":"ViT-Adapter-L (Mask2Former, BEiTv2 pretrain)","rank_in_archive_order":8,"of":235,"metrics":{"Params (M)":"571","Validation mIoU":"61.5"},"uses_additional_data":true},{"leaderboard":"/sota/semantic-segmentation-on-ade20k","task":"Semantic Segmentation","dataset":"ADE20K","model":"ViT-Adapter-L (Mask2Former, BEiT pretrain)","rank_in_archive_order":12,"of":235,"metrics":{"Params (M)":"571","Validation mIoU":"60.5"},"uses_additional_data":true},{"leaderboard":"/sota/semantic-segmentation-on-ade20k","task":"Semantic Segmentation","dataset":"ADE20K","model":"ViT-Adapter-L (UperNet, BEiT pretrain)","rank_in_archive_order":19,"of":235,"metrics":{"Params (M)":"451","Validation mIoU":"58.4"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-ade20k-val","task":"Semantic Segmentation","dataset":"ADE20K val","model":"ViT-Adapter-L (Mask2Former, BEiT pretrain)","rank_in_archive_order":7,"of":95,"metrics":{"mIoU":"60.5"},"uses_additional_data":true},{"leaderboard":"/sota/semantic-segmentation-on-ade20k-val","task":"Semantic Segmentation","dataset":"ADE20K val","model":"ViT-Adapter-L (UperNet, BEiT pretrain)","rank_in_archive_order":10,"of":95,"metrics":{"mIoU":"58.4"},"uses_additional_data":true},{"leaderboard":"/sota/semantic-segmentation-on-cityscapes","task":"Semantic Segmentation","dataset":"Cityscapes test","model":"ViT-Adapter-L (Mask2Former, BEiT pretrain)","rank_in_archive_order":6,"of":105,"metrics":{"Mean IoU (class)":"85.2%"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-cityscapes-val","task":"Semantic Segmentation","dataset":"Cityscapes val","model":"ViT-Adapter-L","rank_in_archive_order":10,"of":99,"metrics":{"mIoU":"85.8"},"uses_additional_data":true},{"leaderboard":"/sota/semantic-segmentation-on-pascal-context","task":"Semantic Segmentation","dataset":"PASCAL Context","model":"ViT-Adapter-L (Mask2Former, BEiT pretrain)","rank_in_archive_order":5,"of":66,"metrics":{"mIoU":"68.2"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-pascal-context","task":"Semantic Segmentation","dataset":"PASCAL Context","model":"ViT-Adapter-L (UperNet, BEiT pretrain)","rank_in_archive_order":6,"of":66,"metrics":{"mIoU":"67.5"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2205.08534","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}