论文笔记:Beyond a Pre-Trained Object Detector:Cross-Modal Textual and Visual Context for Image Caption

前言

这篇论文是CVPR2022的一篇文章,代码也已经开源。这博客主要分享自己的一些理解,详情可以去阅读原文。


论文思想

这篇论文首先提出了一个问题是当前的大多数图像描述模型主要依赖预训练的图像特征和一个固定的目标检测器。然而,这种方法的一个关键限制是,模型的输出仅依赖于对象检测器的输出。(极端点的理解,哪怕视觉特征提取得再好,你目标检测模块检测不到那个目标,那就无法输出这个目标的任何信息,个人理解,不喜轻喷)。这一现象显然是存在一定问题的,特别是当检测器是跨数据集传输时。

所以,作者建议在以往的架构中添加一个辅助输入,用于表示缺失的信息(例如对象关系)

论文笔记:Beyond a Pre-Trained Object Detector:Cross-Modal Textual and Visual Context for Image Caption_第1张图片

 如图1所示,论文紧接着就分析了当前大多数模型存在的问题有两点:

1)物体检测模型编码以对象为中心的信息,(比如:类别,位置,属性等)能力较强,而对物体关系、整体图像级别的信息的编码能力较弱,这些信息对图像描述任务也是很重要的

2)因为这些模型参数都是冻结的,所以物体检测模型没有在新数据集上根据相应的任务进行调整,它生成的特征可能不太适合新任务,被检测到的对象和输入图像之间的关系并没有与目标任务共同优化。

接下来就是解决这两个问题的思路

(1)对于第一个问题,论文描述是受视觉基因组数据集构建方式的启发,论文建议以图像子区域的上下文文本描述的形式提供互补但必要的信息。然而,生成图像子区域的描述需要训练另一个图像字幕模型,这本身可能不是一件容易的任务。因此,我们建议将文本生成问题转化为一个跨模态检索问题:给定一个图像子区域,从描述数据库中检索前k个最相关的文本描述。

其实说到图像文本的匹配,那就直接可以用现成的了——CLIP,论文也用实验证明通过CLIP检索到的文本描述与图像查询更相关。通过CLIP检索到的文本描述提供了丰富和互补的信息,从而导致了实质性的性能改进。

(2)对于第二个问题,既然无法联合优化,应该首先将输入图像以一种保留与目标VL任务相关的尽可能多信息的方式将其编码为全局特征表示。在论文中,选择了CLIP模型的图像分支CLIP-I作为图像编码器。由于CLIP也是在跨模态VL任务上进行预训练的,与仅在图像数据集上进行预训练的模型相比,它可以更好地编码与目标VL任务相关的信息。然后,使用一个全连接(FC)层,它与目标VL任务联合优化,来建模条件关系。


 论文方法

论文笔记:Beyond a Pre-Trained Object Detector:Cross-Modal Textual and Visual Context for Image Caption_第2张图片

 大多数现有的工作模型如图2a所示,给定一个输入图像X,一组被冻结的预训练对象检测器O,生成标题Y。

为了缓解问题(1),一个主要的解决方案是预先训练对象检测器来预测其他信息,如对象之间的谓词,以便可以编码更完整的信息,因此,在本文中,我们建议在模型中插入另一个节点T,如图2b所示,以编码与O互补的信息,而无需重新训练对象检测器。

 

论文笔记:Beyond a Pre-Trained Object Detector:Cross-Modal Textual and Visual Context for Image Caption_第3张图片

 整个算法的流程图如图3所示,作者也对每个颜色的表示做了相应的解释:

为了解决问题(1),我们引入了一个跨模态检索模块(黄色框)来检索一组文本描述T,该描述从输入图像中编码与检测到的对象O互补的信息。

为了解决问题(2),使用全连接(FC)层来细化基于输入图像X的特征来细化每个被检测对象的特征。我们引入了一个图像调节模块(绿框),来加强被检测对象和输入图像之间的条件关系。

那很显然,蓝色框就是跟大多数模型一样根据提前预训练的目标检测器而提取的目标视觉编码信息。

论文作者提出他们方法的关键是,为了解决两个问题而提出的两种方法都将允许利用最近引入的大规模跨模态模型。


文本描述T的介绍

首先论文举了一个很好的例子,假设当一个人被要求描述一幅图像时,他/她可能首先关注图像的局部区域,然后逐渐合并局部信息,生成对整个图像的最终描述。同样,论文建议为如图4所示的图像子区域生成文本描述,以便这些描述包含更多的细节,并提供更完整的输入图像信息,可以在后期合并。

论文笔记:Beyond a Pre-Trained Object Detector:Cross-Modal Textual and Visual Context for Image Caption_第4张图片


 我们的目标是从给定一个图像子区域查询的描述数据库中检索前k个最相关的文本描述。这涉及到两个子问题: (1)如何生成图像的子区域和(2)如何在图像和文本之间执行跨模态检索。

对于(1),最容易想到的自然就是切分,论文建议把原始图像切分成五块或者(图4b)9块(图4c)。这样每一块可能包含多个对象,而不仅仅是一个突出的对象,如果我们能够检索到该切分快的良好文本描述,这将有利于捕获对象之间的交互。

对于(2),论文建议利用来自CLIP 的跨模态联合嵌入来解决这个跨模态检索问题。CLIP模型有两个分支:图像分支CLIP-I和文本分支CLIP-T,它们分别将图像和文本编码为全局特征表示。具体来说,我们使用CLIP-T将描述数据库中的所有文本描述编码为搜索键。使用5切分和9切分的图像子区域以及原始图像被CLIP-I编码到一个查询中。然后,我们在描述数据库中搜索具有最高k个余弦相似度得分的文本描述。最后生成的文本描述集T为:


 图像调整(Image Conditioning

论文前面提出需要对检测到的对象O与输入图像X之间的条件关系进行建模和加强,以便在发送目标检测器计算的特征到字幕模型之前进行细化。论文提出对每个检测到的对象和检索到的文本描述进行条件处理,并通过全连接(FC)层对这种条件关系进行建模。

其实从整体流程图3就可以看出,这个图像调整就是先把原始图像进行全局编码(保留更多的原始信息),然后与子区域描述以及目标检测的特征分别进行融合,最后输入生成模型。原文描述如下,还是比较好理解的。

论文笔记:Beyond a Pre-Trained Object Detector:Cross-Modal Textual and Visual Context for Image Caption_第5张图片


总结

实验部分和方法的具体详情可以去阅读原文,这里不再赘述。
我认为这篇文章最大的亮点在于解决了使用预先训练好的冻结对象检测器作为图像字幕中自回归模型的唯一输入的局限性。论文建议在图形模型中添加一个辅助分支,利用大型预训练多模态模型的进展来检索上下文属性和关系描述。虽然加入了全连接层去改进无法联合优化这个问题,但是这个方法目前是无法进行端到端学习的。但这种思想还是很值得借鉴和学习的。

你可能感兴趣的:(python,人工智能,深度学习)