KM-BART: Knowledge Enhanced Multimodal BART for Visual Commonsense Generation
摘要
我们提出了知识增强型多模式BART(KM-BART),它是一种基于Transformer的序列到序列模型,能够从图像和文本的多模式输入中推理常识知识。我们将生成性BART架构(Lewis et al.,2020)改为具有视觉和文本输入的多模式模型。我们进一步开发了新的预训练任务,以提高视觉常识生成(VCG)任务的模型性能。特别是,我们的基于知识的常识生成(Knowledge-based Commonsense Generation,KCG)预训练任务通过利用外部常识知识图预处理的大型语言模型的常识知识,提高了VCG任务的模型性能。据我们所知,我们是第一个提出改进VCG任务模型性能的专门任务的人。实验结果表明,通过应用这些新的预训练任务,我们的模型在VCG任务上达到了最先进的性能(Park等人,2020)。
1 介绍
视觉语言模型的早期工作主要集中在纯理解任务上(Tan和Bansal,2019;Lu等人,2019)。这些模型虽然提高了模型在理解任务(如视觉问答)方面的性能(Antol等人,2015),但无法执行多模态生成任务(You等人,2016)。为了缓解这个问题,研究人员提出了基于视觉输入生成文本的各种模型(Zhou等人,2020;Li等人,2020)
这些模型主要针对一般视觉和语言理解任务进行预处理,如屏蔽语言建模和屏蔽区域建模,这使得模型能够在视觉和语言特征之间建立一致性。然而,只有特征对齐不足以增强模型进行复杂多模态常识推理的能力,这需要模型理解对象之间的潜在关系和效果。
常识推理传统上是研究自然语言的(Rajani et al.,2019;Trinh and Le,2018),而最近的作品则关注结合视觉和语言输入的常识推理。例如,Zellers等人(2019年)提出了视觉常识推理(VCR)的任务。然而,任务的重点是理解,而不是生成,因为它要求模型回答多项选择问题。一个新引入的数据集,即视觉常识生成(VCG)(Park et al.,2020),通过要求模型生成关于前后可能发生的事情以及字符当前意图的常识推断,提供了一个更具挑战性的任务(示例见表2)。在这项工作中,我们建议利用我们的知识增强型多模式BART(Lewis et al.,2020)来解决VCG的任务,我们称之为KMBART。KM-BART是一种基于变压器的模型,由编码器和解码器组成,并根据精心设计的VCG任务进行预训练。图1显示了我们的模型架构1。【https://github.com/FomalhautB/KM-BART-ACL】
我们在这项工作中的贡献有三个方面:
1. 我们扩展了BART模型来处理图像和文本的多模态数据,并通过引入任务相关标记来实现多模态推理。
2. 为了提高视觉常识生成(VCG)的模型性能,我们通过设计一个新的预训练任务,将外部知识图中的常识知识隐式地合并到KM-BART中,我们称之为基于知识的常识生成(KCG)。
3. 除KCG外,我们还为KMBART配备了标准的预训练任务,包括屏蔽语言建模(MLM)、屏蔽区域建模(MRM)以及属性预测(AP)和关系预测(RP)。实验结果表明,所有的预训练任务都是有效的,将这些预训练任务结合起来,可以使KMBART在VCG任务上达到最先进的性能。【MLM:传统的文本屏蔽语言模型,针对是文本流;MRM:模仿MLM,对图片进行屏蔽】
2 相关工作
2.1 视觉语言模型
视觉语言(VL)任务,如视觉问答(VQA)(Antol等人,2015)和图像文本匹配(Li等人,2019),要求模型处理多模态输入并同时理解视觉和文本信息。受BERT(Devlin等人,2019年)和GPT-2(Radford等人,2019年)等成功预处理语言模型的启发,提出了许多多模态图像文本预处理和表示学习模型(Tan和Bansal,2019;Lu等人,199;Chen等人,2020;Yu等人,2020)。这些多模式预处理模型使用Transformers作为主干,并对经过训练的自动编码器进行去噪,以预测图像文本对的对齐以及屏蔽词和图像区域的语义。
上面提到的模型通常更侧重于理解任务。为了进一步弥合多模态数据中视觉线索和文本线索之间的差距,除了跨模态理解之外,模型还应具备完成生成任务的能力,例如图像描述的图像到文本任务(You等人,2016)。然而,直接将基于VL理解任务的预处理模型转换为生成任务是不可行的,因为这些模型仅仅是基于Transformer的编码器,因此不适用于生成任务。
Zhou等人(2020年)通过使用基于Transformer的网络作为编码器和解码器来缓解这个问题,使模型能够根据视觉和文本输入生成文本。而Li等人(2020年)提出OSCAR,通过在预训练期间引入对象标记作为额外线索来提高生成能力。这些模型在下游多模式生成任务(如图像描述)中实现了最先进的性能(You等人,2016)。
2.2 常识知识
常识是指对大多数人常见的日常情况和事件所需的实践知识和推理水平(Sap等人,2020年)。例如,人们应该知道“水是用来喝的”和“阳光使人温暖”。尽管看起来很简单,但让人工智能进行常识推理对于基于学习的模型来说很难(Gunning,2018)。为了克服这一问题,研究人员借助于知识图谱,因为它们是知识的精确图形结构表示。例如,ConceptNet(Speer等人,2017)是一个知识图谱,其中节点表示一般概念,边表示概念之间的关系知识。另一个常识知识图谱ATOMIC(Sap et al.,2019)将节点扩展到自然语言短语,并将边缘扩展到关系,如意图、归因、效果等。
尽管在建模常识知识方面有所改进,但基于图的方法需要大量的人类工程,这使其难以进行大规模扩展。例如,当检索到的上下文知识由于不完美的知识匹配而产生噪声时,模型性能通常会急剧下降(Lin等人,2019)。因此,我们使用COMET(Bosselut et al.,2019)推断的监督信号隐式利用外部知识,这是一个基于Transformer的生成模型,预处理了常识知识图谱,包括ConceptNet和Atomic。给定自然语言短语和关系类型,COMET生成自然语言常识描述。
总之,一方面,现有的跨模态体系结构不注重常识解释,因为它们的预训练任务是为多模态理解而设计的,因此不适合用于下游VCG任务。另一方面,基于Transformer的生成模型,如COMET(Bosselut et al.,2019),无法从跨模态输入中生成常识推断。因此,在这项工作中,我们建议KM-BART执行视觉常识生成(VCG)任务。我们的KM-BART在VCG专用预培训任务以及其他标准预培训任务上进行预培训。实验结果表明,我们的KM-BART在VCG任务上达到了最先进的性能。
3 方法
在本节中,我们描述了生成视觉常识的方法。第3.1节给出了我们的模型架构。第3.2节介绍了我们的预培训任务以及基于自我训练的数据过滤技术。
3.1 模型架构
图1说明了KMBART的架构。我们模型的主干是BART(Lewis et al.,2020),它是一种基于变压器的序列到序列自动编码器。我们修改了原始BART,使模型适应图像和文本的交叉模态输入。我们添加特殊标记,以使模型适应不同的预培训/评估任务。在以下小节中,我们给出了视觉特征提取器、编码器和解码的详细信息。
3.1.1 视觉特征提取器
根据之前关于视觉语言模型的工作(Tan and Bansal,2019;Lu et al.,2019),我们使用COCO数据集上预处理的卷积神经网络提取视觉嵌入,然后将其输入到基于Transformer的交叉模式编码器。具体来说,我们使用detectron2[https://github.com/facebookresearch/detectron2]中的预处理屏蔽R-CNN(He et al.,2017)。对于每个图像,预处理屏蔽的R-CNN提出检测对象的边界框。边界框内的区域是感兴趣区域(Rol)。我们利用蒙版R-CNN中Rol的中间表示来获得RoIs V={v1,…,vi,…,UN}的固定大小嵌入,其中i是RoIs的索引,N是图像的RoIs数。第i页第vi页的视觉嵌入是vi ∈Rd,其中d是嵌入维度。对于每个RoI,屏蔽R-CNN还输出类分布p(vi),稍后用于屏蔽区域建模。
3.1.2 交叉模式编码器
继Lewis等人(2020年)之后,我们模型的编码器基于多层双向Transformer。我们引入了特殊的代币,以适应我们的培训前和下游评估任务。具体来说,每个示例都以一个特殊标记开始,该标记指示当前示例的任务类型。
对于基于知识的常识生成的预训练任务(见第3.2.1节),我们使用<before>、<after>或<intent>作为起始特殊标记。对于归因预测和关系预测(第3.2.2节),我们使用<region caption>。最后,对于屏蔽语言建模和屏蔽区域建模,我们使用<caption>。
此外,为了告知模型不同的输入模式,我们添加了三组不同的特殊标记:对于图像,我们使用<img>和</img>分别表示视觉嵌入的开始和结束。对于文本,我们引入不同的特殊标记来区分两组文本输入:事件和标题。事件是模型用于推理未来/过去事件或常识生成任务中角色的当前意图的图像描述,而字幕用于蒙蔽语言建模,其中语言信息起着更重要的作用。因此,为了通知这两种文本输入的模型,我们使用<event>和</event>表示事件,使用<mlm>和</mlm>表示标题。在下面的部分中,我们用W={w1,..,wT}表示单词和特殊标记的文本输入,其中T是文本输入的长度。对于标记w,其嵌入为e∈ R d,其中d是嵌入件的尺寸。
3.1.3 解码器
我们模型的解码器也是一个多层Transformer。与编码器不同,编码器是双向的,解码器是单向的,因为它在生成文本时应该是自回归的。解码器不将视觉嵌入作为输入。相反,我们使用特殊标记<img-feat>的嵌入来替换实际的可视嵌入。对于屏蔽区域建模和屏蔽语言建模,我们使用<cls>替换屏蔽区域或单词(见图1)。该模型应预测预训练过程中的蒙蔽词和蒙蔽区域的类别分布。
3.2 预训练任务
为了预训练我们的模型,我们使用四个图像文本数据集:概念描述数据集(Sharma等人,2018)、SBU数据集(Ordonez等人,2011)、Microsoft COCO数据集(Lin等人,2014)和Visual Genome(Krishna等人,2017)。在本节的剩余部分中,使用D表示每个预训练任务的单个数据集。
表1给出了数据集的统计数据。上述数据集由平行图像和文本的示例组成,并在之前的工作中广泛使用(Tan和Bansal,2019;Lu等人,2019年;Zhou等人,2020年;Yu等人,2020年)。
3.2.1 基于知识的常识生成
基于知识的共识生成(KCG)任务旨在提高KM-BART在VCG任务中的性能。我们利用从COMET(Bosselut et al.,2019)导出的知识,这是一个在外部常识知识图上预处理的大型语言模型。给定一个自然语言短语和一个关系作为输入,COMET生成自然语言短语作为常识描述。COMET的关系包括xIntent、xWant、xNeed、xReact和xEffect。
由于预处理的计算能力有限,我们仅使用COMET生成SBU和COCO数据集的新常识描述。对于每个图像-文本对,我们使用COMET从使用上述所有五种关系的文本中生成常识性描述。为了使COMET生成的常识知识适应VCG,我们将COMET的xIntent和xWant关系视为意图,将xNeed视为之前,将xReact和xEffect视为之后。通过这种方式,我们为SBU和COCO数据集生成了额外的常识知识。新生成的数据集有360多万个示例(表3)。然而,生成的常识知识并不总是合理的,因为只使用文本信息,而完全忽略视觉信息。为了缓解这个问题,我们采用基于自训练的数据过滤策略进一步过滤数据集。
基于自我训练的数据过滤 我们的策略旨在过滤生成的常识知识数据集,使过滤数据集中的示例与VCG数据集中的实例非常相似。为了实现这一目标,我们首先使用BART参数初始化KM-BART,并对VCG数据集上的KM-BART30个时段进行微调。微调后的KM-BART在VCG数据集上已经具有良好的性能,CIDER得分为39.13(见表4)。
然后,我们利用这个微调模型来评估COMET生成的常识描述的质量。我们将相应的图像、文本和关系作为输入提供给经过微调的KM-BART,然后计算COMET生成的常识描述的交叉熵(CE)损失。我们发现,CE损耗较低的常识描述比CE损耗较高的描述更有意义。请注意,当计算COMET生成的常识性描述的CE损失时,我们的KM-BART同时利用文本输入和视觉输入。我们在补充资料中提供了我们的数据过滤策略示例。
我们计算了VCG数据集和COMET生成的新数据集中所有常识描述的CE损失。图2显示了两个数据集的CE损失分布。我们观察到,COMET生成的常识描述会导致较高的CE损失,这是预期的,因为在使用COMET生成自然语言常识描述时,图像被完全忽略。我们只保留CE损失低于3.5的示例。表3显示了数据过滤前后生成的数据集的统计信息。通过过滤,我们只保留了146万个示例,大约占原始示例的40%。
最后,我们通过对KMBART进行预训练来利用新生成的常识知识集。我们期望通过预训练,该模型在VCG数据集上达到更高的性能。
其中,L是生成序列的长度,L是目标常识描述中各个标记的索引,S、V和W分别是视觉输入和文本输入。θ表示要优化的模型参数。
3.2.2 属性预测和关系预测
视觉基因组数据集由230万个关系和280万个属性组成。为了利用这些数据,我们使用属性预测(AP)和关系预测(RP)作为预处理任务,使模型能够学习图像中不同对象之间的内在属性。
在AP任务中,我们将每个图像特征的解码器输出向量送入MLP分类器。在RP任务中,我们为每个图像特征对连接解码器的两个输出向量,并将其送入另一个MLP分类器。我们对两个任务都使用交叉熵损失。
我们用1表示AP的指数≤ j≤ A、 RP指数为1≤ k≤ R、 其中A是AP示例的数量,R是RP示例的数量。我们用La(vj)表示第j个AP示例的标签,将第k个RP示例的标签表示为Lr(vk1,vk2),其中vk1和vk1是当前RP示例的两个RoI。AP任务的损失函数为:
3.2.3 屏蔽语言建模
继之前的工作(Devlin等人,2019年;Liu等人,201九年)之后,我们在屏蔽语言建模(MLM)任务中随机屏蔽输入文本标记,概率为15%。在这15%的令牌中,我们使用<mask>以80%的概率替换掩码令牌,使用随机令牌以10%的概率替换,并以10%的几率保持掩码令牌不变。
我们用1表示掩码索引≤ 米≤ M、 其中M是掩码标记的数量。我们用wm表示已屏蔽的令牌,其余未被w\m屏蔽的令牌的损失函数定义为:
3.2.4 遮蔽区域建模
在屏蔽区域建模(MRM)任务中,我们对图像区域进行采样,并以15%的概率屏蔽相应的特征向量。遮罩向量将替换为一个填充了零的向量。该模型需要预测屏蔽区域的语义类分布。损失函数是为了最小化输出分布的KL发散和视觉特征提取中使用的屏蔽R-CNN预测的分布。
3.2.5 合并损失
为了合并上述所有损失,我们按照 WKCG、 WAP、 WRP、 WMLM、 WMRM ∈ R 对每个损失进行加权。在每个训练阶段,权重的选择是为了大致平衡每个时期,最后的损失是:、
4 实验
我们在这一部分描述我们的实验。第4.1节是不同预训练和初始化策略的实验设置。第4.2节给出了评估任务和指标。我们在4.3节中展示了我们的结果。在4.4节中,我们给出了由我们的模型生成的示例推理。我们在4.5部分有人体评估结果。
4.1 设置
在我们的实验中,根据 Lewis 等人(2020)的基本模型,我们将模型结构固定在一个6层编码器和一个6层解码器上。为了理解每个预训练任务是如何帮助 VCG 的下游任务建模的,我们对预训练任务进行了研究。我们使用以下实验设置: (1)没有任何预训练; (2)只有基于知识的常识生成; (3)只有属性预测和关系预测; (4)只有蒙版语言建模和蒙版区域建模; (4)所有预训练任务结合起来。因为只有基于知识的常识生成,我们进一步比较了数据过滤前后的模型性能(参见3.2.1节)。
对于上面的每个设置,我们分别从随机或 BART 权重初始化模型。此外,我们最感兴趣的是在两种设置下的模型性能(见表4的第二列) : (1)只使用图像作为输入; (2)使用图像和事件描述作为输入。请注意,当仅使用图像作为评估输入时,我们也不会在预训练/微调期间使用文本输入。
4.2 评估任务和指标
我们根据最近提出的可视化常识生成(VCG)数据集来评估我们的模型(Park et al。给定一个图像和对图像中事件的描述,任务的目的是预测可能发生在图像之前/之后的事件,以及给定图像中人物的当前意图。该数据集由1174K 训练实例和146K 验证实例组成。数据集中的一些示例共享相同的图像或事件,但对事件之前/之后或目前的意图有不同的推断。表2给出了一个数据集示例。我们在验证集上报告我们的模型性能,因为测试集还不可用。
除了事件描述之外,VCG 数据集还为每个图像提供了地点和人物信息。请注意,尽管 Park 等人(2020)也利用 Place 和 Person 信息进行培训和评估,但我们认为这些信息通常不能在只提供图像和事件描述的正常设置中获得。因此,我们不使用我们的 KM-BART 中的地点和人信息。作为额外的参考,我们仍然在表5中显示了 Park 等人(2020)的最佳执行模型,它们也使用 Place 和 Person 信息。
我们使用三个自动评估指标,包括 BLEU-2(Papineni 等,2002) ,METEOR (Denkowski 和 Lavie,2014)和 CIDER (Vedantam 等,2015)。继 Park 等人(2020)之后,我们还报告了 Unique 作为生成句子中唯一的推理句子数除以句子总数,而小说作为训练数据中未除以句子总数的生成句子数。
4.3 结果
我们首先对不同的训练前任务进行切割,以了解每个任务的效果。然后我们将所有的预训练任务结合在一起来训练我们的完整模型。作为最后一步,我们选择性能最好的模型与以前的最先进的系统进行比较(Park et al。 ,2020)。
表4显示了每个预训练任务对我们的 KM-BART 对 VCG 数据集的影响。我们可以看到,我们所有的预训练任务有助于提高模型的性能。最重要的是,我们观察到,尽管对常识生成预训练任务的过滤使数据集大小减少了60% 以上,但用 KCG 进行预训练仍然比用 KCG 进行预训练(过滤前)达到相当或更好的性能。这说明我们的基于自训练的滤波技术是有帮助的,因为它有助于模型达到相似甚至更好的性能与较少的训练数据。当我们从 BART 参数初始化并使用图像和事件描述作为输入时,这种优势最为明显。在这种情况下,与 KCG 预训练优于 KCG 预训练(滤波前)的所有评估指标。
对于同时使用图像和事件描述作为输入,当从预先训练的 BART 参数初始化时,模型表现得更好。由于预先训练的 BART 可以更好地利用事件描述中的信息。因此,为了获得以图像和事件作为输入的完整 KMBART 模型,我们采用了从 BART 参数初始化的设置。实验结果表明,我们的完整模型在 BLEU-2、 METEOR 和 CIDER 上达到了较高的性能,并且完整模型产生了最独特、最新颖的推论。
对于仅使用图像作为输入,从随机参数初始化的模型优于从 BART 参数初始化的模型。我们认为从 BART 参数初始化会导致优化的缺点,模型必须从纯文本输入切换到纯视觉输入。这一观察结果变得明显,因为模型在没有使用预训练时表现最差,这表明模型必须完全依赖于 VCG 数据集的微调来适应视觉输入。因此,对于只使用图像作为输入,我们从随机参数初始化得到完整的 KM-BART 模型。我们的完整型号在 BLEU-2,METEOR 和 CIDER 上达到最佳性能,在 Unique 方面排名第二。
在表5中,我们将我们的完整模型与之前的最先进的模型进行了比较(Park et al。 ,2020)。3我们观察到,尽管我们的完整模型将图像和事件描述作为输入并没有使用 Place 和 Person 信息,但是该模型仍然优于之前的最先进的模型(Park et al。(2020) c)。由于只使用图像作为输入,我们的模型也比以前的结果表现得更好(Park et al。(2020) b).此外,我们的模型在 BLEU-2,METEOR 和 CIDER 方面达到了与 Park 等人(2020) a 相当的性能,在 Unique 和 Novelty 方面具有更高的性能,尽管与 Park 等人相比,我们的模型在训练期间使用的信息要少得多(2020) a。
4.4 案例研究
在表2中,我们展示了示例推理,并将我们的模型预测结果与地面真相进行了比较。从模型中生成的句子,如果没有事件描述作为输入,就已经能够捕获常识中最重要的信息。我们还观察到,向输入添加事件描述有助于模型生成更多细节。我们在附录中给出了我们的模型的更多例子。
4.5 人类评估
我们进行人类评估,以进一步了解人类如何感知知识管理 -BART 所产生的推论。我们采用一种比较的方法来更好地评估我们的 KM-BART 和来自 Park 等人(2020)的模型。具体来说,我们从 VCG 验证集中随机抽取30个样本。对于每个示例,我们使用 KMBART 或基线模型来生成5组推断,每组推断由任务类型之前、之后和意图组成。
我们使用两种设置来进行人工评估: (1)对于事件: 事件描述在推理时间中作为输入; (2)没有事件: 事件描述在推理时间中不作为输入。在每个设置下,我们比较我们的 KMBART 模型和 Park 等人(2020)的模式。在这两个设置下,我们对每个模型使用相同的30个示例。对于任务类型(之前、之后或意图)中的每个示例,我们为每个设置的一个模型生成5个推断。在人类评估期间,我们总共为每个设置的每个模型生成了450个推断。
对于同一个例子,我们使用我们的 KM-BART 和来自 Park 等人(2020)的模型在三个任务类型之一下生成一个推理,然后工作者从两个生成的推理中选择更合理的推理。我们从亚马逊机械 Turk4雇佣了三名工人来评估每个推论。我们以三个工人中的大多数作为最终的评价进行推论。在所有的推论中,我们使用一个模型比另一个模型更好的百分比作为该模型的得分。例如,在表6中,在缺少事件描述之前,我们的模型(Our)对任务类型的得分为61.3。这表明在61.3% 的案例中,我们的模型在任务类型方面优于基线模型。我们还将这三种任务类型的平均值作为最终得分(参见表6中的 Total)。
从表6中,我们可以观察到,在这两种设置下,我们的模型都优于 Park 等人(2020)。具体来说,当没有给出事件描述时,在所有的推论中,我们的模型在66.7% 的情况下优于 Park 等人(2020)。此外,我们的模型在每个单独的任务中至少比 Park 等人(2020)领先22.6% 。例如,我们的模型在任务类型的68.7% 的情况下产生更好的推论,而 Park 等人(2020)的模型在31.3% 的情况下仅优于我们的模型。我们可以在查看任务类型之前和意图时获得类似的结果。
当给出事件描述时,我们的模型在55.1% 的情况下仍优于 Park 等人(2020)。对于每个单独的任务,给出事件描述时的优势小于不给出事件描述时的优势,表明我们的模型能够更好地从图像中捕获信息
5 结论和未来工作
在本文中,我们提出了知识增强型多模态BAR T(KM-BART),它是一种基于Transformer的模型,能够从图像和文本的跨模态输入中推理并生成常识性描述。我们提出了基于知识的常识生成的预训练任务,该任务通过利用外部常识知识图上预训练的大型语言模型来提高KM-BART的推理能力。我们使用自我训练技术来过滤自动生成的常识描述。在VCG任务上的实验结果表明,我们在预训练任务上预训练的KM-BART达到了最先进的性能。进一步的人类评估表明,我们的KM-BART可以生成高质量的常识推理。
对于未来的工作,我们计划进一步扩展基于知识的常识生成的预训练数据集,包括概念字幕数据集(Sharma等人,2018)。此外,虽然我们认为Place和Person信息在实际场景中通常不可用,但我们仍计划在未来将Place和Person信息添加到我们的模型中。