timm documentation

ViTamin

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.0.30).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

ViTamin

Category: Hybrid · Code: timm/models/vitamin.py · Architectures: 13 · Pretrained weights: 15 (0 with ImageNet-1k results)

ViTamin is a vision model designed for vision-language models, with convolutional (MBConv) stages followed by transformer stages. The weights are CLIP image towers.

Papers

Usage

See the Quickstart for loading pretrained weights, image preprocessing and fine-tuning, and Feature Extraction for using the models as backbones.

>>> import timm
>>> model = timm.create_model('vitamin_base_224.datacomp1b_clip', pretrained=True)
>>> data_config = timm.data.resolve_model_data_config(model)

Model API support

FeatureVisionTransformer
features_only=True feature maps✓ (strides 16, 16, 16)
forward_intermediates()✓
prune_intermediate_layers()✓
Any input size, no changes needed✗
set_input_size()✓
dynamic_img_size=True✓
set_grad_checkpointing()✓
Layer-wise LR decay (group_matcher())✓
reset_classifier()✓

✓ supported, ✓ (square) works for square sizes only, ✗ not supported, – not needed (the model already accepts any input size). Checked by running each feature on a randomly initialized model (VisionTransformer with vitamin_small_224 at 224), other architectures of the same class are expected to behave the same. See the Model API page for details.

Architectures

ArchitectureParams (M)GMACsInput sizePretrained weights
vitamin_base_22487.7222.682242
vitamin_large2_224333.5875.052241
vitamin_large2_256333.6499.002561
vitamin_large2_336333.83175.723361
vitamin_large2_384333.97234.443841
vitamin_large_224333.3275.052241
vitamin_large_256333.3899.002561
vitamin_large_336333.57175.723361
vitamin_large_384333.71234.443841
vitamin_small_22422.175.922242
vitamin_xlarge_256436.06130.132561
vitamin_xlarge_336436.06230.183361
vitamin_xlarge_384436.06306.383841

GMACs and parameter counts are for the default input size and classifier of each architecture, from the benchmark results.

Pretrained weights

Top-1 is ImageNet-1k validation accuracy from results-imagenet.csv at the listed eval size, - if the weight has no ImageNet-1k result (e.g. pretraining or image-text weights). Classes is the size of the pretrained classifier, none for weights without one.

WeightInput sizeTop-1 (%)Eval sizeClassesLicenseHub
vitamin_base_224.datacomp1b_clip224--768mitjienengchen/ViTamin-B
vitamin_base_224.datacomp1b_clip_ltt224--768mitjienengchen/ViTamin-B-LTT
vitamin_large2_224.datacomp1b_clip224--1024mitjienengchen/ViTamin-L2-224px
vitamin_large2_256.datacomp1b_clip256--1024mitjienengchen/ViTamin-L2-256px
vitamin_large2_336.datacomp1b_clip336--1024mitjienengchen/ViTamin-L2-336px
vitamin_large2_384.datacomp1b_clip384--1024mitjienengchen/ViTamin-L2-384px
vitamin_large_224.datacomp1b_clip224--768mitjienengchen/ViTamin-L-224px
vitamin_large_256.datacomp1b_clip256--768mitjienengchen/ViTamin-L-256px
vitamin_large_336.datacomp1b_clip336--768mitjienengchen/ViTamin-L-336px
vitamin_large_384.datacomp1b_clip384--768mitjienengchen/ViTamin-L-384px
vitamin_small_224.datacomp1b_clip224--384mitjienengchen/ViTamin-S
vitamin_small_224.datacomp1b_clip_ltt224--768mitjienengchen/ViTamin-S-LTT
vitamin_xlarge_256.datacomp1b_clip256--1152mitjienengchen/ViTamin-XL-256px
vitamin_xlarge_336.datacomp1b_clip336--1152mitjienengchen/ViTamin-XL-336px
vitamin_xlarge_384.datacomp1b_clip384--1152mitjienengchen/ViTamin-XL-384px

Citation

@inproceedings{chen2024vitamin,
  title={ViTamin: Designing Scalable Vision Models in the Vision-language Era},
  author={Chen, Jieneng and Yu, Qihang and Shen, Xiaohui and Yuille, Alan and Chen, Liang-Chieh},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  year={2024}
}
Update on GitHub