基于多模态注意力机制的跨模态哈希网络

吴吉祥,鲁 芹,李伟霄

1.齐鲁工业大学(山东省科学院)计算机科学与技术学院,济南 250000

2.中移动信息技术有限公司 内审部,北京 100000

随着多媒体时代的诞生,图像、文本、音频、视频等[1-5]多模态数据信息量以爆炸式的速度急剧增长,使得人们对不同模态的检索需求不断提高。本文在调研中发现跨模态检索更是受到人们的广泛关注。为此,本文选择图像和文本这两个模态来实现它们之间的互相检索。跨模态检索就是利用某一种模态数据类型作为查询来检索出与其具有相似语义的另一种模态数据类型的内容。尤其是对于图像和文本之间的互检索,可以通过此检索方式来解决人们的日常生活和工作上的需求。比如,工作中想要识别出一张图片所表达的内容,或者用文字来查找想要搜寻的一张图片等等。因此,研究跨模态检索技术是一项很有意义的课题。为了解决这些问题,研究选取了散列方法,因为它具有降低存储成本和加快检索速度的优点。哈希方法是将模态数据从高维表示空间投射到低维汉明空间,在这个空间中,语义上相似的跨模态实例具有更相似的紧凑二进制码。

随着深度学习在各个领域的发展[6-8],多项研究表明通过深度学习提取的特征表示比传统的浅层学习方法具有更强的表达能力。在当前先进的方法[9-11]中,选用两个相似的结构分支分别对图像数据和文本数据进行深度特征的提取,然后对提取出来的两种不同模态的特征映射到同一个空间中,从而计算出不同模态之间的相似性。虽然这种方法已经取得了一定的进展,但是在使用深度学习架构进行跨模态检索的过程中仍然存在一些问题。这种深层次的特征提取出来的只是模态的全局特征信息,不足以表达模态的局部关键特征信息,无法挖掘不同模态间的语义关联,进而会影响检索的精度和准确性。除此之外,在一些广泛使用的数据集上进行检索时,由于数据信息量太大而且计算量也过高,最终导致检索的速度大大降低。

针对以上跨模态检索的精度不足和速度较慢等问题,本文结合注意力机制和哈希方法提出了一种新的跨模态检索方法-基于多模态注意力机制的跨模态哈希网络(HX_MAN)。主要贡献如下:

(1)利用深度学习在ImageNet上预训练好的ResNet-152网络来提取图像的特征。除此之外,在此基础上继续提取出细粒度的图像上下文特征,并且利用GRU来进一步提取图像的空间位置信息特征,最终将这两个细粒度的特征结合起来作为图像的全局特征。对于文本特征,通过双向LSTM来提取特征,利用它的长短期记忆功能来解决梯度爆炸问题,并在一定程度上保留模态内的语义一致性,提高相似性度量的计算。

(2)设计了一个多模态交互门来进行图像和文本模态之间的细微交互,以此来挖掘不同模态之间的语义关联特征,平衡它们之间的信息量和语义互补性。并输入到注意力机制中来捕捉图像或文本模态的局部关键信息特征,然后将带有注意的特征输入哈希函数分别得到图像或文本的二进制哈希码表示。在检索时,将待查询的任一种模态输入以上训练过程来得到这个模态的哈希码,并计算该哈希码与检索库中哈希码的汉明距离,最后根据距离大小按顺序输出检索结果。

(3)在NUS-WIDE数据集,MIR-Flickr25K数据集和IAPRTC-12数据集上进行的实验表明,新提出的HX_MAN模型的mAP值与现有的跨模态检索方法相比在一定程度上有所提高,由此也验证了本文所提出的方法在检索精确度上的优越性。

1.1 跨模态哈希

