Deep Cross-Modal Hashing(DCMH)--文献翻译

摘要

由于其存储成本低和查询速度快,跨模态散列(CMH)已被广泛用于多媒体检索应用中的相似性搜索。然而,大多数现有的 CMH 方法都是基于手工制作的特征,这些特征可能与哈希码学习过程不兼容。因此,现有的具有手工特征的 CMH 方法可能无法达到令人满意的性能。在本文中,我们通过将特征学习和哈希码学习集成到同一框架中,提出了一种新的 CMH 方法,称为深度跨模态哈希 (DCMH)。 DCMH 是一个具有深度神经网络的端到端学习框架,每种模式都有一个,可以从头开始执行特征学习。在三个具有图像-文本模态的真实数据集上进行的实验表明,DCMH 在跨模态检索应用中的性能优于其他基线,以实现最先进的性能。

一、介绍

        近似最近邻 (ANN) 搜索 [1] 在机器学习和信息检索等相关应用中发挥着重要作用。由于其低存储成本和快速检索速度,哈希最近引起了 ANN 研究社区的广泛关注 [17, 34, 9, 15, 26, 10, 29, 21, 28, 4]。散列的目标是将原始空间中的数据点映射到二进制代码的汉明空间,其中原始空间中的相似性保留在汉明空间中。通过使用二进制哈希码来表示原始数据,可以显着降低存储成本。此外,我们可以通过使用哈希码构造索引来实现搜索的恒定或亚线性时间复杂度[15]。因此,散列在大规模数据集中的 ANN 搜索中变得越来越流行。

        在许多应用中,数据可以具有多种模式。例如,除了图片内容,Flickr 和许多其他社交网站中还存在图片标签等文本信息。这种数据总是被称为多模态数据。随着多模态数据在实际应用中的快速增长,尤其是多媒体应用,多模态哈希(MMH)最近被广泛用于多模态数据集上的人工神经网络搜索(检索)。

        现有的 MMH 方法可以分为两大类:多源散列 (MSH) [30, 36, 32, 14] 和跨模式散列 (CMH) [18, 35, 7, 22, 3]。 MSH 的目标是通过利用来自多种模式的所有信息来学习哈希码。因此,MSH 要求对包括查询点和数据库中的所有数据点在内的所有数据点都应遵守所有模式。在实践中,MSH 的应用受到限制,因为在许多情况下,很难获得所有数据点的所有模态。相反,CMH 的应用场景比 MSH 更灵活。在 CMH 中,查询点的形态不同于数据库中点的形态。此外,通常查询点仅具有一种模态,而数据库中的点可以具有一种或多种模态。例如,我们可以使用文本查询来检索数据库中的图像,也可以使用图像查询来检索数据库中的文本。由于应用广泛,CMH比MSH更受关注。

        最近提出了许多 CMH 方法。现有的代表性方法包括跨模态相似性敏感散列(CMSSH)[2]、跨视图散列(CVH)[18]、多模态潜在二进制嵌入(MLBE)[39]、正则化散列(CRH)[38]、语义相关最大化(SCM)[35]、集体矩阵分解散列(CMFH)[7]、语义主题多模态散列(STMH)[33]和语义保持散列(SePH)[22]。几乎所有这些现有的 CMH 方法都是基于手工制作的特征。这些手工制作的基于特征的方法的一个缺点是特征提取过程独立于哈希码学习过程,这意味着手工制作的特征可能不是最佳兼容的使用哈希码学习过程。因此,这些现有的具有手工特征的 CMH 方法在实际应用中可能无法达到令人满意的性能。

        最近,使用神经网络进行深度学习 [19, 16] 已被广泛用于从头开始执行特征学习,并具有良好的性能。也存在一些采用深度学习进行单模散列的方法[37、23、20、40、24]。这些方法表明端到端深度学习架构更适合散列学习。对于 CMH 设置,还出现了一种方法,称为深度视觉语义哈希 (DVSH) [3],具有用于特征学习的深度神经网络 1。然而,DVSH 只能用于一种特殊的 CMH 情况,其中一种模式必须是时间动态的。

        在本文中,我们提出了一种新的 CMH 方法,称为深度跨模态哈希 (DCMH),用于跨模态检索应用。 DCMH 的主要贡献概述如下:

1、DCMH是一个具有深度神经网络的端到端学习框架,每种模式都有一个,用于从头开始执行特征学习。
2、哈希码学习问题本质上是一个离散的学习问题,很难学习。因此,大多数现有的 CMH 方法通过将原始的离散学习问题放松为连续学习问题来解决这个问题。这种放松过程可能会降低学习哈希码的准确性[25]。与这些基于松弛的方法不同,DCMH 直接学习离散哈希码而无需松弛。
3、在具有图像-文本模式的真实数据集上进行的实验表明,DCMH 可以优于其他基线,以在跨模式检索应用中实现最先进的性能。

        本文的其余部分安排如下。第 2 节介绍了本文的问题定义。我们在第 3 节介绍我们的 DCMH 方法,包括模型制定和学习算法。实验显示在第 4 节。最后,我们在第 5 节结束我们的工作。

2.问题定义

        2.1符号

        像w这样的黑体小写字母被用来表示向量。像W这样的黑体大写字母被用来表示矩阵,以及𝑖th行和𝑗th中的元素W的列记为𝑊𝑖𝑗。W的𝑖th行记为W𝑖∗,W的𝑗th列记为W∗𝑗。W𝑇是w的转置。我们用1表示一个所有元素都为1.tr(⋅)的向量,∥⋅∥𝐹分别表示一个矩阵的轨迹和一个矩阵的弗罗比尼乌斯范数。符号(⋅)是一个元素级的符号函数,定义如下:

        2.2 跨模态哈希

        虽然本文提出的方法可以很容易地适应于两种以上模式的情况,但我们在这里只关注两种模式的情况。

        假设我们有𝑛训练实体(数据点),每个实体都有两种特征模式。本文在不丧失一般性的情况下,使用图像-文本数据集进行说明,即每个训练点同时具有文本模态和图像模态。我们使用X={x𝑖}𝑛𝑖=1来表示图像模态,其中x𝑖可以是手工制作的特征或图像𝑖的原始像素。此外,我们使用Y={y𝑖}𝑛𝑖=1来表示文本模态,其中y𝑖通常是与图像𝑖相关的标签信息。此外,如果图像x𝑖和文本y𝑗相似,我们还给出了一个跨模态相似矩阵S.𝑆𝑖𝑗=1,否则为𝑆𝑖𝑗=0。在这里,相似性通常是由一些语义信息来定义的,如类标签。例如,如果图像x𝑖和texty𝑗共享相同的类标签,我们可以说它们是相似的。否则,如果图像x𝑖和文本y𝑗来自不同的类,则它们是不同的。

        鉴于上述训练信息X,Y和S,跨模式散列的目标是学习两个模式的两个哈希函数:ℎ(𝑥)(X)∈{−1,+1}𝑐图像模式和ℎ(𝑦)(y)∈{−1,+1}𝑐文本模式,其中𝑐是二进制代码的长度。这两个哈希函数应该保持s中的跨模态相似性。更具体地说,如果𝑆𝑖𝑗=1,二进制码b(𝑖𝑥)=ℎ(𝑥)(x𝑖)和b(𝑗𝑦)=ℎ(𝑦)(y𝑗)之间的汉明距离应该很小。否则,如果𝑆𝑖𝑗=为0,则对应的汉明距离应较大。

        在这里,我们假设训练集中每个点的两种特征模式都可以被观察到,尽管我们的方法也可以很容易地适应其他设置,其中一些训练点只有一种特征模式被观察到。请注意,我们只对训练点做出这个假设。在我们对模型进行了训练之后,我们可以使用学习到的模型来生成一种或两种模态的查询点和数据库点的哈希码,这与跨模态检索应用程序的设置完全匹配。

 

