其他分享
首页 > 其他分享> > 【multi-taskframework based on feature separation and reconstruction for cross-modal retrieval】

【multi-taskframework based on feature separation and reconstruction for cross-modal retrieval】

作者:互联网

   基于特征分离和重建的多任务框架跨模态检索
作者单位:哈尔滨工业大学,2022年期刊论文pattern recognition -SCI-1区

**摘要**:跨模态检索已经成为计算机视觉和自然语言处理领域的研究热点。学习不同模态特征中间公共空间已经成为主流的方法。这边篇论文中,我们提出了一个新的特征分离和重建的基于公共空间学习的跨模态检索多任务框架,引入特征分离模块以解决不同模态间的信息不对称问题,图像和文本重建模块用以改善特征分离模块的质量。在MS-COCO和Filckr30k数据集上的大量实验证明特征分离和特定信息重建模块可以显著提高跨模态图像-文本检索的性能。

随着多媒体的迅速发展,互联网上存在着大量的信息,如图像、文字、视频、音频等。在海量数据中,人工从不同的模式中获取有用的信息变得越来越困难。自然,我们需要一个强大的方法来帮助我们获得我们需要的文本,图像或视频。跨模态检索以数据的一种模态作为查询,检索另一种模态的相关数据。例如,我们可以使用文本检索感兴趣的图像(就像我们在谷歌图像搜索中做的那样),或者使用图像检索相应的文本。当然,模态并不局限于图像和文本,其他模态如语音、物理信号和视频也可以用作跨模态检索的组成部分。

    据统计,跨模态检索的研究始于2006年[1]。此后,关于跨模态检索的研究方兴未艾。跨模态检索的主要问题是“模态差距”,即不同模态的表征是不一致的,处于不同的特征空间中,因此度量它们之间的相似性具有极大的挑战性。通过分析其中所包含丰富的相关性,人们提出了各种各样的方法来解决在跨模态数据中这一问题,如:公共空间学习法、基于图的方法、邻居分析法、多模态主题模型[2]等。由于深度学习在特征提取方面的良好性能,公共空间学习方法成为当前的主流方法,即为特征学习一个中间公共空间,然后度量特征之间在一个公共空间中的相似度

本文重点研究了公共空间学习方法。现有的方法,如VSE++ [3]和DSVE [4],主要关注图像和文本特征的中间公共空间,并在公共空间中度量它们之间的相似性。直观地说,通过图像管道获得的图像特征和通过文本管道获得的文本特征不应该完全一致。例如,如图1所示,来自图像空间的特征包含关于图像模态本身的信息、高级语义信息、低级信息(例如纹理、颜色)或一些图像特定信息等。同样,来自文本空间的特征包含关于文本模态本身的信息,高级语义信息、即实体和一些特定于文本的信息。由此可见,代表相同语义信息的图像和文本通常是不对称的。 为了解决不同模态数据之间的不对称关系,人们做了大量工作。Yang等人[5]提出用关联对齐学习共享语义空间(S3CA)来解决这个问题。 但S3CA主要针对具有分类标签的数据集进行跨模式检索。此外,Gu等人[6]也意识到了这种基于不同模态数据之间的不对称关系,他们提出了生成式跨模态特征学习框架(GXN)。  GXN采用图像模态和文本模态的高级特征进行跨模态检索,利用图像模态的低级特征生成文本,利用文本模态的低级特征生成图像,通过多任务联合学习,提高跨模态检索分支的性能。 然而,在GXN中,跨模式检索分支和两个生成分支(图像到文本和文本到图像)缺乏交互且相关性弱,这将导致跨模式检索中使用的特征不仅包含高级特征,而且不可避免地与低级特征混合,这会影响跨模态检索的性能。

图1。不同模态(如图像和文本)之间不对称性的示意图。自然地,我们将来自不同模态空间的特征向量分解为三部分:模态信息、语义信息和特定信息。图像和文本的样本对来自MS-COCO数据集。

    受上述工作的启发,我们提出了一种基于特征分离与重构(mFSR)的跨模态检索多任务框架。mFSR将来自不同模态空间的特征向量分解为三部分(如图1所示):

(1) 模态信息,表征特征向量的来源。来自同一模态特征向量的模态信息应尽可能接近。相反,他们应该尽量远离。 