跨模态哈希方法[12]将图像或文本模态特征中一些不易被发现的信息挖掘出来,以此来学习它们的哈希变换,并将这些数据信息投影到一个由哈希码组成的二值空间,然后在这个二值空间中度量其相似性并实现它们之间的相互检索。Ding等[13]提出了集合矩阵分解哈希算法(collective matrix factorization Hashing,CMFH)。CMFH假设不同模态的同一个样本生成相同的哈希码,并在共享的潜在语义空间中学习不同模态的哈希码。Zhang等[14]提出语义相关性最大化(semantic correlation maximization,SCM)模型,提出将语义标签无缝地集成到大规模数据建模的哈希学习过程中。Wang等[15]提出了语义主题多模态哈希(semantic topic multimodal Hashing,STMH),通过鲁棒性分解图像矩阵以获得文本的多个语义主题和图像概念,然后将学习到的多峰语义特征通过它们的相关性转换为一个公共子空间,从而生成哈希码。为了捕获更复杂的数据结构,Lin等[16]提出了语义保留哈希(semantics-preserving Hashing,SePH),将训练数据的语义亲和力转换为概率分布,通过最小化KL散度(Kullback-Leibler divergence)将其与汉明空间中待学习的哈希码进行近似。利用上述这些哈希方法可以在检索中达到一些显著的性能,但是这些方法大多依赖由浅层架构提取的手工特性,不能在一定程度上区分模态间的底层关键特征,从而会影响到最终二进制码的正确表示。

与以上的浅层学习方法相比,深度学习的方法不仅提高了哈希码的准确率,在检索的精度和准确性方面也所有提升。Jiang等[17]提出深度跨模态哈希(deep crossmodal Hashing,DCMH),将特征的提取和获得哈希码的过程放在同一个架构中来训练,从而形成了一个端到端的学习架构,直接通过离散优化来生成二进制编码,大大提高了准确率。Lin等[18]提出语义深度跨模态哈希(semantic deep cross-modal Hashing,SDCH)方法。利用语义标签分支来改进特征学习部分,并且利用哈希码学习分支来保持汉明空间中不同模态之间哈希码的一致性,以此来保留不同模态数据信息的不变性。

1.2 注意力机制

注意力机制是受到人类识别系统的启发,它的目的是将注意力锁定在相关的特定部分,而不是无关紧要的地方。它首先被应用于自然语言处理(NLP)[19]领域中,之后将文本注意力机制成功应用于机器翻译[20]、句子表示[21]和问答系统[22]等任务中,并在处理长期依赖关系方面取得了非常显著的效果。后来注意力机制也被应用于计算机视觉领域,视觉注意机制被广泛应用于图像分类[23-24]、图像生成[25]、目标检测[26]、视觉问答[27-28]等场景,以此来将图像部分的小块区域逐步地选取出来,从而提取出图像的关键信息,将需要处理的数据量不断降低。

随着注意力机制的提出,许多学者开始将注意力机制引入并应用到跨模态图像检索中。Cao等[29]提出跨注意力网络,利用并行注意网络来独立学习图像和配方中组件的注意权重。Peng等[30]提出一种双监督注意力网络,使用跨模态注意块来有效编码丰富且相关的特征,以此来学习紧凑的哈希码。

上述方法表明注意力感知能够检测多模态数据的关键信息区域,有助于识别不同模态数据之间的内容相似性。注意交互模块利用了注意机制提取不同模态数据的交互特征和底层细节特征。

本章主要介绍了本文提出的基于多模态注意力机制的跨模态哈希网络模型建立的实现细节。HX_MAN模型如图1所示,主要包括训练模块和检索模块两个部分。其中训练模块主要包括以下部分:提取图像特征以及文本特征;
利用多模态注意力机制来对图像模态的特征和文本模态的特征进行细微的交互,提取出图像和文本模态内部更为精炼的关键特征信息;
最后学习这两种模态的哈希表示。而在检索模块中,将需要查询的图像模态或者文本模态输入到训练模块中,得到图像或文本的二进制哈希码。然后将它们输入到查询检索库中,通过汉明距离公式来计算该哈希码与检索库中哈希码的值,最后根据汉明距离值得大小顺序从小到大依次输出检索结果,得到需要的图像或文本列表。

图1 HX_MAN的模型结构图Fig.1 Model structure diagram of HX_MAN

2.1 训练模块

在训练模块中,本文利用深度学习强大的特征提取能力来提取图像和文本模态的全局粗粒度特征,又通过多模态注意力机制来对不同的模态进行细微的交互,以此来搜索图像与文本特征之间在底层上的细粒度关联,然后关注这些细粒度特征的局部信息,从而能够在一定程度上解决不同模态之间的语义不相关的问题,并从深层次的网络中表达出模态的特征信息。

2.1.1 特征的提取和表示

