21.VIVO: Visual Vocabulary Pre-Training for Novel Object Captioning

生成能够描述在字幕标注的训练数据中看不见的新对象的图像字幕是非常理想的,但也是具有挑战性的,这是在新对象字幕挑战(nocaps)中评估的能力。在这个挑战,没有额外的图像字幕训练数据,COCO字幕是允许的模型训练。因此,传统的视觉语言预训练(VLP)方法无法应用。本文提出了在没有字幕标注的情况下进行预训练的视觉词汇预训练(VIVO)。通过打破VLP中成对图像-标题训练数据的依赖关系,VIVO可以利用大量成对图像-标签数据来学习视觉词汇。这是通过对一个多层Transformer模型进行预训练来实现的,该模型学会了将图像级标签与其对应的图像区域特征对齐。为了解决图像标签的无序性,VIVO使用匈牙利匹配损失和masked标签预测来进行预训练。我们通过微调图像字幕的预训练模型来验证VIVO的有效性。此外,我们还对由我们的模型推断出来的视觉-文本对齐进行了分析。结果表明,该模型不仅能够生成流畅的描述新目标的图像标题,而且能够识别出这些目标的位置。我们的单一模型已经在无上限上取得了新的最先进的结果。

一.Introduction

为了改善野外的图像字幕,我们开发了nocaps基准(Agrawal等人,2019)来在尺度上评估Novel Object字幕(NOC)。nocaps的训练数据是由图像-标题对和包含边界框和图像级标签的Open Images数据集(Kuznetsova等人,2020)组成的COCO数据集。测试数据由从Open images中选择的图像组成,其中包含了近400个在COCO数据集中看不到或很少看到的对象。这就提出了一个挑战,即如何生成描述在配对图像-字幕训练中看不到的新奇物体的字幕。

在本文中,我们提出了视觉词汇(VIVO)的预训练,利用大量的视觉数据,没有字幕标注,学习丰富的视觉词汇为NOC。我们将视觉词汇定义为一个关节embedding空间,将语义相似的对象的图像区域特征和标签映射为彼此接近的向量,如person和man、accordion和instrument。一旦预先训练了视觉词汇表,我们就可以使用图像-标题对对模型进行微调,以生成标题。注意,用于微调的数据集只涵盖了学习到的视觉词汇表中最常出现的对象的一小部分。尽管如此,由于预先训练的视觉词汇,我们的模型可以概括到包含类似场景的任何图像(例如,图1中人们坐在沙发上),以及在微调数据集中看不到的新对象。VIVO模型是对图像-标签对进行预训练的。据我们所知, VIVO是第一个不依赖字幕标注的VLP方法。因此,它为VLP提供了利用许多现有视觉数据集的可能性。

VIVO预训练的目的是学习视觉和文本输入的联合表示。我们向多层Transformer模型提供一个由图像区域特征和成对的图像标记集组成的输入。然后我们随机地屏蔽一个或多个标签,并要求模型根据图像区域特征和其他标签的条件来预测这些被屏蔽标签。考虑到标签无序,我们使用匈牙利匹配损失(Stewart, Andriluka,和Ng 2016;Carion等人,2020)用于标签预测优化。大量实验表明,VIVO预训练显著提高了字幕的性能。

总之,我们做出了以下贡献。我们提出了一种新的VIVO预训练方法,在没有字幕标注的情况下大量视觉数据,用于视觉语言表征学习。我们开发了一种带masked标签预测的匈牙利匹配损失算法来进行图像标签对的预训练。通过一个单一的模型,我们的方法在nocaps基准上获得了最新的结果,并超过了人类CIDEr评分。

在本文中,我们提出了视觉词汇(VIVO)的预训练,利用大量的视觉数据,没有字幕标注,学习丰富的视觉词汇为NOC。

一旦预先训练了视觉词汇表,我们就可以使用图像-标题对对模型进行微调,以生成标题。注意,用于微调的数据集只涵盖了学习到的视觉词汇表中最常出现的对象的一小部分。尽管如此,由于预先训练的视觉词汇,我们的模型可以概括到包含类似场景的任何图像(例如,图1中人们坐在沙发上),以及在微调数据集中看不到的新对象,如“accordion”。