(2) 语义信息,它表征了由特征向量表示的高级语义。来自具有相同语义或相关语义的不同模态(即数据集中的一对样本)的特征向量的语义信息应尽可能彼此接近。相反,他们应该尽量远离。在本文中,我们使用图像语义信息向量和文本语义信息向量进行跨模态检索

(3) 特定信息,通过特征向量表示来自特定模态样本的具体细节。例如,图像模态的特征向量将具有特定于图像的详细信息(不同图像的细节明显不同),而该信息不存在于相应文本模态的特征向量中。

      对于语义信息,mFSR利用跨模态检索中常用的损失函数来训练图像和文本管道。对于特定信息,mFSR通过强制图像(文本)语义信息向量和图像(文本)特定信息向量之间的相似度尽可能低来构造特定损失函数,以达到特征分离的目的。关于模态信息,mFSR构造了模态损失函数,要求所有图像(文本)的模态信息应尽可能一致,并且任何图像和任何文本的模态信息应尽可能一致。 最后,mFSR构造图像和文本重建任务,分别结合图像和文本的三种不同信息,并通过多任务联合学习提高跨模态检索任务的性能。本文的贡献如下:

(1) 我们在传统的跨模式检索任务中引入特征分离来处理不同模式之间的信息不对称,并使用不同的损失函数来监控特征向量的不同部分。

(2) 我们引入图像和文本重建任务,分别组合图像和文本的三种不同信息,并通过多任务联合学习提高跨模式检索任务的性能。

(3) 我们在MS-COCO和Flickr30K数据集上进行了大量实验。我们的实验结果表明,特征分离和特定信息重构可以显著提高跨模态图像文本检索的基线性能。 

相关工作

      根据线性特征空间猜想[14],经过良好训练的深度表示往往能更好地识别变化的潜在因素。该猜想已被应用于许多领域,例如:人脸属性编辑、基于GAN的图像生成、图像加密等。据我们所知,很少有人将线性特征空间猜想应用于跨模态检索。受猜想的启发,在本文中,我们将特征分离引入到传统的跨模态检索任务中,以处理不同模态之间的信息不对称。

      图像生成在许多领域都有广泛的应用,例如基于 GAN 的图像生成任务,需要将特征图或特征向量恢复为三通道 RGB 图像。我们的工作也是图像和文本重建的一部分,但它与现有工作不同。为了克服不同模态样本的不对称性,我们使用图像管道生成的三种不同信息来重构图像,并使用文本管道生成的三种不同信息来重构文本。

图 2. 任意图像 x 输入图像管道以获得视觉表示 v∈Rd ;同样,相应的标题 y 输入文本管道以获得文字表示 l∈Rd 。然后 v (resp. l) 将通过特征分离模块获得图像 (resp. caption) 的模态信息、语义信息和特定信息。最后用模态信息vmo 和lmo 计算模态损失mo,用语义信息vse 和lse 计算语义损失(se),用语义信息vse,lse 和特定信息 vsp , lsp 计算特定损失(sp) 。使用 x x ' x'' 计算图像重建损失 (img-re)。使用 y 和 y' 计算字幕重建损失 (cap-re)。

3. Approach

图2显示了我们提出的 mFSR 的整体架构。 常见的跨模态检索通常只涉及多模态特征提取模块,然后将特征向量映射到一个公共空间。我们的方法引入了特征分离和重建,将模态信息、语义信息和特定信息与特征向量区分distinguishes开来,使语义信息可以更好地用于跨模态检索任务

      mFSR的总体实现流程如下。将任意一对图像和标题输入到多模态特征提取模块中,以获得视觉和文字表示(第 3.1 节)。然后,两种表示将通过特征分离模块分别获得图像和字幕的模态信息、语义信息和特定信息(第 3.2 节)。最后,图像和字幕的三种不同信息输入 GAN 和 RNN,分别重构图像和字幕(第 3.3 节)。之后,我们通过损失函数(第 3.4 节)训练 mFSR,并展示一些实现细节(第 3.5 节)。

3.1. Multi-modal feature extraction

