来自 ImageNet 2012 数据集的 Pytorch 模型的预训练 Alexnet 的低验证分数
Low Validation Score on Pretrained Alexnet from Pytorch models for ImageNet 2012 dataset
我正在使用预训练的 AlexNet 网络来验证一些先前的工作。
代码如下:
import os
import torch
import torchvision
import torchvision.datasets as datasets
import torchvision.models as models
import torchvision.transforms as transforms
model = torch.hub.load('pytorch/vision:v0.6.0', 'alexnet', pretrained=True)
model.eval()
batchsize = 50000
workers = 1
dataset_path = 'data/imagenet_2012/'
normalize = transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
val_data = datasets.ImageFolder(root=os.path.join(dataset_path, 'val'), transform=transforms.Compose( [transforms.Resize(256), transforms.CenterCrop(224), transforms.ToTensor(), normalize,]))
val_loader = torch.utils.data.DataLoader(val_data, batch_size=batchsize, num_workers=workers)
batch = next(iter(val_loader))
images, labels = batch
with torch.no_grad():
output = model(images)
for i in output:
out_soft = torch.nn.functional.softmax(i, dim=0)
print(int(torch.argmax(out_soft)))
当我执行此命令并与 ILSVRC2012_validation_ground_truth.txt
进行比较时,我得到的 top-1 准确率仅为 5%。
我做错了什么?
谢谢。
所以,Pytorch/Caffe 有自己的“ground truth”文件,可以从这里获得:
https://gist.github.com/ksimonyan/fd8800eeb36e276cd6f9#note
我针对上面link提供的tar文件中的val.txt文件手动测试了Imagenet数据集验证文件夹中的图像以验证顺序。
更新:
新的验证准确性基于 link:
中 zip 文件中的 groundtruth
Top_1 = 56.522%
Top_5 = 79.066%
我正在使用预训练的 AlexNet 网络来验证一些先前的工作。
代码如下:
import os
import torch
import torchvision
import torchvision.datasets as datasets
import torchvision.models as models
import torchvision.transforms as transforms
model = torch.hub.load('pytorch/vision:v0.6.0', 'alexnet', pretrained=True)
model.eval()
batchsize = 50000
workers = 1
dataset_path = 'data/imagenet_2012/'
normalize = transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
val_data = datasets.ImageFolder(root=os.path.join(dataset_path, 'val'), transform=transforms.Compose( [transforms.Resize(256), transforms.CenterCrop(224), transforms.ToTensor(), normalize,]))
val_loader = torch.utils.data.DataLoader(val_data, batch_size=batchsize, num_workers=workers)
batch = next(iter(val_loader))
images, labels = batch
with torch.no_grad():
output = model(images)
for i in output:
out_soft = torch.nn.functional.softmax(i, dim=0)
print(int(torch.argmax(out_soft)))
当我执行此命令并与 ILSVRC2012_validation_ground_truth.txt
进行比较时,我得到的 top-1 准确率仅为 5%。
我做错了什么?
谢谢。
所以,Pytorch/Caffe 有自己的“ground truth”文件,可以从这里获得: https://gist.github.com/ksimonyan/fd8800eeb36e276cd6f9#note
我针对上面link提供的tar文件中的val.txt文件手动测试了Imagenet数据集验证文件夹中的图像以验证顺序。
更新: 新的验证准确性基于 link:
中 zip 文件中的 groundtruthTop_1 = 56.522%
Top_5 = 79.066%