timm documentation

Vision Transformer (상대 위치)

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Vision Transformer (상대 위치)

카테고리: ViT · 코드: timm/models/vision_transformer_relpos.py · 아키텍처: 14 · 사전학습된 가중치: 9 (ImageNet-1k 결과가 포함된 9개)

절대 위치 임베딩 대신 상대 위치 편향을 사용하는 Vision Transformers. 모듈 docstring은 이러한 모델을 실험적(experimental)으로 표시합니다.

논문

사용

사전 학습된 가중치 로드, 이미지 전처리 및 파인튜닝에 대해서는 Quickstart를, 모델을 백본으로 사용하는 방법에 대해서는 Feature Extraction을 참고하세요.

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

모델 API 지원

기능VisionTransformerRelPos
features_only=True feature map✓ (strides 16, 16, 16)
forward_intermediates()✓
prune_intermediate_layers()✓
입력 크기 무관, 변경 불필요✗
set_input_size()✓
dynamic_img_size=True✗
set_grad_checkpointing()✓
레이어별 LR 감쇠(group_matcher())✓
reset_classifier()✓

✓ 지원됨, ✓ (정사각형) 정사각형 크기만 작동, ✗ 미지원, – 필요 없음(모델이 이미 모든 입력 크기를 허용). 무작위로 초기화된 모델(VisionTransformerRelPos에 vit_srelpos_small_patch16_224를 224로)에서 각 기능을 실행하여 확인했습니다. 같은 클래스의 다른 아키텍처도 동일한 동작을 할 것으로 예상됩니다. 자세한 내용은 Model API 페이지를 참조하세요.

아키텍처

아키텍처매개변수 (M)GMAC입력 크기사전 학습된 가중치
test_vit_relpos0.85-1600
vit_relpos_base_patch16_22486.4317.512241
vit_relpos_base_patch16_cls_22486.4317.602240
vit_relpos_base_patch16_clsgap_22486.4317.602241
vit_relpos_base_patch16_plus_240117.3827.302400
vit_relpos_base_patch16_rpn_22486.4117.512240
vit_relpos_base_patch32_plus_rpn_256119.427.682561
vit_relpos_medium_patch16_22438.757.972241
vit_relpos_medium_patch16_cls_22438.768.032241
vit_relpos_medium_patch16_rpn_22438.737.972241
vit_relpos_small_patch16_22421.984.592241
vit_relpos_small_patch16_rpn_22421.974.592240
vit_srelpos_medium_patch16_22438.747.962241
vit_srelpos_small_patch16_22421.974.592241

GMACs와 매개변수 수는 각 아키텍처의 기본 입력 크기 및 분류기에 대한 값이며, 벤치마크 결과에서 가져왔습니다.

사전 학습된 가중치

Top-1은 results-imagenet.csv에 나열된 평가 크기에서 측정된 ImageNet-1k 검증 정확도입니다. - 가중치에 ImageNet-1k 결과가 없는 경우(예: 사전 학습 또는 이미지-텍스트 가중치)에는 표시하지 않습니다. Classes는 사전 학습된 분류기의 크기를 나타내며, 분류기가 없는 가중치의 경우 none입니다.

가중치입력 크기Top-1(%)평가 크기클래스라이선스Hub
vit_relpos_base_patch16_224.sw_in1k22482.4822241000apache-2.0timm
vit_relpos_base_patch16_clsgap_224.sw_in1k22482.7582241000apache-2.0timm
vit_relpos_base_patch32_plus_rpn_256.sw_in1k25679.5082561000apache-2.0timm
vit_relpos_medium_patch16_224.sw_in1k22482.4622241000apache-2.0timm
vit_relpos_medium_patch16_cls_224.sw_in1k22482.5582241000apache-2.0timm
vit_relpos_medium_patch16_rpn_224.sw_in1k22482.3142241000apache-2.0timm
vit_relpos_small_patch16_224.sw_in1k22481.4762241000apache-2.0timm
vit_srelpos_medium_patch16_224.sw_in1k22482.2562241000apache-2.0timm
vit_srelpos_small_patch16_224.sw_in1k22481.1082241000apache-2.0timm
Update on GitHub