我们遵循公共空间学习方法来提取图像和文本的特征。形式上,给定任意图像-字幕对 (x,y),其中 x 是图像,y=(w0,…, w T-1 ) 是字幕的相应token(one-hot编码)。我们通过使用 Wewt ∈ RK 将每个标记 wt 嵌入到分布式表示中来对标题进行编码,其中 K=300 并且 We 是word2vec嵌入矩阵。然后,我们使用GRU作为我们的基础文本管道[23],将这种可变长度的单词序列转换为有意义的、固定大小的文字表示 l∈Rd(只需将 GRU 的最后一步输出作为整个句子),在我们的实验中 d=3072 。 至于图像编码,为了适应可变大小的图像并受益于非常深的架构的性能,我们依赖全卷积的残差 ResNet-152(在 ImageNet 上预训练)作为我们的基础图像管道。与之前的工作一样,我们直接从倒数第二个全连接层 FC7 中提取图像特征,以获得视觉表示 v ∈ Rd 。 ResNet152 的图像嵌入维度为 2048。简而言之,多模态特征提取的公式如下。

其中 Res 、 FC1 和 GRU 指的是预训练的 ResNet-152、全连接层和 GRU 编码器,以及 θRes 、 θFC1 和 θGRU 分别代表相应的参数。

3.2. Feature separation

       从多模态特征提取模块,我们得到视觉表示 v 和文字表示l。由于不同模态之间的不对称性,我们引入特征分离模块将来自不同模态空间的特征向量分解为三部分:模态信息(vmo,lmo),语义信息(vse,lse)和特定信息( vsp ,lsp )。为了将 v (resp. l ) 切割成三个向量,我们将视觉表示v 送到 MLPv 中,并将文字表示l 送到 MLPl,通过多层感知器层的学习参数的线性变换,模态部分、语义部分和特定部分可以与视觉表示 v(resp.文字表示 l)分离。为了适应后续优化和推理部分中损失函数中特征向量的相似性度量,需要对上述三部分进行归一化。 然后,我们可以分别获得视觉表征v和文字表征l的模态信息(vmo,lmo)、语义信息(vse,lse)和特定信息(vsp , lsp)。 简而言之,特征分离模块的公式如下。

其中||.||2指L2范数。θMLPm指全连接层的相应参数。

3.3. Image and text reconstruction

最后,mFSR构造图像和文本重构任务,分别组合图像和文本的三种不同信息,通过多任务联合学习提高跨模态检索任务的性能。为了融合图像和文本的三种不同信息,我们分别介绍了图像重建和文本重建。重建质量越好,特征分离的效果越显著。通过这种方式,可以促进语义信息的跨模态检索,达到更好的效果。

      对于图像重建,我们的目标是鼓励视觉表征的三种不同信息生成与ground-truth图像相似的图像。直观地说,生成对抗网络(GAN) 可用于生成图像,它由鉴别器和生成器组成。DCGAN [26]的生成器和鉴别器分别作为我们的生成器G和鉴别器D1。由于D1只能区分真假图像,不能保证生成的图像在内容上与ground-truth一致。受R2GAN [27]的启发,我们引入了D2来确定生成的图像在内容上是否与ground-truth一致。更正式地说,数据流的过程如下。

其中p和q是指n属于真实图像和特定图像的概率。θG、θD 1和θD 2分别指生成器G、鉴别器D 1和D2的参数。鉴别器D1、D2和生成器G损失将在第3.4节中提及。

至于文本重建,我们的目标是鼓励三种不同的文字表达信息生成一个类似于ground-truth的句子。特别地,我们使用RNN解码[l mo;lse;lsp]成一个句子。更具体地说,数据流的过程如下。

其中y是指重构字幕的输出概率分布。FC2和RNN指全连接层和RNN解码器,θFC2和θRNN分别代表相应的参数。

像传统的基于RNN的文本生成模型一样,我们在交叉熵损失上训练我们的模型,这将在3.4节中提到。

3.4. Optimization

在本节中,给定具有N个样本对的图像-字幕数据集D={(xi,yi )}Ni =1,我们将详细讨论如何通过最小化学习目标来优化我们的mFSR,如下所示。

我们将在下面描述每个损失项。

模态损失  对于图像和字幕的模态信息,我们设计了模态损失Lmo,它让任意vmo(resp. lmo )尽可能接近它们的平均值

也让-v和-l走得越远越好。

