vit-pytorch
vit-pytorch copied to clipboard
How can I evaluate pre-trained model?
Hello guys
How can I evaluate pre-trained model? I am trying to follow Cat and Dog notebook to load "pre-trained" model as below
import torch
from vit_pytorch.efficient import ViT
from linformer import Linformer
efficient_transformer = Linformer(
dim=128,
seq_len=49+1, # 7x7 patches + 1 cls-token
depth=12,
heads=8,
k=64
)
# load model
model = ViT(
dim=128,
image_size=224,
patch_size=32,
num_classes=2,
transformer=efficient_transformer,
channels=3,
).cuda()
model.eval()
...
testiter = iter(testloader)
x_test, y_test = testiter.next()
output = model(x_test.cuda())
I also followed another code in readme to load "pre-trained" model as below
import torch
from vit_pytorch import ViT
v = ViT(
image_size = 224,
patch_size = 32,
num_classes = 1000,
dim = 1024,
depth = 6,
heads = 16,
mlp_dim = 2048,
dropout = 0.1,
emb_dropout = 0.1
).cuda()
model.eval()
...
testiter = iter(testloader)
x_test, y_test = testiter.next()
output = model(x_test.cuda())
Data (testloader) I used for this is ImageNet2012, size = 224x224 But it seems it does not work and totally fails to classify. Do you have any idea?
Thanks