patch-size
Patch-størrelse er et hyperparameter, der angiver de rumlige dimensioner (højde og bredde) af de kvadratiske udsnit, et billede opdeles i, før behandling i en vision transformer eller konvolutionelt neuralt netværk.
Kort fortalt
Patch-størrelse bestemmer, hvor store bidder et billede skæres i, når det skal behandles af en AI-model — jo mindre patches, desto flere detaljer, men også mere beregning.
- Kategori
- begreb
- Niveau
- øvet
Betydninger
1- 1
De rumlige dimensioner (højde og bredde) af et kvadratisk udsnit, som et billede opdeles i. Angives typisk i pixels, f.eks. 16×16.
- I vision transformeren bruges en patch-størrelse på 16×16 pixels til at opdele billedet i et fast antal tokens. — Dosovitskiy et al., 2020
- En mindre patch-størrelse som 8×8 giver fire gange så mange patches som 16×16, hvilket øger modellens beregningsbehov.
Hvornår bruges det
Patch-størrelse bruges primært i billedbehandling med transformer-modeller (ViT) og i nye CNN-arkitekturer der anvender patch-baseret tokenisering. Den vælges typisk som 16×16 eller 8×8 pixels, afhængigt af billedopløsning og modelskala. En mindre patch-størrelse giver flere tokens og dermed højere præcision, men øger kvadreret beregningsomkostning i self-attention.
Kodeeksempel
import torch
from vit_pytorch import ViT
model = ViT(
image_size=224,
patch_size=16, # <-- patch-size hyperparameter
num_classes=1000,
dim=1024,
depth=6,
heads=16,
mlp_dim=2048
)
# Antal patches = (224//16)**2 = 196Eksempel på, hvordan patch-størrelse specificeres i en ViT-model. Her indstilles patch_size til 16, hvilket giver 196 patches fra et 224×224 billede.
Oprindelse
Udtrykket stammer fra papiret 'An Image is Worth 16x16 Words' (2020), hvor billeder blev opdelt i patches på 16×16 pixels, inspireret af NLP's ordtokens.
Afledte ord
2Kilder
1- An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale