1。简介本文提出了一个全新的MAGIC(iMAge-guidedtextGeneratIonwithCLIP)框架。该框架可以使用图像模态信息来指导预训练的语言模型完成一系列跨模态生成任务,例如图像字幕和基于视觉的故事生成。与其他方法不同,MAGIC框架不需要多模态训练数据,只需要使用现成的语言模型(如GPT-2)和图文匹配模型(如CLIP)即可完成高-质量零样本多模态生成任务。此外,与传统的使用梯度更新生成模型缓存的方法不同,MAGIC框架不需要梯度更新,因此具有更高效的推理效率。论文:https://arxiv.org/abs/2205.02655代码:https://github.com/yxuansu/MAGIC2。研究背景和目的借助越来越强大的预训练语言模型,我们已经可以根据文本前缀生成流畅的文本。目前大部分工作的主要研究方向都集中在利用文本模态的前缀生成后续文本的方法上。然而,如何有效地利用来自其他模态(例如图像)的信息来指导预训练的语言模型生成高质量的文本仍然是一个有待解决的难题。目前,此类问题最常见的解决方案是在收集到的高质量多模态并行数据的基础上,训练多模态模型完成特定的跨模态任务。例如,我们可以在图文匹配的标注数据集上通过监督学习的方式训练图像描述模型,从而根据输入的图像生成相应的文本描述。但该方法存在标注数据获取困难的缺点,并不适用于所有应用场景。为了解决这个问题,许多研究人员提出了一系列弱监督方法。然而,这些方法也有其缺点,它们受到不同多模态任务的特定限制。例如,在图像描述任务中,弱监督方法需要使用特定的对象检测器来收集图像中可识别对象的标签信息。然而,当图像包含目标检测器无法识别的对象(域外对象)时,弱监督方法的有效性会大大降低。为了摆脱对目标检测器的依赖,实现零样本跨模态文本生成,ZeroCap[1]提出在推理阶段通过梯度更新修改生成语言模型内部的隐藏状态,使得生成的文字描述和图片内容尽可能接近。然而,这种方法也有其缺点。通过多次迭代梯度更新来调整模型的内部隐藏状态。在目前预训练语言模型参数越来越多的趋势下,其运行效率会越来越低。这严重限制了该方法在实际场景中的应用。本文提出了一个全新的MAGIC框架。MAGIC通过直接插入可控的图文匹配模型分数,使语言模型在解码过程中选择更接近图像信息的生成结果。这样,该语言模型无需任何跨模态训练即可高质量地解决跨模态生成任务,并获得明显优于弱监督模型的文本生成质量。同时,与ZeroCap相比,MAGIC的推理速度也快了近27倍。3.研究方法3.1无监督语言建模为了适应特定跨模态任务的文本领域,本研究预先使用跨模态训练数据集中的文本数据,并更新语言模型的参数无监督的方式(仅在1个NVIDIA1080Ti中不到两个小时),使语言模型更熟悉领域中的文本分布。具体来说,本文使用MLE损失函数来训练语言模型的参数:此外,SimCTG[2]最近的工作表明,通过引入对比损失来校准模型的语义空间,可以得到更高质量的语言模型获得。因此,本文还同时优化了以下比较损失:其中是margin参数,用于标定生成模型的表示空间,用于计算token表示之间的余弦相似度。最后,本文结合两种损失函数对文本模态的GPT-2语言模型进行了优化:3.2MAGICSearch本文提出了MAGICSearch解码算法。MAGIC使用视觉信息来指导预训练语言模型的生成过程。具体地,给定文本前缀和图像,步骤t的token选择公式如下:其中它表示根据语言模型的概率分布选择的top-k候选token。同时,本研究借鉴SimCTG中对比搜索的思想,在token选择指标中引入模型置信度和退化惩罚项,使模型选择更合适的token。上式中最重要的一项是将视觉控制信息引入模型解码过程的magicscore:其中是CLIP的图像编码器生成的图像表示,CLIP的文本编码器生成的文本表示。参数用于调整视觉信息的控制强度。当其值为0时,语言模型的生成过程不再受视觉信息的影响,魔术搜索退化为传统的对比搜索。4.实验结论4.1Zero-shotImageCaptioning4.1.1实验设置本文在MS-COCO和Flickr30k数据集上进行了大量实验,选取了以下无监督基线进行对比:1.top-k采样:不基于images信息,使用top-k解码方式使用语言模型生成caption2.nucleussampling:不基于图像信息,使用nucleus解码方式使用语言模型生成caption3.contrastivesearch:不基于图像信息,使用对比搜索解码方式使用语言模型生成字幕4.CLIPRe:使用CLIP模型从MS-COCO或Flickr30k训练数据中检索文本数据5.ZeroCap:在解码过程中,使用CLIP信息的方法引导语言模型的梯度更新值得注意的是top-k采样,因为核采样和对比搜索解码方法不是基于图像信息,它们可以被视为文本生成模型在跨模态任务上的性能下限。此外,本文还选取了一批有监督和弱监督的方法进行比较。在评价方法上,本文采用了图像描述中的经典评价指标:BLEU-1、BLEU-4、METEOR、ROUGE-L、CIDEr和SPICE,同时也测试了不同模型的相对解码率。4.1.2MS-COCO和Flickr30k的实验结果如上图所示。本文发现当忽略字幕的信息,只使用语言模型生成时,效果并不好(Top-k,Nucleus,Contrastive),也就是说没有相应的图片信息,很难仅通过语言模型完成这个跨模态任务。虽然CLIPRe方法明显优于Top-k等明文解码方法,但仍弱于目前SOTA无监督方法ZeroCap,这是训练集和测试集数据差异造成的。这也证明检索模型在这个任务上弱于生成模型。本文MAGIC的生成结果明显优于ZeroCap,证明了MAGIC框架的有效性。并且因为MAGIC完全不依赖梯度更新,所以它的解码速度比ZeroCap快了近27倍。4.1.3.跨域实验结果此外,本文还进行了跨域实验,进一步测试MAGIC的泛化能力。具体来说,本文使用在源域(如MS-COCO)上得到的无监督语言模型在目标域(如Flickr30k)的测试集上进行实验。在这个实验中,我们比较了无监督解码方法和CLIPRe。其中,CLIPRe的检索数据集仅来自源域的训练集。实验结果如下:从表中的结果可以发现,MAGIC远优于明文解码方法和CLIPRe的强基线。4.1.4.CaseStudyThisstudyusessomeexamplestoqualitatelycomparethebaselineandthemethodinthispaper:这几个例子表明MAGIC不仅可以生成非常流畅的文本,而且生成的文本中的信息与图像模态之间的相关性更强。比如图(a)中,MAGIC可以准确生成“building”,而ZeroCap却生成了“schoolbus”这个无关紧要的结果。此外,在图(d)中,ZeroCap虽然生成了相关词“boatboard”,但其句子流畅度较低,存在语法错误。相比之下,MAGIC生成的文字流畅,与图片显示的一致。4.2基于视觉的故事生成除了图像字幕任务外,本研究还将MAGIC框架扩展到其他基于视觉的文本生成任务,例如基于视觉的故事生成。在这个任务中,给定一张图片和一个故事标题,模型的任务是生成一个与图片内容和故事标题一致的流畅有趣的故事。4.2.1实验设置本文在ROCStories数据集上进行了实验,并选择了以下文本解码方法作为本研究的基线:(1)贪心搜索;(2)波束搜索;(3)Top-K抽样;(4))细胞核取样;(5)典型抽样;(6)对比搜索。为了达到为ROCStories数据集中的每个测试示例提供一张图片信息的目的,本文使用CLIP模型从公共ConceptCaption数据集中检索与故事标题最相关的图片。为了有效评价模型的效果,本文采用了以下评价指标:1.自动评价指标:本文采用了以往文本生成研究中的一系列评价指标a.n-gram重复率(rep-n)b.生成的文本多样性(div.)c.语义一致性(coh.):生成的故事和标题在语义上是否一致d.图文匹配相关性(CLIPScore)e.MAUVEscore2.人工评价指标:为了更准确的反映生成故事的质量,五位专业标注者从以下几个角度对生成故事的质量进行打分(1-5分,1分最差,5分最好)A。相关性:生成的故事是否与标题相关b.流畅性:生成的故事是否流畅易懂c.信息量:生成的故事是否多样有趣d.故事图片相关性:生成的故事与通过标题检索到的图片语义是否一致4.2.2实验结果如上图所示表明MAGIC在大部分指标上都取得了最好的结果,即明显优于其他方法。其中rep-n、diversity和MAUVE最好的结果表明MAGIC生成的故事更接近人类文本。并且MAGIC在连贯性和图文匹配一致性得分上明显优于其他方法,说明MAGIC在综合利用图文标题信息后,可以生成与标题信息更相关的故事内容。人工评价的效果也表明,MAGIC生成的故事从各个角度都达到了最好的效果。4.2.3案例分析如上图所示,MAGIC可以有效地生成与图片相关的信息。在第一个示例中,MAGIC生成的故事包含详细的冰淇淋类型和口味。除了橙色的结果略有不同外,其他文字与图片中的描述完全吻合。在第二个示例中,对比搜索的结果与故事标题的相关性较低。相比之下,MAGIC生成的内容与图片中的信息和主题高度相关,例如:(1)和朋友在海边;(二)打沙滩排球;(3)比赛持续两个小时;(4)朋友赢了比赛。