语义损失 对于图像和字幕的语义信息,我们遵循Faghri等人提出的硬负挖掘策略[3]。对于小批量中的每个正样本对,在该批量中选择一个硬负样本作为与查询图像具有最高相似性的样本而与查询没有关联。给定任意一批图像-标题B={(xj,yj)j∈B,我们的语义损失Lse如下。

α作为margin参数,而<.>指两个向量的相似函数,通常是内积。

特定损失  对于图像和字幕的特定信息,我们设计了特定损失Lsp,使得任意vsp 和vse  越小越好。因此,我们将Lsp定义如下。

图像重建损失 对于图像重建损失Limg re,我们利用GAN损失。判别器损失LD1、LD2和生成器损失LG定义如下。

字幕重建损失 对于文本重建损失Lcap re,我们利用交叉熵损失,其定义为:

3.5. Implementation details

输入到GRU的单词嵌入的维数被设置为300。我们不限制句子的长度,因为它对GPU内存的影响很小。我们的GRU RNN)是从零开始训练的,并且具有维度3072的四个堆叠的隐藏层。我们将联合嵌入空间的维数设置为3072。由于硬件的限制,我们在单RTX 2080Ti(11G)中设置批量为24,而VSE++在批量为128的情况下得到R@1=64.6(字幕检索)。如果设置相同的批量大小作为基线,我们需要更多的GPU。我们使用adam[28]优化器。mFSR最多训练30个时期。除了微调的模型,我们以0.0002的学习率开始训练15个时期,然后再降低学习率到0.00002再训练15个时期。通过用固定的图像编码器对一个模型进行30个时期的训练,然后以0.00002的学习率对其进行15个时期的训练,来训练微调的模型。由于不同模型的训练集的大小不同,每个时期中的实际迭代次数可能不同。为了对测试集进行评估,我们通过选择在验证集上表现最好的模型的快照来解决过拟合问题。最佳快照是基于验证集上召回的总和来选择的。

4. Experiments and analysis

4.1. Dataset

我们在MS-COCO和Flickr30K数据集上评估了我们的mFSR。MS-COCO包含123287张图片(train+val),每张图片都有5个注解。它最初被分成82783个图像的训练集和40504个图像的验证集。对于跨模态检索,我们使用[29]的设置,它包含113287个训练图像,每个图像有五个标题,5000个图像用于验证,5000个图像用于测试。Flickr30K包含从Flickr网站收集的31000张图片,每张图片都有五个标题。按照[3,29]中的划分,我们使用1000幅图像进行验证,1000幅图像进行测试,其余的用于训练。

4.2. Results on MS-COCO

我们的mFSR在跨通道检索任务上进行定量评估。给定一个查询图像(resp.标题),目的是检索相应的标题(resp。图片)。由于MS-COCO每幅图像包含5个字幕,字幕检索的R(R @ R,r = 1,5,10)处的召回是基于至少一个正确的字幕是否在前R个检索到的字幕中来计算的[39]。在我们的实验中,该任务在测试集的1000个图像子集中被执行5次,并且结果被平均。

    表1显示了MS-COCO上的结果。为了便于进行全面的比较,我们提供了以前报道的结果及其在该数据集上的batch大小。由于硬件的限制,我们无法设定大多数方法在实验中设定的批量,如100、128、160等。我们选择VSE++作为基线,并在我们的硬件条件下重新运行他们的代码(批量=24)。我们的mFSR在图像到文本(3.4 R@1,∞1.9r @ 5和∞1.0r @ 10)和文本到图像(1.7 R@1,∞1.2r @ 5和∞0.3r @ 10)方面有显著的改进。

在表1中,几种比较方法获得了更好的性能。由于硬件的限制,我们在单个RTX 2080Ti (1 1G)中设置批量为24,而这些方法在批量较大的情况下取得了较好的性能。如果设置和他们一样的批量大小,我们需要更多的GPU。可以看出,我们的mFSR可以在batchsize= 128、160等条件下实现跨模态检索任务的最新状态。

4.3. Results on Flickr30K

       表2显示了在Flickr30K上的结果,并与之前的工作进行了比较。我们在该数据集上提供了以前报告的结果及其批量大小。我们选择VSE++作为基线,并在我们的硬件条件下重新运行他们的代码(批量= 24)。我们的mFSR在图像到文本(3.3 R@1,2.7 R @ 5和2.0 R @ 10)和文本到图像(3.2 R@1,2.5 R @ 5和1.3 R @ 10)方面有显著的改进。可以看出,我们的mFSR可以在batchsize=128、160等条件下实现跨模态检索任务的最新状态。