3、 深度跨模态哈希 

        在本节中,我们将详细介绍我们的深度CMH(DCMH)方法,包括模型公式和学习算法。

        3.1方法

        整个DCMH模型如图1所示,它是一个端到端学习框架,通过无缝集成了两部分:特征学习部分和哈希码学习部分。在学习过程中,每个部分都可以反馈给另一部分。

        3.1.1功能学习部分

        特征学习部分包含两个深度神经网络,一个用于图像模态,另一个用于文本模态。图像模态的深度神经网络是一个改编自[5]的卷积神经网络(CNN)。在这个CNN模型中有八个层。前七层与[5]的CNN-F相同。第八层是全连接层,输出是学习到的图像特征。

        表1显示了CNN的图像模态的详细配置。具体地说,8层分为5个卷积层和3层全连通层,分别在表1中表示为“conv1-conv5”和“全6-满8”。每个卷积

        层由几个方面来描述:∙“f.𝑛𝑢𝑚×𝑠𝑖𝑧𝑒×𝑠𝑖𝑧𝑒”表示卷积滤波器的数量及其接受域的大小。∙“st”表示卷积步幅。“∙“pad”表示要添加到输入的每个大小中的像素数。“∙“LRN”表示是否应用了本地响应规范化(LRN)[16]。“∙“pool”表示降采样因素。∙全连接层中的节点数,如“4096”,表示该层中的节点数。它也是该层输出的维数

        所有的前七层都使用校正线性单元(ReLU)[16]作为激活函数。对于第八层,我们选择身份函数作为激活函数。为了从文本中进行特征学习,我们首先将每个文本y𝑗表示为一个具有单词袋(BOW)表示的向量。然后将词袋向量作为输入到一个具有两个全连接层的深度神经网络中,表示为“满1-满2”。文本深度神经网络的详细配置如表2所示,其中配置显示了每层的节点数量。第一层的激活函数为ReLU,第二层的激活函数为标识函数。

        请注意,本文的主要目标是为了表明,通过使用深度神经网络从头开始学习特征,设计一个跨模式散列的端到端学习框架是可能的。但是如何设计呢不同的神经网络并不是本文研究的重点。其他深度神经网络也可以用于我们的DCMH模型的特征学习,这将留未来的研究。

        3.1.2 哈希代码学习部分

        设𝑓(x𝑖;𝜃𝑥)∈ℝ𝑐表示𝑖点的学习到的图像特征,它对应于图像模态的CNN的输出。此外,let𝑔(y𝑗;𝜃𝑦)∈ℝ𝑐表示𝑗点所学习的文本特征,它对应于文本模态的深度神经网络的输出。这里,𝜃𝑥是图像模态CNN的网络参数,𝜃𝑦是文本模态深度神经网络的网络参数。

        

         DCMH的目标函数定义如下

             很容易发现,最小化这个负对数似然,相当于最大化似然,可以使F∗𝑖和G∗𝑗之间的相似度(内积)在𝑆𝑖𝑗=1时较大,在𝑆𝑖𝑗=0时较小。因此,优化(1)中的第一项可以保持S中在图像特征表示F和文本特征表示G中的跨模态相似性。

        通过对(1)中的第二项𝛾(∥B(𝑥)−F∥2𝐹+∥B(𝑦)−G∥2𝐹)进行优化,我们可以得到B(𝑥)=符号(F)和B(𝑦)=符号(G)。因此,我们可以认为F和G分别是B(𝑥)和B(𝑦)的连续替代物。由于F和G可以保持S中的跨模态相似性,因此二进制哈希码B(𝑥)和B(𝑦)也可以期望保持S中的跨模态相似性,这与交叉模态哈希的目标完全匹配。

        (1)中的第三项𝜂(∥F1∥2𝐹+∥G1∥2𝐹)用于使哈希代码的每个位在所有训练点上进行平衡。更具体地说,在所有的训练点上,每一位的+1和−1的数量应该几乎相同。此约束可用于最大化每个位所提供的信息。

        在我们的实验中,我们发现,如果将两种模式的二进制码设置为对相同的训练点相同,则可以获得更好的性能。因此,我们设置B(𝑥)=B(𝑦)=B。然后,(1)中的问题可以转化为以下公式:

         这是我们的DCMH对学习的最终目标函数。从(2)中,我们可以发现深度神经网络(𝜃𝑥和𝜃𝑦)的参数和二进制哈希码(B)都是从同一目标函数中学习到的。

        也就是说,DCMH将特征学习和哈希码学习集成到同一个深度学习框架中。请注意,我们只做了B(𝑥)=B(𝑦)的训练点。

        在我们了解了(2)中的问题之后,如果点𝑖是数据库的查询点而不是训练点,我们仍然需要为同点𝑖的两种不同模式生成不同的二进制代码b(𝑖𝑥)=ℎ(𝑥)(x𝑖)和b(𝑖𝑦)=ℎ(𝑦)(y𝑖)。这将在第3.3节中进一步说明。

        3.2 学习

        我们采用交替学习策略来学习𝜃𝑥、𝜃𝑦和b。每次我们学习一个参数,其他参数都是固定。在算法1中简要概述了DCMH的整个交替学习算法,详细的推导将在本小节的以下内容中进行介绍。

        3.2.1学习𝜃𝑥,与𝜃𝑦和B固定

       当𝜃𝑦和B固定时,我们使用反向传播(BP)算法来学习图像模态的CNN参数𝜃𝑥。作为大多数现有的深度学习方法[16],我们利用随机梯度下降(SGD)和BP算法来学习𝜃𝑥。更具体地说,在每次迭代中,我们从训练集中抽取一小批点,然后基于采样数据进行我们的学习算法。 、

        特别是,对于每个采样点x𝑖,我们首先计算以下梯度:

 3.2.2学习𝜃𝑦,与𝜃𝑥和B固定

        当𝜃𝑥和B固定时,我们还使用SGD和BP算法学习文本模态的神经网络参数𝜃𝑦。更具体地说,对于每个采样点y𝑗,我们首先计算以下梯度:

         然后利用链规则用∂∂G𝒥∗𝑗计算∂𝒥∂𝜃𝑦,在此基础上利用BP更新参数𝜃𝑦。

