本文转载自机器之心。
作者:杜伟、魔王
自发布以来,ImageNet 数据集逐渐成为机器学习社区最流行的图像分类基准,但 ImageNet 自身存在着标签噪声,以及单标签标注属性与多类别样本之间的不匹配。所以在本文中,韩国 Naver AI 实验室提出了一种新颖的重新标注策略以及一个基于额外源数据的强大图像分类器,通过该策略训练的 ResNet 等多种架构都实现了性能提升。
ImageNet 是机器学习社区最流行的图像分类基准数据集,包含超过 1400 万张标注图像。该数据集由斯坦福教授李飞飞等人于 2006 年开始创建,后成为评估计算机视觉模型在下游视觉任务中能力的试金石。
然而 ImageNet 并不完美,其标签存在大量噪声。近期多项研究表明,该数据集中许多样本包含多个类别,而 ImageNet 本身是一个单标签基准数据集。一些研究者提出将 ImageNet 转换为多标签任务评估基准,但是可能是由于标注成本过高,他们并未修复训练集。
在近日发布的一篇论文中,来自韩国 NAVER AI LAB 的研究者认为,在应用了随机剪裁的训练设置下,单标签标注和高效多标签图像之间的不匹配带来了同等问题。在使用单标签标注时,图像随机剪裁可能包含与真值完全不同的对象,为训练带来噪声甚至不准确的监督信号。
为此,这些研究者决定使用多标签对 ImageNet 训练集进行重新标注:他们在额外的数据源上训练了一个强大的图像分类器,使用其生成多标签,解决了标注成本问题;在最终池化层之前使用像素级多标签预测,以充分利用额外的位置特定监督信号。
原始 ImageNet 标签(左上)与本文 ReLabel 标注器的效果对比。
基于重新标注样本的训练可以全面提升模型性能。例如,使用该研究提出的局部多标签后,ResNet-50 在 ImageNet 上的 top-1 分类准确率达到 78.9%,使用 CutMix 正则化后还可以进一步提升至 80.2%。实验表明,使用局部多标签训练的模型在迁移至目标检测和实例分割任务以及多种稳健性基准时,性能优于基线方法。
此外,研究者还开源了重新标注的 ImageNet 训练集、预训练权重和源代码。
方法
这项研究提出了一种重新标注(re-labelling)策略 ReLabel,以在 ImageNet 训练集上获得像素级真值标签。标签映射((label map))具有两个特征:多类别标签和局部标签。研究者使用机器标注器(machine annotator)获得标签映射,该标注器是在额外源数据上训练的 SOTA 图像分类器。研究者介绍了如何获得标签映射,并提出了一个新颖的训练框架 LabelPooling,以使用这类局部多标签训练图像分类器。
重新标注 ImageNet
研究者从机器标注器中获得密集真值标签,从这类模型中获得的预测可能接近于人类预测。由于训练机器标注器需要访问专有训练数据并在 GPU 或 TPU 上训练数百天,所以研究者采用开源训练权重作为机器标注器。
机器标注器如下图 4 所示:
研究者注意到,尽管机器标注器在 ImageNet 上使用单标签监督(softmax 交叉熵损失)进行训练,但它们仍然倾向于对多类别图像进行多标签预测。所以,如果数据集中存在大量的标签噪声,则利用单标签交叉熵损失训练的模型倾向于预测多标签输出。
此外,利用分类器获取标签还有一个好处:提取位置特定的标签。研究者移除了分类器的全局平均池化层,并将接下来的线性层转化为 1×1 的卷积层,从而将该分类器转化为一个全卷积网络。然后,模型的输出成为 f(x) ∈ R^W×H×C。研究者将该输出 f(x) 作为标签映射标注 L ∈ R^W×H×C。
利用密集多标签训练分类器
在获得上述密集多标签 L ∈ R^W×H×C 之后,接下来需要考虑如何利用它们训练分类器。对此,研究者提出了一种新颖的训练方案 LabelPooling,它将局部真值考虑了进来。下图 3 展示了 LabelPooling 和原始 ImageNet 训练之间的区别:
在标准 ImageNet 训练设置下,随机剪裁的监督信号来自于每张图像的单标签真值。另一方面,LabelPooling 会加载预计算的标签映射,并在标签映射上执行与随机剪裁坐标相对应的区域池化操作。研究者采用了 RoIAlign 区域池化方法。
此外,研究者在池化预测图上执行全局平均池化和 softmax 操作,以获得多标签真值向量。最后,研究者使用了交叉熵损失。
ReLabel 的伪代码。
实验
ImageNet 分类
为了验证 ReLabel 的效果,研究者使用不同的网络架构和评估指标(包括近期提出的多标签评估指标)执行 ImageNet 分类任务。他们在包含 128 万训练图像和 5 万验证图像的 ImageNet-1K 基准上评估 ReLabel 策略。对于所有模型,他们均使用标准数据增强技术,如随机剪裁、翻转、色彩抖动。
与其他标签操纵方法的对比:研究者对比了 ReLabel 与之前那些直接调整 ImageNet 标签的方法,使用的模型是 ResNet50。结果参见下表 3:
在不同网络架构上的结果:研究者使用 ReLabel 训练了多个不同架构(包括 ResNet-18、ResNet101、EfficientNet-{B0,B1,B2,B3}、ReXNet),表明 ReLabel 可用于具备不同训练机制的多种网络。下表 4 展示了实验结果,从中可以看出,ReLabel 持续提升不同网络架构的性能,例如将 EfficientNet-B3 的准确率从 81.7% 提升至 82.5%。
SOTA 性能:ReLabel 对实现最优性能的其他训练技巧起到补充作用,例如将 CutMix 正则化与 ReLabel 结合起来。研究者在随机剪裁图像上执行 CutMix,然后根据 CutMix 算法将池化标签进行混合。实验结果参见下表 5:ReLabel + CutMix 在以 ResNet-50 和 ResNet-101 作为主干模型的情况下,均取得了 SOTA ImageNet top-1 准确率。
迁移学习
研究者还检验了 ReLabel 带来的 ImageNet 性能改进能否迁移至不同的下游任务,展示了在五个细粒度分类任务、目标检测与实例分割任务上的结果。
细粒度分类任务:研究者在五个细粒度分类任务(Food-101、Stanford Cars、DTD、FGVC Aircraft 和 Oxford Pets)上评估了使用 ReLabel 预训练的 ResNet-50 的性能。实验结果参见下表 8:
目标检测与实例分割:研究者分别使用具备特征金字塔网络的 Faster-RCNN 和 Mask-RCNN 作为目标检测和实例分割任务的 base 模型。Faster-RCNN 和 Mask-RCNN 的主干网络基于 ReLabel 预训练的 ResNet-50 模型进行初始化,然后使用原始训练策略在 COCO 数据集上进行微调。实验结果参见下表 9:
多标签分类
多标签训练常用随机剪裁作为数据增强方式,在这种情况下,ReLabel 和 LabelPooling 可以提供额外的局部监督信号,帮助改善原始多标签训练集。研究者使用多标签分类数据集 COCO 进行实验,然后使用基于标签映射的 LabelPooling 训练多标签分类器。
下表 10 展示了实验结果:使用 ReLabel 和机器生成的标签地图后,ResNet-50 和 ResNet-101 的 mAP 分别增长了 3.7 pp 和 2.4 pp;使用 oracle 标签地图后,二者的 mAP 分别增长了 4.2 pp 和 4.3 pp。
END
注明:数据
数据标注与增广交流群
研究数据,就是挖掘富矿!这里讨论标注与增广的一切。
我爱计算机视觉
微信号 : aicvml
QQ群:805388940
微博/知乎:@我爱计算机视觉
投稿:amos@52cv.net
网站:www.52cv.net
在看,让更多人看到