Tencent ML-Images: A Large-Scale Multi-Label Image Database for Visual Representation Learning

摘要:

现有的视觉表达学习任务中,深度神经网络通常由单个标签的图像训练而来,例如ImageNet。然而单个标签很难描述样本中所有的重要内容,有些有用的视觉信息在训练时可能会浪费掉了。本文中,我们期望利用多标签的图像训练CNNs,从而增强训练出来的CNN模型的表达质量。为了达到目的,我们建立一个包含18M图像,11K类别的大规模多标签样本集,称为Tencent ML-Images。我们高效的利用大规模分布式深度学习框架,例如TFplus,在Tencent ML-Images数据集上训练ResNet-101模型,花了90小时迭代了60epoches。通过ImageNet和Caltech-256上的单标签图像分类、PASCAL VOC 2007上的目标检测、PASCAL VOC 2012上的语义分割三个转移学习任务,验证了腾讯ML-Images检查点的良好视觉表示质量。腾讯ML-Images数据库,ResNet-101的checkpoints,以及所有的训练代码已经在https://github.com/Tencent/tencent-ml-images开源。预期它将促进研究和工业界的未来其他任务。

1、Introduction

本文介绍了新建多标签数据集Tencent ML-Images大规模识别表示学习工作。我们从讨论接下来两个问题开始。

  1. 为什么我们需要大规模图像数据集?深度学习经历了一个较长的低谷期,直到2012年,AlexNet【1】在ILSVRC2012比赛的单标签图像分类任重中取得了令人吃惊的结果。深度神经网络的潜力通过大规模图像数据集,例如ImageNet-ILSVRC2012【2】释放出来。除此之外,许多计算机视觉任务,例如目标检测、语义分割等获取训练数据成本都很高。由于训练数据的不足,我们需要在大规模数据集上训练的拥有好的视觉表达能力的checkpoint作为预训练模型,用于其他任务的初始化(例如用于单标签图像分类的ImageNet-ILSVRC2012)。
  2. 为什么我们需要多标签图像数据集?由于在大多数自然图片中都会有多个目标,单个标注可能会漏掉一些有用的信息,并且误导CNN网络的训练。例如两张视觉相似的包含牛和草的图片可能分别被标注为草跟牛。合理的方式是告诉CNN模型这两张图片同时包含牛和草。

上述的讨论解释了为什么我们需要大规模多标签图像数据集用来进行深度学习视觉表达的学习。然而,与标注单个标签相比一张图片标注多个标签要耗时的多,并且很难控制标注的质量。据我们所知,最大的开源多标签图像数据集是Open Images【3】,包含9百万样本与6千类,包含20%的标签噪声。然而,仅仅是在Open Images上面训练的多标签输出的模型,它例如单标签分类对于其他视觉任务的通用性并没有研究【4】。当前,文献【5】在JFT-300M(一个有3亿样本的多标签数据集)上训练的预训练模型在ImageNet数据集上进行微调,获得ImageNet验证集上top-1准确率79.2%。与之相比,在ImageNet-ILSVRC2012数据集上重头开始训练的模型得到了77.5%的top-1准确率。然而,JFT-300M花了2个月时间训练了4epoches,JFT-300M训练集大小是ImageNet-ILSVRC2012的250倍。此外,JTF-300M与它的checkpiont并没有开源。

本文中,我们建立了一个新的大规模多标签数据集,称为Tencent ML-Images。与以往其他数据集从Google搜索或者Flickr收集新数据不同,我们从现有数据集收集样板,例如OpenImages【3】与ImageNet【2】。特别是,我们将他们的词典合并成一个统一的词典,并移除的少见或者冗余的类别和与之对应的样本。我们进一步参照WordNet【6】构建了统一词典的语义层级。我们还派生了类别之间的类共现,然后根据Open Images和ImageNet的原始注释,将其与语义层次结构一起使用,以增强注释。为了验证构建的Tencent ML-Images数据集质量,我们进行深度神经网络的大规模视觉表达学习,我们选择了流行的ResNet-101 V2结构。利用多标签的样本集的大规模学习有两个主要的特点:严重的类间样本不均衡与冗长的训练进程。为了减轻类间不均衡带来的负面影响,我们设计了一种先进的损失函数,同时考虑交叉熵权重、训练过程中的自适应损失权重与每个minibatch中负样本的下采样。为了加速训练进程,我们使用大规模分布式深度学习架构,例如,TFplus,使用MPI与NCCL【7】。所以,整个训练进程花费了90个小时,进行了60个epoches,使用了128块GPUs。单块GPU的效率是【5】中报告的5倍。此外,为了验证ResNet-101在Tencent Images数据集预训练模型的视觉表达质量,我们进行了三种其他类型视觉任务的迁移学习,包括单标签分类,目标检测与语义分割。我们将结果与JFT-300M与ImageNet-ILSVRC2012预训练模型的迁移学习效果分布进行对比。TencntML-Images数据集训练模型更好的迁移学习效果证明了TencentML-Images数据集与预训练模型的高质量。