3.2.3 Learn B , with 𝜃 𝑥 and 𝜃 𝑦 Fixed
        当𝜃𝑥和𝜃𝑦被固定时,(2)中的问题可以重新表述如下:

        

         很容易发现,二进制代码𝐵𝑖𝑗应该保持与𝑉𝑖𝑗相同的符号。因此,我们有:

 3.3.示例外扩展

        对于任何不在训练集中的点,我们都可以得到它的哈希代码,只要观察到它的一种模式(图像或文本)。特别是,给定点𝑞的图像模态x𝑞,我们可以采用正向传播来生成哈希码如下:

         类似地,如果点𝑞只有文本模态y𝑞,我们也可以生成哈希代码b(𝑦)𝑞如下:

         因此,我们的DCMH模型可以用于跨模态搜索,其中查询点有一个模态,而数据库中的点有另一个模态

5. Conclusion 

        在本文中,我们提出了一种新的哈希方法,称为DCMH,用于跨模态检索应用。DCMH是一个端到端深度学习框架,它可以同时执行特征学习和哈希码学习。在三个数据集上的实验表明,DCMH可以显著优于其他基线,以在实际应用中达到最先进的性能。

        提出了一种基于深度神经网络的端到端哈希函数学习框架,并通过似然函数同时表示特征和哈希码进行学习。

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值