An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
Metadane
- Autorzy: Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov, Dirk Weissenborn, Xiaohua Zhai, Thomas Unterthiner, et al.
- Rok: 2021
- Źródło: ICLR 2021 (arXiv 2010.11929)
- DOI: arXiv:2010.11929
- Status: reference
- Cytowania: ~62,000
- Kategoria: Computer Vision / Machine Learning
- Tagi: reference vit vision-transformer image-classification deep-learning foundational iclr high-citations
Streszczenie
ViT (Vision Transformer) adaptuje architekturę Transformer (Vaswani et al. 2017) do klasyfikacji obrazów. Obraz dzielony jest na 16×16 patches (tokeny), projektowane do embedding space i przetwarzane przez standardowy Transformer encoder. Przy wystarczającej skali pretrainingu (JFT-300M, ImageNet-21k) ViT przewyższa CNN (ResNet, EfficientNet) przy mniejszym koszcie obliczeniowym.
Kluczowa właściwość istotna dla phishing logo detection: ViT uczy się global attention patterns — logo jako całość, nie tylko lokalne tekstury. To czyni go bardziej odpornym na adversarial perturbacje (które zwykle atakują lokalne textury).
Kluczowe Wnioski
- ViT-L/16 pretrained na JFT: 88.55% top-1 na ImageNet (SOTA w 2021)
- Self-attention: model uczy się skupiać na semantycznych regionach (oczy, krawędzie, struktury)
- Skalowanie: ViT skaluje się lepiej niż CNN z rosnącym datasetem
- Transfer learning: ViT pretrained (ImageNet-21k) → fine-tune na małym zbiorze = świetne wyniki
- Warianty: ViT-B/16 (base, 86M), ViT-L/16 (large, 307M), ViT-B/32 (szybszy)
Warianty istotne dla projektu
| Model | Params | FLOPs | Top-1 | Zalecenie |
|---|---|---|---|---|
| ViT-B/32 | 88M | niskie | 84.6% | szybki, do browser extension |
| ViT-B/16 | 86M | średnie | 86.0% | balans jakość/szybkość ← rekomendowany |
| ViT-L/16 | 307M | wysokie | 87.8% | najdokładniejszy, na GPU server |
Zastosowanie w projekcie
Backbone dla M2b (logo embedding):
- Pretrained ViT-B/16 (ImageNet-21k) jako feature extractor
- Fine-tune ostatnie 3 bloki na LogoSENSE dataset (triplet/contrastive loss)
- ViT attention heads wizualizują które regiony logo są diagnostyczne (explainability bonus)
Zaletą vs ResNet: ViT globalny attention → mniej podatny na lokalne adversarial perturbacje (GAN logo zazwyczaj modyfikuje lokalne piksele).
Powiązane Tematy
- CLIP (Radford 2021) — używa ViT jako image encoder
- DETR (Carion 2020) — używa Transformer dla object detection
- CrossViT (Chen 2021) — multi-scale ViT dla małych obiektów (logo)
Notatki
Uzasadnienie wyboru ViT zamiast ResNet: (1) globalny attention = odporniejszy na lokalne perturbacje adwersaryjne, (2) CLIP używa ViT → naturalna integracja, (3) 62k cytowań = powszechnie uznany, nie wymaga szczegółowego opisu.