本文的主要贡献包括如下四个部分:

  1. 我们构建了一个包含1800万图片与11000个类别的多标签样本集,称为Tencent ML-Images,是目前最大的多标签开源数据集。
  2. 我们在TencentML-Images数据集上利用大规模分布式深度学习框架高效的训练了ResNet101模型。此外,我们设计了一种先进的损失函数,降低大规模多标签数据集中严重的类别不均衡带来的负作用。
  3. 我们展示了TencentML-Images与它的预训练模型的高质量,通过3个不同视觉任务的迁移学习表现。
  4. 我们开源了TencentML-Images数据集,预训练ResNet101模型与用于图像分类与特征提取的数据准备、预训练、微调所有相关代码,代码在https://github.com/Tencent/tencent-ml-images。希望可以促进其他视觉任务的研究与工业界的讨论。

本文的组织如下。第二章介绍相关文献的回顾。第三章介绍多标签数据集的构建,包括图像源、类词典、语义层次和标签扩展与统计。第四章展示了TencentML-Images在视觉表达学习的表现。对于单标签分类、目标检测与语义分割的迁移学习表现在第5章中展示,第6章进行总结。

2、相关工作

本章节,我们回顾视觉表达学习中用到的图像数据集。他们可以总体分为两类。一类是单标签图像数据集,每张样本都标注为唯一的标签。另外一类是多标签图像数据集,每张样本都标注了多个标签。

广泛应用的单标签数据集包括CIFAR-10【8】,Caltech-256【9】,MNIST【10】,ImageNet【2】,WebVision【11】,SUN【12】与Places【13】等。深度学习时代之前(2012年之前),大多数数据集都不是很大。CIFAR-10【8】包含6万张分10类的小尺寸自然图片。Caltech-256【9】包含30607张样本,256个目标类别。MNIST【10】包含70K手写数据样本,从0到9。深度学习时代开始(2012),ImageNet【2】是最流行的数据集。它的第一个用于ILSVRC2012的版本包含128K图像,1000个类别。现在扩展称为包含14M图片。许多深度学习模型(例如AlexNet【14】,VGG【15】,ResNet【16】)是在ImageNet上训练与验证来展示他们的表现,基于ImageNet预训练的checkpoints广泛应用在帮助其他视觉任务,例如图像标注,目标检测等。WebVision【11】包含2.4M样本,拥有与ImageNet相同的1000个类别。WebVision与ImageNet主要的不同是WebVision的标注噪声较多,而ImageNet的标注是较为精准的。然而,WebVision的作者通过实验证明,利用足够但是有噪声训练出的AlexNet模型可以获得与在ImageNet上训练的模型相当甚至更好的视觉表达。然而,SOTA的CNN模型,例如,ResNet并没有被评估。除了上述物体类别的数据集以外,还有两个流行的场景分类数据集,包括SUN与Places。SUN【12】包含108754张样本与397场景语义类别。Places【13】包含10M样本,包含434个场景语义类别。然而,场景类别与物体类别相比是较高的语义级别。在场景数据集下训练的视觉表达深度模型可能对于其它视觉任务例如目标检测或者识别不太合适。然而,如第一章提到的,一张样本的主要内容不能被一个标签良好的表达。在单标签样本上学习的视觉表达会浪费训练样本的有效信息,给深度模型带来困扰,因为两张视觉相似的样本可能会标注为两个不同的类别。

也有许多多标签图像数据集

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值