alt.freeweights.vision / vit_little_patch16_reg4_gap_256.sbb_in1k
From: timm <huggingface.co/timm>Newsgroups: alt.freeweights.visionSubject:

vit_little_patch16_reg4_gap_256.sbb_in1k

Date: 2026-11-15Commit: 933907dSigned: 2DC28CC7B26A283B ✓

Image classification model with 23M parameters. Safetensors weights, 180 MB in all. Published by timm under Apache-2.0.

23M params180MBvit_little_patch16_reg4_gap_256.sbb_in1ksafetensorspermissive
FactsParams23MSize180 MBFormatssafetensorsTaskimage classificationLicenseApache-2.0From sourcepermissive
$ fw get timm/vit_little_patch16_reg4_gap_256.sbb_in1k
# manifest sha256 982f38e4132d… · 180 MB · 6 files
$ fw verify ./vit_little_patch16_reg4_gap_256.sbb_in1k timm/vit_little_patch16_reg4_gap_256.sbb_in1k
From sourceHosted (signed)timm/vit_little_patch16_reg4_gap_256.sbb_in1kLast check: 2026-11-15 03:41 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Runs with

Ranked by fit to this model (safetensors), then by GitHub stars.

Overview

Size
180 MB
Weights
90.1 MB (safetensors)
Parameters
23M
Formats
safetensors
Task
image classification
License
Apache-2.0 (permissive)
Files
6, each with a sha256
Publisher
timm
Added
2026-11-15
Section
alt.freeweights.vision
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 03:41 UTCpassed

Model card

From the publisher at commit 933907d. Shown as plain text with links; images open at the publisher.

Model card for vit_little_patch16_reg4_gap_256.sbb_in1k#

A Vision Transformer (ViT) image classification model. This is a timm specific variation of the architecture with registers, global average pooling.

There are a number of models in the lower end of model scales that originate in timm:

variantwidthmlp width (mult)headsdepthtimm orig
tiny192768 (4)312n
wee2561280 (5)414y
dwee2561280 (5)414 (differential)y
pwee2561280 (5)416 (parallel)y
dpwee2561280 (5)416 (parallel + differential)y
small3841536 (4)612n
little3201792 (5.6)514y
dlittle3201792 (5.6)514 (differential)y
medium5122048 (4)812y
mediumd5122048 (4)820y
betwixt6402560 (4)1012y
base7683072 (4)1212n
so150m28322176 (2.57)1321y
so150m8962304 (2.62)1418y

Trained on ImageNet-1k in timm using recipe template described below.

Recipe details:

  • Searching for better baselines. Influced by Swin/DeiT/DeiT-III but w/ increased weight decay, moderate (in12k) to high (in1k) augmentation. Layer-decay used for fine-tune. Some runs used BCE and/or NAdamW instead of AdamW.
  • See train_hparams.yaml for specifics of each model.

Model Details#

Model Usage#

Image Classification#
from urllib.request import urlopen
from PIL import Image
import timm

