论文如下
复现过程中有一个问题始终困扰着我,我进行epq量化之后,得到的量化后的数据集文件是
但是论文代码中给出的量化后的文件是
我始终没有找到这个data.pth文件是怎么生成的。以至于后面的整体量化框架,应用fast直接加载量化后的数据集文件这一部分我没办法用,只能重新加载。
根据论文代码中的量化部分可以看出,data.pth文件是在数据预处理阶段生成的,具体代码如下:
from torchvision import datasets, transforms
import torch
# data preprocessing
transform = transforms.Compose([
transforms.Resize(size=(256, 256)),
transforms.CenterCrop(size=224),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])])
train_dataset = datasets.ImageFolder(root="./data/train", transform=transform)
train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=64, num_workers=4)
# save quantized dataset
data = []
for batch_idx, (inputs, target) in enumerate(train_loader):
data.append(inputs)
data = torch.cat(data, dim=0)
torch.save(data, './data/data.pth')
可以看出,该代码首先进行了数据预处理,然后利用torch.save()将预处理后的数据集保存在data.pth文件中。因此,如果想要生成与论文代码中相同的data.pth文件,需要在数据预处理阶段生成该文件。