在这一部分的图像和文本特征提取中,选取了经过预训练的CNN来提取图像特征,而对于文本特征的提取,采用了循环神经网络中的Bi-LSTM来提取文本的特征。

(1)图像表示。使用在ImageNet[31]上预训练的ResNet-152[32]用于图像特征提取。将其维度通过预处理调整为448×448,调整完之后把它们输入到CNN中。在此步骤中,采用了一个通用的CNN框架用于调节其中的主要参数以获取更好的粗粒度特征,首先从概率上权衡了粗粒度特征在池化层上的判别性与不变性,并在CNN中选择合适的卷积范围和池化参数,然后通过分析池化域内特征的稀疏度选择平均池化方法以获取具有更好可分离性的粗粒度池化特征,在提取粗粒度特征过程中,由于直接使用了平均池化的提取方式,其作用可以直接替代全连接层。因为在本文的特征提取模型过程中不使用全连接层,模型的检准率并没有降低,而模型的大小却极大地减少。因此,做了一些改变,将最后的全连接去除掉。为了获得不同区域的特征向量,将最终的平均池化层之前的ResNet-152特征图作为图像的粗粒度特征I∈R7×7×2048。其中M=2 048表示图像区域的个数,图像中的第i个区域用7×7维的特征向量Ii(i∈[1,M])表示。在得到图像的粗粒度特征之后,将2 048个区域的特征按照顺序逐步输入到本文模型中。为了描述的方便性,用一组描述符{I1,I2,…,IM}来表示这些输入图像。为了得到更深层次的特征信息,并以此来表达图像的上文下信息,提取了图像的全局上下文特征I(g),该特征已被验证可以有效地建模局部特征表示上的丰富上下文信息。具体来说,通过给定的粗粒度特征向量{I1,I2,…,IM}来表示输入图像中所有M个区域的特征,计算出图像的全局上下文特征:

其中,tanh()是一个激活函数,用来对特征向量做一次非线性映射,将特征投射到一个公共子空间中,P(0)是一个权重矩阵,通过这个矩阵可以将图像特征向量和文本特征向量嵌入到同一个公共空间中。

有时候,在视觉上看到的效果可能和图像的潜在表达信息有些误差,导致人们的判断错误,出现这种问题的原因是忽略了图像的空间位置信息[33]。如图2所示,左边两幅图像一眼看上去都有“汽车”和“男人”这两个相同的角色,但是它们所要表达的信息完全不同。

图2 视觉-空间位置信息和语义互补的重要性比较图Fig.2 Comparison of importance of visual-spatial location information and semantic complementarity

如果仅仅使用上面提到的粗粒度特征,就很难把这两幅图像区别出来,因为平均池化操作将导致空间位置的丢失。相反,可以很容易地根据平面位置来区分两幅图像,由此可以说明空间位置信息对于全局信息是有效的互补。为此本文选择通过GRU来进一步剖析图像的空间位置信息,从而能够更好地在视觉上辨别出两幅图像。GRU作为一种特殊类型的循环神经网络,它的参数少而且计算效率也非常高,能够对图像粗粒度特征之间的空间位置信息进行建模。具体来说,对于得到的图像特征{I1,I2,…,IM},首先根据空间顺序将它们组织起来,然后将它们按照区域顺序输入到GRU中用于输出它们之间的位置特征。这个过程可用公式(2)来定义:

最后,将图像的两个重要的特征信息I(g)和I(d)通过相加的方式将它们的特征信息总结在一起,这样就得到了最终图像的全局特征向量I(0):

(2)文本表示。对于文本的特征表示方面,使用双向LSTMs作为特征提取器来生成文本的粗粒度特征。假设文本输入用{w1,w2,…,wL}表示,将其中每个单词首先用word2vec模型进行向量化表示,以此来表征每个单词在表中的索引。将各个单词向量通过eL=PwL嵌入到向量空间中,其中P是嵌入矩阵。最后将这些向量按空间顺序排列好并输入到双向LSTMs中。此过程可由公式(4)来表示:

对于文本模态的深层次特征提取方面,在提取文本的粗粒度特征时,每个片段都继承了上一时刻的顺序信息。所以不用像图像特征的提取方式那样分别提取两种重要的特征信息,只使用均值池化来把文本的粗粒度特征生成文本的全局特征T(0),其中T(0)对文本模态的所有句子中的第i个单词的上下文语义进行编码:

2.1.2 多模态注意力模块

在之前的大部分检索方法[34]中,它们只是将不同模态的全局特征信息训练出来,然后将这些特征信息通过数学方法投影到一个共同的空间中来度量每个图像区域和单词之间的相似度。这种方法虽然能在一定程度上度量出它们的相似度,但是这些全局特征信息不仅消耗计算资源多而且不能将模态的关键信息表现出来,更不能在底层挖掘出它们之间的深度关系,从而降低了检索的精度。

在接下来很长的一段时间内,当多模态领域的研究发展停滞不前时,学者们提出了注意力机制[35]并被广泛应用到各个领域。受到前者的启发,对已有的方法进行了创新和改进并且提出了一种新的注意力机制。注意力机制在各个领域都有很多的贡献,正如看到它的表面意思,“注意”的目的是为了寻找出哪一部分最需要被重视。利用这种方法的局部信息提取能力,可以很容易地将模态内的关键信息展现出来,从而能够更好地剖析不同模态内部之间的特征信息匹配度。

虽然上述方法在一定程度上能够增加图像和句子的局部关键信息量[36],并且其性能比其他那些不利用此方法的模型更优。但是这种方法只是将图像或文本模态各自的关键区域部分挖掘出来,并没有完成异构数据间的交互,所以在捕捉不同模态之间的语义关联方面还存在一定的问题。如图2所示,右边两幅图像的语言描述在语义上非常接近,但是在视觉观察上还是很难将这两幅图像区分开来。其中的原因是只关注了文本模态的关键信息,却没有考虑到视觉部分与文本之间的语义互补性。

针对以上问题,在借助注意力机制之前增加了多模态交互门来将图像和文本模态进行交互,利用不同模态之间存在的语义互补性来增强图像和文本的表示能力。这个交互门能够将细粒度的图像特征与词汇的抽象表征进行细微的融合,并且能够通过它们之间的交互使得不同的模态语义互补,从而挖掘出它们之间的底层关联关系,提高检索的精度。

在最初的实验设计阶段,本文认为将图像和文本特征进行交互的最简单方式就是直接将它们相加。但是,随着实验的进行,发现这种直接相加的方式在实践中可能会导致相对较差的性能。这可能是因为图像上下文特征和文本上下文特征在训练阶段使用的提取方法不一样。如果以这种简单的方式来将它们融合,在此过程中可能会有某种模态的有意义的部分信息被其他的模态所遮盖。针对这种模态信息被遮盖的问题,为了将这两个来自不同模态的特征进行底层的交互,设计了交互门来将图像特征和文本特征实现语义互补。

具体来说,如图1所示,将图像和文本的上下文特征向量I(0)和T(0)输入到语义互补的交互门中,以进行它们之间的交互。这个过程可由公式(6)表示:

其中,UI和UT是可以降维的矩阵,α是防止图像和文本上下文特征进行融合过程中信息量丢失的参数。最后通过sigmoid激活函数σ来将交互过程中的每个特征再次减小到[0,1]。o(I)和o(T)分别表示由多模态交互门输出得到的更为精炼的特征向量。为了方便起见,分别把它们称为多模态图像上下文特征和文本上下文特征。

在将图像和文本特征进行底层的交互并且通过语义互补性来获得它们之间的语义关联之后,可以借助注意力机制来捕捉和检测图像或文本模态内的局部关键信息。注意力机制被提出来是为了能够在学习之后捕捉到所需要的东西,把那些不重要的信息区域直接无视掉,它一般在学习得到结果之后以概率图或者概率特征向量输出。设计多模态注意力[37]的目的是独立利用具有语义互补性的多模态图像或文本上下文特征的数据信息来探索多个图像区域或单词之间的细粒度关联关系。此过程是通过计算图像区域或文本局部特征的凸组合来实现的。

具体来说,对于图像的多模态注意力模块,如图1所示,将得到的图像特征向量{I1,I2,…,IM}和多模态图像上下文特征o(I)作为查询输入到图像的多模态注意力函数fatt(·,·)中来计算得到每个图像区域的注意力权重αI,m。图像的多模态注意力函数fatt(·,·)采用两层前馈感知器,并通过softmax函数来保证整个过程中的权重不会失衡。在注意力模块的权重计算中,引入AdamW优化器(adaptive moment weight decay optimizer),以此来更新注意力模型的网络参数,使其逼近或达到最优值,从而最小化模型的损失,还能在一定程度上提高模型训练的速度。具体而言,注意力权重αI,m的计算过程可由公式(7)来定义:

