Views
No views yet
| Metric | Score |
|---|---|
| Top-1 Acc | 91.87% |
| Top-5 Acc | 98.76% |
| F1 | 91.85% |
| Precision | 91.91% |
| Recall | 91.87% |
torchvision.models.swin_b (ImageNet pretrained)1import torch
2import torch.nn as nn
3import torchvision.models as tv_models
4from torchvision import transforms
5from huggingface_hub import hf_hub_download
6from PIL import Image
7
8# Build model
9backbone = tv_models.swin_b(weights=None)
10backbone.head = nn.Sequential(
11 nn.Flatten(1),
12 nn.Dropout(p=0.183),
13 nn.Linear(1024, 350),
14 nn.ReLU(inplace=True),
15 nn.Linear(350, 101),
16)
17backbone.load_state_dict(
18 torch.load(hf_hub_download("karlghosn/swin-b-food101", "best_model.pt"), map_location="cpu")
19)
20backbone.eval()
21
22# Preprocess
23transform = transforms.Compose([
24 transforms.Resize(256),
25 transforms.CenterCrop(224),
26 transforms.ToTensor(),
27 transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),
28])
29
30image = Image.open("your_food_image.jpg").convert("RGB")
31with torch.inference_mode():
32 logits = backbone(transform(image).unsqueeze(0))
33 probs = torch.softmax(logits, dim=1)[0]