img = Image.open(urlopen(
    'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))

model = timm.create_model('vit_little_patch16_reg4_gap_256.sbb_in1k', pretrained=True)
model = model.eval()

# get model specific transforms (normalization, resize)
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)

output = model(transforms(img).unsqueeze(0))  # unsqueeze single image into batch of 1

top5_probabilities, top5_class_indices = torch.topk(output.softmax(dim=1) * 100, k=5)
Feature Map Extraction#
from urllib.request import urlopen
from PIL import Image
import timm

img = Image.open(urlopen(
    'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))

model = timm.create_model(
    'vit_little_patch16_reg4_gap_256.sbb_in1k',
    pretrained=True,
    features_only=True,
)
model = model.eval()

# get model specific transforms (normalization, resize)
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)

output = model(transforms(img).unsqueeze(0))  # unsqueeze single image into batch of 1

for o in output:
    # print shape of each feature map in output
    # e.g.:
    #  torch.Size([1, 320, 16, 16])
    #  torch.Size([1, 320, 16, 16])
    #  torch.Size([1, 320, 16, 16])

    print(o.shape)
Image Embeddings#
from urllib.request import urlopen
from PIL import Image
import timm

img = Image.open(urlopen(
    'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))

model = timm.create_model(
    'vit_little_patch16_reg4_gap_256.sbb_in1k',
    pretrained=True,
    num_classes=0,  # remove classifier nn.Linear
)
model = model.eval()

# get model specific transforms (normalization, resize)
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)

output = model(transforms(img).unsqueeze(0))  # output is (batch_size, num_features) shaped tensor

# or equivalently (without needing to set num_classes=0)

output = model.forward_features(transforms(img).unsqueeze(0))
# output is unpooled, a (1, 260, 320) shaped tensor

output = model.forward_head(output, pre_logits=True)
# output is a (1, num_features) shaped tensor

Model Comparison#

modeltop1top5param_countimg_size
vit_so150m2_patch16_reg1_gap_448.sbb2_e200_in12k_ft_in1k88.06898.588136.33448
vit_so150m2_patch16_reg1_gap_384.sbb2_e200_in12k_ft_in1k87.93098.502136.33384
vit_so150m2_patch16_reg1_gap_256.sbb2_e200_in12k_ft_in1k87.30898.326136.33256
vit_mediumd_patch16_reg4_gap_384.sbb2_e200_in12k_ft_in1k87.43898.25664.11384
vit_mediumd_patch16_reg4_gap_256.sbb2_e200_in12k_ft_in1k86.60897.93464.11256
vit_betwixt_patch16_reg4_gap_384.sbb2_e200_in12k_ft_in1k86.59498.0260.4384
vit_mediumd_patch16_reg4_gap_256.sbb_in12k_ft_in1k86.20297.87464.11256
vit_betwixt_patch16_reg4_gap_256.sbb2_e200_in12k_ft_in1k85.73497.6160.4256
vit_betwixt_patch16_reg4_gap_256.sbb_in12k_ft_in1k85.41897.48060.4256
vit_medium_patch16_reg4_gap_256.sbb_in12k_ft_in1k84.93097.38638.88256
vit_mediumd_patch16_rope_reg1_gap_256.sbb_in1k84.32296.81263.95256
vit_betwixt_patch16_rope_reg4_gap_256.sbb_in1k83.90696.68460.23256
vit_base_patch16_rope_reg1_gap_256.sbb_in1k83.86696.6786.43256
vit_medium_patch16_rope_reg1_gap_256.sbb_in1k83.8196.82438.74256
vit_little_patch16_reg1_gap_256.sbb_in12k_ft_in1k83.77496.97222.52256
vit_betwixt_patch16_reg4_gap_256.sbb_in1k83.70696.61660.4256
vit_betwixt_patch16_reg1_gap_256.sbb_in1k83.62896.54460.4256
vit_medium_patch16_reg4_gap_256.sbb_in1k83.4796.62238.88256
vit_medium_patch16_reg1_gap_256.sbb_in1k83.46296.54838.88256
vit_dlittle_patch16_reg1_gap_256.sbb_nadamuon_in1k83.21296.35822.52256
vit_little_patch16_reg4_gap_256.sbb_in1k82.51496.26222.52256
vit_dwee_patch16_reg1_gap_256.sbb_nadamuon_in1k81.80895.89213.43256
vit_dpwee_patch16_reg1_gap_256.sbb_nadamuon_in1k81.66095.80815.25256
vit_dwee_patch16_reg1_gap_256.sbb_in1k80.99895.66213.43256
vit_dpwee_patch16_reg1_gap_256.sbb_in1k80.88095.63015.25256
vit_wee_patch16_reg1_gap_256.sbb_in1k80.25895.36013.42256
vit_pwee_patch16_reg1_gap_256.sbb_in1k80.07295.13615.25256

Citation#

@misc{rw2019timm,
  author = {Ross Wightman},
  title = {PyTorch Image Models},
  year = {2019},
  publisher = {GitHub},
  journal = {GitHub repository},
  doi = {10.5281/zenodo.4414861},
  howpublished = {\url{https://github.com/huggingface/pytorch-image-models}}
}
@article{darcet2023vision,
  title={Vision Transformers Need Registers},
  author={Darcet, Timoth{'e}e and Oquab, Maxime and Mairal, Julien and Bojanowski, Piotr},
  journal={arXiv preprint arXiv:2309.16588},
  year={2023}
}
@article{dosovitskiy2020vit,
  title={An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale},
  author={Dosovitskiy, Alexey and Beyer, Lucas and Kolesnikov, Alexander and Weissenborn, Dirk and Zhai, Xiaohua and Unterthiner, Thomas and  Dehghani, Mostafa and Minderer, Matthias and Heigold, Georg and Gelly, Sylvain and Uszkoreit, Jakob and Houlsby, Neil},
  journal={ICLR},
  year={2021}
}

Files

6 files · 180 MBWeights 90.1 MB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 6 files with their sha256
FileSizesha256
.gitattributes1.52 KB11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361
README.md10.2 KB4a47d5d24eff924b4c541f3e1a00459d62aac396f6da6a39e0a01e76a2604c11
config.json614 B73bba6c6dc73baeb3e78d39eebde4bba4b13b715112766f5fd6660299b75a9c9
model.safetensors90.1 MBebb1e0717935621d857d7441c700ebcec4daa4de066cffb11692a7171ceace8c
pytorch_model.bin90.1 MB4ecaf79c1b02d62e0df65e9ca0ee5460aff1bd81bd8a14d65dacfc1481686fba
train_hparams.yaml2.55 KBebb641e879b97d0c06ac712e3a69de4760eb2f8ca5b288f1098faafac4e2c58c
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
933907dcb0 pinned now2026-11-15 03:41 UTC6 files · 180 MB

Use it

$ fw get timm/vit_little_patch16_reg4_gap_256.sbb_in1k
# manifest sha256 982f38e4132d… · 180 MB · 6 files
$ fw verify ./vit_little_patch16_reg4_gap_256.sbb_in1k timm/vit_little_patch16_reg4_gap_256.sbb_in1k
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/timm/vit_little_patch16_reg4_gap_256.sbb_in1k.json --dir ./vit_little_patch16_reg4_gap_256.sbb_in1k $ python3 fw.py verify ./vit_little_patch16_reg4_gap_256.sbb_in1k ./timm__vit_little_patch16_reg4_gap_256.sbb_in1k.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download timm/vit_little_patch16_reg4_gap_256.sbb_in1k --revision 933907dcb0abf67c7f5a314f64a8b7c3b69a427c --local-dir ./vit_little_patch16_reg4_gap_256.sbb_in1k

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
4a47d5d24eff924b4c541f3e1a00459d62aac396f6da6a39e0a01e76a2604c11
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: timm <huggingface.co/timm>Newsgroups: alt.freeweights.visionSubject: vit_little_patch16_reg4_gap_256.sbb_in1kDate: 2026-11-15Commit: 933907dSigned: 2DC28CC7B26A283B ✓
Upstream
timm/vit_little_patch16_reg4_gap_256.sbb_in1k
Pinned commit
933907dcb0abf67c7f5a314f64a8b7c3b69a427c
Manifest
vit_little_patch16_reg4_gap_256.sbb_in1k.json · .minisig
Manifest sha256
982f38e4132dd0c8c4c48fed5225abaa42873ef9c9ddad53ff9746f5d2901303
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 03:41 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/timm/vit_little_patch16_reg4_gap_256.sbb_in1k.json $ curl -O https://freeweights.allternit.com/manifests/timm/vit_little_patch16_reg4_gap_256.sbb_in1k.json.minisig $ minisign -Vm vit_little_patch16_reg4_gap_256.sbb_in1k.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download timm/vit_little_patch16_reg4_gap_256.sbb_in1k
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. vit_little_patch16_reg4_gap_256.sbb_in1k.json. Provenance. Takedown history: none.
From: dima806 <huggingface.co/dima806>Subject: ai_vs_real_image_detection
From: legekka <huggingface.co/legekka>Subject: AI-Anime-Image-Detector-ViT
From: onnx-community <huggingface.co/onnx-community>Subject: AI-Anime-Image-Detector-ViT-ONNX
From: AICodexLab <huggingface.co/AICodexLab>Subject: answerdotai-ModernBERT-base-ai-detector
From: onnx-community <huggingface.co/onnx-community>Subject: answerdotai-ModernBERT-base-ai-detector-ONNX
From: onnx-community <huggingface.co/onnx-community>Subject: bart-large-cnn-ONNX