其中,wI、wI,q和wI,h是感知器的参数,bI、bI,q和bI,h是感知器的偏置项,hI,m表示图像多模态注意力函数中时间步长为m处的隐藏状态,tanh()是一个激活函数。在得到每个图像区域的注意力权重之后,就可以通过加权平均来计算带有注意的图像特征表示向量I(1):

与图像的多模态注意力模块设置的目的一样,就是为了将文本句子中的词汇通过注意力机制来表示出抽象的高级表征,从而提取出带有多模态注意的上下文语义特征。注意力权重αT,l也是由两层前馈感知器和softmax函数组成的软注意模块得到的,文本的多模态上下文特征向量T(1)可由以下公式来定义:

其中,wT、wT,q和wT,h分别是感知器的参数,bT、bT,q和bT,h是感知器的偏置项,hT,l表示多模态文本注意在时间步长l处的隐藏状态。与图像的多模态注意力模块不同的是,文本的多模态注意力已经不需要在加权平均后添加嵌入层,因为文本特征{T1,T2,…,TL}已经存在于公共空间中,并通过端到端方式进行训练。

2.1.3 哈希层模块

在哈希模块中,分别将带有多模态注意的图像特征I(1)和文本特征T(1)输入到哈希层中,通过学习哈希函数得到不同模态特征的二进制表示。在哈希层中,tanh的激活函数使得每个神经元的输出在-1到1之间,阈值为0的sign函数再将其转换成二进制编码。编码值为1代表神经元的输出大于或等于0;
编码值为0,代表输出小于0。图像和文本的哈希函数分别如公式(10)和公式(11)所示:

其中,w(I)和w(T)分别是图像或文本模态的网络参数,b(I)和b(T)是感知器的偏置项,HI和HT分别为图像和文本的哈希表示。

2.2 检索模块

在以上的训练模块中,利用深度学习的底层特征挖掘能力和注意力机制捕捉局部关键特征信息的优势将图像模态或文本模态的特征通过哈希函数得到了它们各自的二进制哈希码表示。于是在进行跨模态检索时,将任意一个模态的样本作为查询对象,可以检索到与之相似的另一个不同模态的样本。具体来说,如图1所示,对于图像查询,用户将待查询的图像输入到训练模块来将图像特征转化为训练好的二进制哈希码的形式,并将训练好的哈希码输入到待检索的查询库中,计算该哈希码与检索库中哈希码的汉明距离,依据汉明距离的大小顺序从小到大依次输出前k个检索结果;
相似地,对于文本查询来说,用户将文本数据作为查询对象,通过训练模块中端到端的网络框架来得到文本模态的哈希码,然后计算与待检索数据库中哈希码之间的汉明距离并排序,最终输出检索到的前k个图片。

2.3 方法比较

考虑到近期的跨模态检索任务中大家都将注意力机制引入到其中来,为此,本节将新提出的HX_MAN模型与已有的先进模型进行比较并且说明它们的区别。

对于模态内部的注意机制而言,本文的HX_MAN模型与自我注意嵌入(SAE)[38]有些相似,但是SAE只是关注全局图像特征来计算,而本文模型利用了图像的空间位置特征,同时对模态的全局语义信息和顺序信息进行编码,从而能够将模态内部的特征重点提取出来。除此之外,本文的HX_MAN模型与其他引入注意力机制[9]的方法相比,多了一种交互门来将不同模态的特征进行细微的交互,以此来挖掘不同模态之间的语义关联特征,平衡它们之间的信息量和语义互补性。最重要的是,本文方法在引入注意力机制并且确保检索的精确度的同时,还引入了哈希方法来保证检索的速度,从而能够让检索更加高效。

在本章中,将在三个广泛使用的数据集上对提出的HX_MAN方法进行评估,并且将此方法与当前先进的几种方法利用两种评估指标进行比较和分析。

3.1 数据集及评估指标

(1)数据集

