早前数据集比较少,使用了一些图像的权重增强策略
现在图像多了, 这些策略不需要了:
记录如下:
sampler_weights =[]
for indexx in range(len(train_dataset)):
for aa,bb in dic_w.items():
aaaa=str(train_dataset[indexx][1])
# print(aaaa)
if aaaa in aa:
ccc =float(bb)
sampler_weights.append(ccc)
# print(sampler_weights)
print(sampler_weights)
train_nums = 2500
train_sampler = torch.utils.data.WeightedRandomSampler(weights=sampler_weights, num_samples=train_nums, replacement=True)
train_loader = torch.utils.data.DataLoader(
train_dataset, batch_size=args.batch_size, shuffle=False,
num_workers=args.workers, pin_memory=True, sampler=train_sampler)
因为使用了weightedrangomsampler 所以shuffle 要设置为false