timm documentation

Swin Transformer

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Swin Transformer

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

Swin Transformer는 계층형 비전 트랜스포머로, 로컬 윈도우 내에서 셀프 어텐션을 계산하며, 연속된 블록 간에 윈도우를 시프트하여 윈도우 간 연결을 수행합니다. S3(AutoFormerV2) 가중치를 포함합니다.

논문

사용

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

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

모델 API 지원

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

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

아키텍처

아키텍처매개변수 (M)GMAC입력 크기사전 학습된 가중치
swin_base_patch4_window7_22487.7715.472243
swin_base_patch4_window12_38487.9047.193843
swin_large_patch4_window7_224196.5334.532242
swin_large_patch4_window12_384196.74104.083842
swin_s3_base_22471.1313.692241
swin_s3_small_22449.749.432241
swin_s3_tiny_22428.334.642241
swin_small_patch4_window7_22449.618.772243
swin_tiny_patch4_window7_22428.294.512243

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

사전 학습된 가중치

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

가중치입력 크기Top-1(%)평가 크기클래스라이선스Hub
swin_base_patch4_window7_224.ms_in1k22483.6042241000mittimm
swin_base_patch4_window7_224.ms_in22k224--21841mittimm
swin_base_patch4_window7_224.ms_in22k_ft_in1k22485.2762241000mittimm
swin_base_patch4_window12_384.ms_in1k38484.4783841000mittimm
swin_base_patch4_window12_384.ms_in22k384--21841mittimm
swin_base_patch4_window12_384.ms_in22k_ft_in1k38486.4423841000mittimm
swin_large_patch4_window7_224.ms_in22k224--21841mittimm
swin_large_patch4_window7_224.ms_in22k_ft_in1k22486.3202241000mittimm
swin_large_patch4_window12_384.ms_in22k384--21841mittimm
swin_large_patch4_window12_384.ms_in22k_ft_in1k38487.1423841000mittimm
swin_s3_base_224.ms_in1k22483.9202241000mittimm
swin_s3_small_224.ms_in1k22483.7782241000mittimm
swin_s3_tiny_224.ms_in1k22482.1282241000mittimm
swin_small_patch4_window7_224.ms_in1k22483.2282241000mittimm
swin_small_patch4_window7_224.ms_in22k224--21841mittimm
swin_small_patch4_window7_224.ms_in22k_ft_in1k22483.3302241000mittimm
swin_tiny_patch4_window7_224.ms_in1k22481.3882241000mittimm
swin_tiny_patch4_window7_224.ms_in22k224--21841mittimm
swin_tiny_patch4_window7_224.ms_in22k_ft_in1k22480.9662241000mittimm
Update on GitHub