NUS-WIDE数据集[39]是由一个媒体搜索实验室创建的大型网络图像数据集。数据集包含在Flickr网站上搜集到的260 648张图像和5 018个不同的类标签。每幅图像都有其相对应的文本标注并且构成图像-文本对。这些对图像进行描述的文本是用户在上传图像时对其用单词连贯起来的一组句子。本文基于这个数据集中的20类最常用标签的194 600个图像-文本对进行了基准方法的分析,每对数据的文本都表示为一个1 000维的bag-of-words(BOW)向量。如果图像和文本有其中一个相同概念的标签,则认为它们之间是相似的,否则认为它们不相似。

MIR-Flickr25K数据集[40]包含从Flickr网站上收集的25 000张多标签图像,24个人工标注的类别标签。本文的实验数据选取至少有20个文本标记的图像-文本对,一共得到了20 015对数据,每对数据都用24类标签中的一个来标记。每对数据的文本都表示为1 386维的BOW向量。如果图像和文本有相同的标签,则认为它们之间是相似的,否则认为它们不相似。

IAPR TC-12[41]数据集包含20 000张图像,每幅图像都有一个文本标题。图像-文本对被标记为255个标签。对于文本形态,采用2 912维词袋向量表示文本特征。如果图像和文本有相同的标签,则认为它们之间是相似的,否则认为它们不相似。

在数据集的拆分方面,将MIR-Flickr25K数据集和IAPR TC-12数据集中随机选择的2 500对数据作为查询集,剩下的数据对作为检索集。此外,将随机抽取的10 000对检索集作为它们的训练集。对于NUS-WIDE数据集,随机选取数据集的1%作为查询集,剩下的作为检索集。此外,从检索集中随机抽取10 500对作为训练集。

(2)评估指标

为了验证本文所提出的HX_MAN模型在跨模态检索任务中的性能,选用了两种广泛使用的评估指标:平均准确率均值(mean average precision,mAP)和精确率召回率(precision-recall,PR)曲线。

mAP是一种标准的用来衡量汉明排名准确度的评价指标,mAP值的计算公式如公式(12)所示:

其中,|Q|表示查询数据集Q的大小,q表示给定的一个查询,AP表示均值准确度(average precision):

其中,M表示q在查询数据中真实近邻的个数,n表示数据的总量,Pq(i)表示前i个被检索到的实例的精度,δ(i)是一个指示函数,当δ(i)=1时,表示第i个实例与被检索的实例是相关的,而δ(i)=0时则表示不相关。

而PR曲线是以精确率和召回率这两个变量做出的曲线,被广泛用于评估哈希检索的性能。

3.2 基准方法分析

在实验的最后,用本文提出的HX_MAN模型与几种现有的跨模态检索方法利用mAP和PR曲线两种指标进行了对比,以此来验证本文提出的模型的性能。为了能够达到所预期的结果,不仅与基于哈希算法的模型进行了比较,还与典型关联分析[42]和基于子空间学习的方法[43]进行了比较。其中基于哈希算法的模型中,不仅包括基于浅层结构的方法(CMFH[13]、SCM[14]、STMH[15]、SePH[16]),而且还有两种基于深层结构的方法(DCMH[17]和SDCH[18])。

3.2.1 实验对比方法

(1)mAP值的对比

在NUS-WIDE数据集、MIR-Flickr25K数据集和IAPR TC-12数据集上对比了编码长度为16位、32位和64位的每个模型方法的mAP值。对比数据如表1所示。其中,“图像→文本”表示查询数据为图像模态,检索数据为文本模态;
而“文本→图像”则表示查询数据为文本模态,检索数据为图像模态。

表1 HX_MAN模型与其他模型的mAP值对比数据Table 1 Comparison of mAP values between HX_MAN model and other models

根据表中的对比数据可以看出,基于深度学习的算法的性能明显优于传统的算法,而在基于哈希算法的模型中,基于深层结构的方法性能也略优于基于浅层结构的方法。

(2)PR曲线的对比

如图3所示,在三个广泛使用的数据集上使用编码长度为16位的哈希码进行实验的对比。给定任意的汉明半径,可以计算出精确率和召回率的值。将汉明半径在0~16之间进行改变,可以得到PR曲线。PR曲线位置越高,其检索性能就越好。(3)检索速度对比

图3 三个数据集上的PR曲线图Fig.3 PR graphs over three datasets

