【问题标题】:Pytorch - Should 'CenterCrop' be used to test set? Does this count as cheating? [closed]Pytorch - 应该使用“CenterCrop”来测试集吗?这算作弊吗?[关闭]
【发布时间】:2020-12-30 12:29:45
【问题描述】:
我正在学习使用 Pytorch 进行图像分类。我发现一些论文代码使用'CenterCrop'来训练集和测试集,例如调整为更大的尺寸,然后应用 CenterCrop 以获得更小的尺寸。较小的尺寸是本研究方向的一般尺寸。
根据我的经验,与在测试集上没有使用 CenterCrop 相比,我发现应用 CenterCrop 可以在测试中获得显着的改进(例如 1% 或 2%)。
因为在顶级会议论文中使用,让我很困惑。那么,是否应该使用 CenterCrop 来测试集这个计数作为作弊?另外,我应该使用除“Resize”和“Normalization”之外的任何数据增强来测试集吗?
感谢您的回答。
【问题讨论】:
标签:
image-processing
computer-vision
pytorch
training-data
data-augmentation
【解决方案1】:
这不是作弊。只要不使用标签,您就可以应用任何扩充。
在图像分类中,有时人们会使用 FiveCrop+Reflection 技术,即将五种裁剪(Center、TopLeft、TopRight、BottomLeft、BottomRight)及其反射作为增强。然后,他们会预测每种作物的类别概率并对结果进行平均,通常会在运行时间增加 10 倍的情况下提高性能。
在分割中,人们也使用类似的测试时间增强“多尺度测试”,即将输入图像调整为不同的尺度,然后再将其馈送到网络。预测也是平均的。
如果您确实使用了此类增强,请在与其他方法进行比较时报告它们以进行公平比较。