4.4. Ablation study

为了研究我们方法中不同部分的重要性,我们进行了消融研究。我们使用VSE++作为我们的基线,并增加了特征分离模块,模态损失,特定损失,图像重建损失,文本重建损失来验证我们提出的mFSR的有效性。

Effect of feature separation. 第一行VSE++作为基线。在所有剩余的行中,基于VSE++我们添加特征分离模块。在第二行和第三行中,我们分别介绍了模态损失mo和特定损失sp。与VSE++相比,VSE++和VSE++都提高了基线的性能,如表3所示。VSE++和mo&sp可以从整个特征向量中分离模态信息和特定信息,部分促进跨模态检索任务。与VSE++相比,VSE++增加了图像到文本的R@1从52.1到53.3,R@5从82.0到83.2,R@10从91.3到91.8,文本到图像R@1从41.2到41.5,R@5从76.6到77.0,R@10从87.8到88.0。

图像重建的影响。在第五行中,我们添加了基于VSE++和mo & sp .的图像重建。与VSE++相比,VSE++能够融合三种不同的信息重建图像,更好地促进视觉特征分离并且部分地鼓励跨模态检索任务,特别是文本到图像。与VSE++相比,VSE++将图像到文本的R@1从52.1增加到54.0,R@5从82.0增加到83.4,R@10从91.3增加到91.7,文本到图像的R@1从41.2增加到42.5,R@5从76.6增加到77.3,R@10从87.8增加到88.3。

文本重构的效果。在第六行,我们添加了基于VSE++和mo & sp的标题重构。与VSE++相比,VSE++可以通过融合三种不同的信息来重建字幕,更好地促进文字特征分离过程,并在一定程度上促进跨模态检索任务,特别是图像到文本。与VSE++相比,VSE++和mo & sp & cap re将图像到文本的R@1从52.1增加到55.2,R@5从82.0增加到83.7,R@10从91.3增加到92.5,文本到图像的R@1从41.2增加到42.1,R@5从76.6增加到77.1,R@10从87.8增加到87.9。

从上面的分析和表3中,通过在基线上添加不同的部分,我们得到了比VSE++更好的结果。

4.5.跨模态检索的视觉结果

图3示出了给定图像查询的字幕检索的视觉结果,并且图4示出了在MS-COCO数据集上给定字幕查询的图像检索的视觉结果。对于每个图像查询,我们显示由我们的mFSR预测的相似性分数排序的前5个检索标题。对于每个标题查询,我们显示按相似性得分排序的前3个检索图像。我们用蓝色标出正确的匹配项,用红色标出错误的匹配项。

4.6.图像和文本重建的视觉效果

显示图像和文本重建的结果。第一和第二列分别表示输入mFSR的图像文本对。第三和第四列分别表示mFSR的重建结果。

5. Conclusion and further work

我们提出了基于特征分离和重构(mFSR)的多任务跨模态检索框架,并在多个数据集上与基线方法相比取得了显著的性能提升。与现有方法相比,我们将特征分离引入到跨模态检索任务中,以处理不同模态之间的信息不对称,并引入图像和文本重建任务,分别结合图像和文本的三种不同信息,提炼这些信息,尤其是图像和文本的语义信息。最后,提炼出的图像和文本语义信息可以提高跨模态检索任务的性能。

mFSR的局限性在于,它不能在某些方法上发展良好的性能,这些方法的主干是Faster R-CNN。一些工作还指出,Faster R-CNN生成的特征向量难以用于图像重建[40],这限制了我们提出的mFSR在基于Faster R-CNN的图像特征提取方法中的应用。因此,我们不会以这些方法作为基线来构建我们的mFSR。在未来,我们将探索如何使用目标检测网络的输出来重建图像,并将我们的mFSR应用到最新的交叉模态检索方法中,其主干是更快的R-CNN,以获得更好的结果。

标签:模态,检索,multi,based,信息,reconstruction,图像,文本,我们
来源: https://blog.csdn.net/qq_24876435/article/details/123050545