除了验证本模型的准确率之外,还对不同模型的平均检索速度进行了计算和对比。具体来说,对不同模型的检索时间进行累加求均值的方式来计算出每个模型的平均检索时间,以此来验证模型的检索速率。在NUS-WIDE数据集上使用编码长度16位的哈希码对JFSSL、SDCH和HX_MAN进行实验的对比,一共检索了30次,每个模型的平均检索时间如表2所示。由表2可以看出,本文的模型相较于传统方法时间明显降低。而相较于基于哈希方法的模型,本文的模型在检索速度方面也略有提升,这也验证了引入AdamW优化器的优势,其可以在训练模型参数的时候提升训练速度,继而对整个模型的检索性能产生影响,在一定程度上提升整个模型的速率。

表2 HX_MAN模型与其他模型的检索时间对比Table 2 Comparison of retrieval time between HX_MAN model and other models

通过以上三种评估指标的数据可以看出,本文提出的模型在提升检索的性能方面取得了很好的有效性。这是因为本文模型充分考虑了图像和文本模态数据之间的细微交互,使得两种模态之间的语义特征信息紧密关联起来,而其他基于哈希算法的模型在改进特征学习部分仅针对单个模态。比如SDCH和STMH模型只考虑的是文本模态的标签信息和潜在的语义信息,这样不能很好地平衡不同模态之间的信息量,从而会影响检索的性能。同时也在一定程度上说明了图像和文本模态通过交互门和多模态注意力机制的交互作用能够更好地将特征信息关联在一起,而且由深度学习提取的深层次特征也大大提高了跨模态检索的精确度,由此也说明了本文所提出的模型在跨模态检索方面取得了一定的进展。

3.2.2 模型配置

在本文实验中,为了获取丰富的特征信息,对整个模型的超参数进行设置。

(1)图像特征

首先需要对输入数据进行预处理操作,图片数据的预处理主要对图片的大小进行裁剪为448×448的尺寸;
数据预处理完成以后,将数据输入到ImageNet上预训练的ResNet-152网络模型来提取。将提取到的特征按顺序逐步输入到GRU中。网络中的所有参数使用均值为0、标准差为0.01的高斯函数随机初始化。模型采用反向梯度训练下降算法Adam(adaptive moment estimation)优化器来训练网络,其中momentum=0.9,batch值为64,总epoch为100,学习率为0.005,每20次迭代后学习率变为当前值的1/10。

(2)文本特征

文本数据的预处理先将文本分词,再将文本中一些不常用的词和停用词去掉,最后利用word2vec模型对预处理的文本进行向量化。其中词向量的维度size=100,词向量上下文最大距离window=5,随机梯度下降法中迭代的最大次数设置为100。将预训练的词向量初始化为词嵌入矩阵,利用词嵌入矩阵将输入的数据中的词转换为词向量,维度[batch_size,sequence_length,embedding_size]。网络中的所有参数使用均值为0、标准差为0.01的高斯函数随机初始化。模型采用Adam优化器来训练网络,其中momentum=0.9,batch_size值为256,总epoch为100,学习率为0.000 1,每10次迭代后学习率变为当前值的1/10。

(3)优化器

将上述图像和文本特征输入到注意力模块来计算权重,采用AdamW优化器来对注意力权重进行更新,其中该优化器公式为:

其中,参数设置为lr=0.001,β1=0.9,β2=0.999,ε=10-8,λ即为权重衰减因子,本文设置为0.005/0.01。

3.3 消融实验

本研究将MIR-Flickr25K数据集中随机抽取的10 000对数据作为训练集,剩下的作为测试集进行实验。为了验证本研究所提出的模型的有效性,对模型自身进行消融分析。

在消融实验中,保持对应参数不变的情况下,通过删除或替换本研究模型中的某个模块进行消融研究。在MIR-Flickr25K数据集上进行了去除GRU模块只保留图像的粗粒度特征,去除交互门直接将图像或文本特征输入到注意力机制中,将AdamW优化器替换成SGD优化器实验,其他参数设置保持不变。表3为在MIRFlickr25K数据集上进行的消融研究。