与传统的视觉语言预训练(VLP)方法相似,VIVO预训练方法也有学习跨模态语义对齐的动机。然而,与现有的VLP模型不同,VLP模型是对图像-标题对进行预训练的,VIVO模型是对图像-标签对进行预训练的。据我们所知,VIVO是第一个不依赖字幕标注的VLP方法。因此,它为VLP提供了利用许多现有视觉数据集的可能性,这些数据集最初是为图像标记或对象检测任务开发的,如ImageNet (Deng等人,2009年)、Open Images (Kuznetsova等人,2020年)。Objects365 (Shao等人,2019年)等。此外,我们还可以利用大量的图像,将机器生成的标签作为弱监督信号,用于VLP。

VIVO预训练的目的是学习视觉和文本输入的联合表示。我们向多层Transformer模型提供一个由图像区域特征和成对的图像标记集组成的输入。然后我们随机地屏蔽一个或多个标签,并要求模型根据图像区域特征和其他标签的条件来预测这些被屏蔽标签。考虑到标签没有被订购,我们使用匈牙利匹配损失(Stewart, Andriluka,和Ng 2016;Carion等人,2020)用于标签预测优化。大量实验表明,VIVO预训练显著提高了字幕的性能。

在BERT (Devlin et al. 2018)的推动下,许多VLP方法被提出,通过预训练大规模Transformer模型来学习视觉语言表示(Lu et al. 2019;Tan和Bansal 2019年;Su et al. 2019;Chen et al. 2020;Zhou et al. 2020a;Li et al. 2020)。现有的VLP方法大多是为了理解诸如图像-文本检索和视觉问题回答等任务而开发的。只有少数人(Zhou et al. 2020a;Li et al. 2020)可以应用于图像标题。但这些方法都是使用成对的图像-字幕数据进行训练,并不适用于NOC。在本研究中,我们首次打破了VLP中图像-标题对的依赖关系。

最近的图像字幕模型在具有大量成对图像字幕训练数据的任务上取得了令人印象深刻的效果。但它们对野外图像的泛化能力较差,野外图像中有各种各样的视觉对象,而这些对象在训练的字幕语料库中是看不到的。例如,在COCO字幕上训练的模型可以忠实地描述包含对象的图像,如“人”,“狗”,或“沙发”,但不能为任何包含“手风琴”的图像生成一个合理的字幕,因为对象在COCO字幕中是看不到的。

VIVO Pre-training

与许多现有的依赖于图像-标题对的VLP方法不同,VIVO的预训练仅在图像-标签对上进行。标题和一组标记之间的主要区别是,标题中的单词是有序的,而标记是无序的。当两个标签同时被屏蔽时,这种无序的性质可能会导致标签预测的歧义。例如,如果蒙面令牌是“dog”和“cat”,我们可以预测任意位置的每个令牌,而不限制输入中的原始位置或顺序。

Fine-tuning and Inference

在进行预训练之后,Transformer模型将在标题和标记都可用的数据集上进行微调,例如,使用来自80个对象类和标题的标记进行注释的COCO集。标签也可以使用预先训练的标签或检测模型自动生成。在给定图像区域和标签后,该模型学习预测条件标题句中某些位置被随机屏蔽的情况。更具体地说,在精细调整过程中,模型的输入是一组图像区域特征V,一组标签T和一个标题C,其中V和T的构造方式与前训练中描述的相同,C是一个标记序列。在微调过程中,我们随机屏蔽标题句中的一些标记进行预测,并使用交叉熵损失优化模型参数。为了使模型在引用时间从左向右生成标题,在微调过程中,我们对标题序列应用单向注意掩模,以防止位置指向后续位置。在推理过程中,我们首先从给定的图像中提取图像区域特征并检测标签。然后应用该模型生成一个序列,每次一个标记,直到输出句子结束标记或达到最大长度。在每个步骤中,模型都是自回归的,在生成下一个步骤时,将使用之前生成的令牌作为额外的输入。在下一节中,我们展示了大量的实验结果,表明我们的模型可以生成描述新对象的标题,并且从VIVO前训练中学习到的图像区域和标签之间的对齐对模型在NOC上的卓越性能至关重要。

二 Experiments

Experimental Settings

