Views
No views yet
timm. See recipes in Reproducible scaling laws.1from urllib.request import urlopen
2from PIL import Image
3import timm
4
5img = Image.open(urlopen(
6 'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
7))
8
9model = timm.create_model('vit_base_patch16_clip_384.laion2b_ft_in12k_in1k', pretrained=True)
10model = model.eval()
11
12# get model specific transforms (normalization, resize)
13data_config = timm.data.resolve_model_data_config(model)
14transforms = timm.data.create_transform(**data_config, is_training=False)
15
16output = model(transforms(img).unsqueeze(0)) # unsqueeze single image into batch of 1
17
18top5_probabilities, top5_class_indices = torch.topk(output.softmax(dim=1) * 100, k=5)1from urllib.request import urlopen
2from PIL import Image
3import timm
4
5img = Image.open(urlopen(
6 'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
7))
8
9model = timm.create_model(
10 'vit_base_patch16_clip_384.laion2b_ft_in12k_in1k',
11 pretrained=True,
12 num_classes=0, # remove classifier nn.Linear
13)
14model = model.eval()
15
16# get model specific transforms (normalization, resize)
17data_config = timm.data.resolve_model_data_config(model)
18transforms = timm.data.create_transform(**data_config, is_training=False)
19
20output = model(transforms(img).unsqueeze(0)) # output is (batch_size, num_features) shaped tensor
21
22# or equivalently (without needing to set num_classes=0)
23
24output = model.forward_features(transforms(img).unsqueeze(0))
25# output is unpooled, a (1, 577, 768) shaped tensor
26
27output = model.forward_head(output, pre_logits=True)
28# output is a (1, num_features) shaped tensor1@software{ilharco_gabriel_2021_5143773,
2 author = {Ilharco, Gabriel and
3 Wortsman, Mitchell and
4 Wightman, Ross and
5 Gordon, Cade and
6 Carlini, Nicholas and
7 Taori, Rohan and
8 Dave, Achal and
9 Shankar, Vaishaal and
10 Namkoong, Hongseok and
11 Miller, John and
12 Hajishirzi, Hannaneh and
13 Farhadi, Ali and
14 Schmidt, Ludwig},
15 title = {OpenCLIP},
16 month = jul,
17 year = 2021,
18 note = {If you use this software, please cite it as below.},
19 publisher = {Zenodo},
20 version = {0.1},
21 doi = {10.5281/zenodo.5143773},
22 url = {https://doi.org/10.5281/zenodo.5143773}
23}1@article{cherti2022reproducible,
2 title={Reproducible scaling laws for contrastive language-image learning},
3 author={Cherti, Mehdi and Beaumont, Romain and Wightman, Ross and Wortsman, Mitchell and Ilharco, Gabriel and Gordon, Cade and Schuhmann, Christoph and Schmidt, Ludwig and Jitsev, Jenia},
4 journal={arXiv preprint arXiv:2212.07143},
5 year={2022}
6}1@inproceedings{schuhmann2022laionb,
2 title={{LAION}-5B: An open large-scale dataset for training next generation image-text models},
3 author={Christoph Schuhmann and
4 Romain Beaumont and
5 Richard Vencu and
6 Cade W Gordon and
7 Ross Wightman and
8 Mehdi Cherti and
9 Theo Coombes and
10 Aarush Katta and
11 Clayton Mullis and
12 Mitchell Wortsman and
13 Patrick Schramowski and
14 Srivatsa R Kundurthy and
15 Katherine Crowson and
16 Ludwig Schmidt and
17 Robert Kaczmarczyk and
18 Jenia Jitsev},
19 booktitle={Thirty-sixth Conference on Neural Information Processing Systems Datasets and Benchmarks Track},
20 year={2022},
21 url={https://openreview.net/forum?id=M3Y74vmsMcY}
22}1@article{dosovitskiy2020vit,
2 title={An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale},
3 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},
4 journal={ICLR},
5 year={2021}
6}1@misc{rw2019timm,
2 author = {Ross Wightman},
3 title = {PyTorch Image Models},
4 year = {2019},
5 publisher = {GitHub},
6 journal = {GitHub repository},
7 doi = {10.5281/zenodo.4414861},
8 howpublished = {\url{https://github.com/huggingface/pytorch-image-models}}
9}