通过表3中各消融实验的结果可以看出,根据空间位置输入到GRU中来提取图像的空间位置信息,能够有效地互补图像的全局特征信息,以防丢失图像的潜在表达信息。而模型中最重要的交互门模块能够将两种模态的信息在底层交互,并通过语义互补来获得它们之间的语义关联,从而可以有效地弥补两种模态在训练过程中的部分有意义的信息被遮盖的问题。在将优化器替换成SGD优化器的过程中,可以很明显地看出AdamW优化器的改善性,而且其收敛速度也较SGD优化器快。综上可以看出,本文模型中每个模块的引入都有其独特的优势,从而能够在一定程度上促进整个模型的有效性。

表3 HX_MAN模型的消融实验Table 3 Ablation experiments of HX_MAN model

3.4 可视化展示

本节将展示本文设计的跨模态检索系统页面,并且将检索结果与DCMH方法和SDCH方法进行比较分析。

如图4所示,本文的跨模态检索系统页面主要分为两部分:图像检索文本、文本检索图像。对于图像检索文本部分,将需要查询的图像上传到系统中,系统将图像在本文设计的方法中一步步地进行,从而检索出与图像内容具有语义相似性的图像描述,并且以文本的形式输出相似度最高的前几种,最后呈现到客户眼前。文本检索图像部分与其相似,就是将需要查询的文本内容上传至系统中,然后输出前几张与文本内容最为相似的图像。

图4 跨模态检索系统页面展示Fig.4 Display of cross-modal retrieval system page

除此之外,从MIR-Flickr25K数据集的测试集中随机选取了3个文本描述来与DCMH方法和SDCH方法进行比较分析。如图5所示,将3种模型用各自的方法输出检索结果并选取最好的结果来进行比较。在第一个文本描述中,DCMH方法输出的图像中的“狗”是“趴着的”。在第二个文本描述中,SDCH方法输出的图像中的“狗”的动作不是“站着的”。在第三个描述中同样是这种问题。从比较中可以看出,本文方法在利用深度学习提取了位置特征信息之后,在文本描述中生成了更准确、清晰的视觉信息的图像,这也在一定程度上说明了本文方法在确保速度的基础上提高了检索的准确度。

图5 HX_MAN与其他方法的比较Fig.5 Comparison of HX_MAN with other methods

虽然此方法在精度和速度方面较其他方法有所提升,但是并没有想象中的那么完美,在输出结果中还存在一点小误差。如图6所示,其中左边的可视化结果为全部正确的5个原描述;
右边所示的可视化结果中第5句检索错误,但是对于这种描述也有一定的合理性,因为图片的现实背景只要合理怎么形容都可以。

图6 检索案例可视化Fig.6 Retrieval case visualization

本文提出了一种新的基于注意力机制与哈希方法的跨模态检索模型,也就是基于多模态注意力机制的跨模态哈希网络(HX_MAN)。具体来说,利用深度神经网络强大的特征提取能力来提取图像模态和文本模态的特征,相较于其他先进的检索模型,本文模型引入的注意力机制能够更精确地捕捉不同模态内的局部特征信息,而且将图像和文本特征进行底层的交互并捕捉到了两种模态之间的语义关联,从而在一定程度上提高了检索的精度。在最后的实验证明,本文提出的模型与其他现有的方法相比,可以有效解决现有跨模态检索算法粒度粗、精度低等问题,为跨模态检索新技术提供了参考。在未来的工作中,会将这种方法应用到其他规模的多模态数据中来探索更多的信息,从而设计出一个更高效的网络架构来为多模态领域的发展做出自己的贡献。

猜你喜欢 哈希模态检索 多模态资源在语篇教学中的运用与反思小学教学研究(2022年18期)2022-06-29联合仿真在某车型LGF/PP尾门模态仿真上的应用汽车实用技术(2022年10期)2022-06-09EASY-EV通用底盘模态试验汽车实用技术(2022年9期)2022-05-20哈希值处理 功能全面更易用电脑爱好者(2021年8期)2021-04-21Windows哈希值处理不犯难电脑爱好者(2021年1期)2021-01-13文件哈希值处理一条龙电脑爱好者(2020年20期)2020-10-22CNKI检索模式结合关键词选取在检索中的应用探讨技术与创新管理(2020年5期)2020-10-09通过实际案例谈如何利用外文库检索提高检索效率商情(2020年24期)2020-06-30瑞典专利数据库的检索技巧科学与财富(2019年27期)2019-10-25模态可精确化方向的含糊性研究成长·读写月刊(2018年8期)2018-08-30

推荐访问:注意力 多模 机制