数据集:V5数据集,1.7M images用于VIVO预训练。从边界框注释选择500类,6.4k个类从人类验证图片级别的标签。在VIVO前训练中使用图像-标签对,共包含6.4K唯一类。在微调阶段,训练数据为118K图像的COCO训练集,每个图像有5个字幕。我们在nocaps的验证和测试集上评估了我们的模型,这些验证和测试集分别由来自Open images验证和测试集的4.5K和10.6K图像组成。

Implementation Details

我们使用一个在Open images数据集上训练的对象检测器来检测所有数据集的对象标签。为了进行预训练和微调,我们还添加了训练集中的ground-truth标签。nocaps验证和测试集没有使用ground-truth标签。Transformer模型使用BERT-base进行初始化(Devlin et al. 2018),其中我们添加了一个线性层,将图像区域特征转换为与单词嵌入相同大小的向量。

在VIVO预训练中,我们最多使用50个图像区域和每个图像15个标记。模型训练160K次迭代(约100个epoch),批处理大小为1024,学习速率为5 10 5。在微调中,我们将最大标题长度设置为40,最大标记长度设置为30。该模型训练了30个epoch,批数为256,学习率为5 10 5,利用交叉熵损失进行优化。为了进一步提高性能,我们进行了SCST优化(Rennie等人,2017),5个epoch的学习率为2*10^-6。在推理过程中,我们使用贪心解码来生成最大长度为20的图像标题。

Visual-Text Alignment

为了进一步了解VIVO预训练在视觉词汇学习中的效果,它将图像区域与对象标签对齐,我们展示了如何将新的对象标签固定在图像区域。给定来自Open images验证集的图像,我们使用相同的对象检测器从up – down提取图像区域特征,并使用VIVO预训练从字幕模型生成字幕。在生成的标题中识别出新的对象后,我们将新的对象标签,连同提取的图像区域特征,输入到VIVO预训练的Transformer模型。最后一层编码器的输出被用作相应输入的上下文化表示。然后计算每对图像区域和目标标签表示之间的余弦相似度。

General Image Captioning

Ablation Study

我们从开放图像训练集中选取10%的图像子集进行消融研究。我们使用交叉熵损失对COCO数据集进行微调,并报告nocaps验证集的性能

Using a Larger Set of Tags

我们研究了在训练前使用更大的标签集是否能提高下游图像标题任务的性能。我们从整体的6.4K类标签中选取500类用于训练目标检测器的对象进行VIVO预训练。如表5所示,500个class的VIVO预训练与未预训练相比,在nocaps上的性能显著提高了6.9%。将标签扩展到6.4K类可以进一步提高性能,尽管由于测试图像中呈现的对象的多样性增加,增益是有限的。

Using Hungarian Matching Loss

我们评估提出的匈牙利匹配在VIVO预训练预测一组标签的有效性。没有匈牙利语匹配的训练将标签预测减少到标准的masked语言建模任务,该任务以与输入序列相同的顺序预测masked令牌。此外,我们还进行了VIVO预训练,在输入时只屏蔽一对,使得语序信息不被充分利用。nocaps验证集的评估结果如表6所示。我们可以看到,只屏蔽一个令牌是无效的,使用匈牙利匹配导致了最佳的模型性能。

三 Conclusions

我们提出了一种弱监督学习方法,分两步来训练图像字幕模型。首先,基于transformer的模型在大量的图像标签对上进行预训练,以学习视觉词汇,而不需要使用难以获得的图像-标题对。然后,对图像-字幕对进行微调,学习从预先训练的视觉词汇中吸收信息,并组合出能够描述图像-字幕对训练数据中未出现的新视觉对象的图像字幕。我们在nocaps基准数据集上的实验表明,我们的模型实现了合成概化,用于图像标注。因此,我们最好的单一模型创造了新的最先进的技术。详细分析表明,泛化在很大程度上归因于模型前训练中学习的视觉词汇,它将语义相似的视觉对象或区域映射到离散语义空间中相邻的特征向量上。由于我们的前训练不需要成对的图像-标题数据,我们未来的工作之一是利用大量的视觉数据,而不是本文中使用的图像-标签对,以显著提高视觉词汇的质量。

原文链接:https://blog.csdn.net/qq_41887799/article/details/123932894?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165277698216781667888684%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165277698216781667888684&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-28-123932894-null-null.nonecase&utm_term=vivo

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
文明发言,共建和谐米科社区
提交
头像

昵称

取消
昵称表情图片