Ranking-Based Deep Cross-Modal Hashing(RDCMH)--文献翻译

AAAI 2019

论文下载:Ranking-Based Deep Cross-Modal Hashing | Proceedings of the AAAI Conference on Artificial Intelligence

摘要

        跨模式哈希因其在多模式数据检索中的低存储成本和快速查询速度而受到越来越多的关注。然而,大多数现有的散列方法都是基于对象的手工或原始级别特征,这可能与编码过程不兼容。此外,这些哈希方法主要用于处理简单的成对相似性。与多个标签关联的实例的复杂多级排序语义结构尚未得到很好的探索。在本文中,我们提出了一种基于排名的深度跨模态哈希方法(RDCMH)。 RDCMH首先利用数据的特征和标签信息推导出半监督语义排名表。接下来,为了扩展手工特征的语义表示能力,RDMCH 将语义排序信息集成到深度跨模态哈希中,并联合优化深度特征表示和哈希函数的兼容参数。对真实多模态数据集的实验表明,RDCMH 优于其他竞争基线,并在跨模态检索应用程序中实现了最先进的性能。

介绍

        随着数据的爆炸式增长,如何高效、准确地从海量数据中检索出所需的信息成为研究热点并具有多种应用。例如,在信息检索中,近似最近邻 (ANN) 搜索 (Andoni and Indyk 2006) 发挥着重要作用。由于 ANN 搜索的低存储成本和快速检索速度,散列受到越来越多的关注(Kulis 和 Grauman 2010)。哈希的主要思想是将环境空间中的高维数据转换为低维汉明空间中的二进制码,而原始空间中数据之间的接近度保留在汉明空间中(Wang et al. 2016; 2018 年;邵等人,2016 年)。通过使用二进制哈希码来表示原始数据,可以显着降低存储成本。此外,我们可以使用哈希码来构建索引,实现人工神经网络的恒定或亚线性时间复杂度搜索。因此,散列在大规模数据集上的 ANN 搜索中变得越来越流行。

        在许多应用中,数据可以具有多种模式。例如,网页不仅可以包含文字描述,还可以包含图像和视频来说明其内容。这些不同类型(视图)的数据称为多模态数据。随着多模态数据在各种应用中的快速增长,多模态哈希最近得到了广泛的研究。现有的多模态散列方法可以分为两大类:多源散列(MSH)和跨模态散列(CMH)(Zhu et al. 2013)。 MSH 的目标是通过利用来自多种模式的所有信息来学习哈希码。因此,MSH 需要对所有数据点观察到的所有模态,包括查询点和数据库中的那些。在实践中,获取所有模态的所有数据点通常是困难的,甚至是不可行的,因此 MSH 的应用是有限的。相反,CMH的应用场景更加灵活实用。在 CMH 中,查询点的形态可以不同于数据库中点的形态。此外,查询点通常只有一种模态,而数据库中的点可以具有一种或多种模态。例如,我们可以使用文本查询从数据库中检索图像,也可以使用图像查询从数据库中检索文本。由于其广泛的应用,CMH 越来越受到关注(Kumar 和 Udupa 2011;Zhang 和 Li 2014)。

        最近提出了很多 CMH 方法,现有的 CMH 方法大致可以分为两类:有监督的和无监督的。无监督方法通过考虑底层数据结构、分布或拓扑信息来寻求哈希编码函数。仅举几例,典型相关分析 (Rasiwasia et al. 2010) 通过最大化两种模式的投影之间的相关性,将两种模式(例如视觉和文本)映射到一个公共空间。媒体间散列(Song et al. 2013)通过学习具有模内和模间一致性的线性散列函数,将特定于视图的特征映射到公共汉明空间。监督方法试图利用监督信息(即语义标签)来提高性能。跨模态相似性敏感散列 (CMSSH) (Bronstein et al. 2010)将学习编码为二进制分类问题,并使用提升方法有效地学习哈希函数。 Co-regularized hashing (Yi and Y eung 2012) 为每个模态中的每一位二进制代码学习一组散列函数。语义相关最大化 (SCM) (Zhang and Li 2014) 通过最大化两种模式之间关于语义标签的相关性来优化散列函数。语义保留哈希 (SePH) (Lin et al. 2017) 通过考虑视图之间的语义一致性,为任何实例的所有观察到的视图生成一个统一的哈希码。

        大多数监督哈希是成对监督方法,它利用实例标签和实例对成对标签来训练编码函数,这样标签信息就可以保存在汉明空间中(Chang et al. 2012)。然而,他们的目标对于 ANN 搜索可能不是最优的,因为他们没有完全探索高阶排名信息(Song et al. 2015)。例如,三元组秩包含查询图像、正图像和负图像,其中正图像与查询图像比负图像更相似(Lai et al. 2015)。高阶排序信息携带三元组中的相对相似度排序,提供更丰富的监督,往往比成对排序更容易获得。一些散列方法考虑了散列学习的高阶排名信息。例如,基于深度语义排序的哈希(Zhao et al. 2015)学习基于 CNN(卷积神经网络)的深度哈希函数(Krizhevsky、Sutskever 和 Hinton 2012),它保留了多标签图像的语义结构。同时特征学习和哈希编码 (Lai et al. 2015) 通过精心设计的深度架构为图像生成按位哈希码,并使用三元组排序损失来保持相对相似性。

        然而,这些语义排序方法只考虑一种模态,不能应用于跨模态检索。此外,排名列表只是简单地通过共享标签的数量来计算,不能保留标签的整体排名信息。此外,这些方法采用的排序列表要求有足够的标记训练数据,不能利用丰富的未标记数据,其多模态特征信息可以提高跨模态哈希性能。引入了半监督散列方法来利用标记和未标记样本(Wang、Kumar 和 Chang 2012),但这些方法不能直接应用于多模态数据。几乎所有这些 CMH 方法都基于手工制作(或原始级别)特征。这些手工制作的基于特征的方法的一个缺点是特征提取过程与哈希码学习过程相隔离,或者原始原始级特征不能很好地反映对象之间的语义相似性。手工制作的特征可能与哈希码学习过程不兼容(Cao et al. 2017)。因此,这些 CMH 方法在实际应用中无法达到令人满意的性能。

        最近,深度学习也被用于从零开始进行特征学习,具有良好的性能。深度跨模态哈希(DCMH)(Jiang and Li 2017)将深度特征学习与跨模态检索相结合,用多模态对象的多标签指导深度学习过程。相关自动编码器散列(Cao et al. 2016)采用深度学习进行单模散列。他们的研究表明,端到端深度学习架构更适合散列学习。但是,他们仍然要求训练数据有足够的标签信息,并且将哈希量化层的参数与深度特征学习层的参数视为相同,这可能会降低量化过程的判别力。

        在本文中,我们提出了一种基于排名的深度跨模态哈希(RDCMH),用于跨模态检索应用。 RDCMH首先利用数据的特征和标签信息推导出半监督语义排名表。接下来,将语义排序信息整合到深度跨模态哈希中,并联合优化排序损失和哈希码函数,以寻求深度特征表示和哈希函数的最优参数。 RDCMH 的主要贡献概述如下:

1、提出了一种新的跨模态哈希函数学习框架(RDCMH),将深度特征学习与语义排序相结合,解决跨模态哈希保持多标签对象之间语义相似性的问题;并且还引入了标签和特征信息诱导的半监督语义排名度量来利用标记和未标记的数据。
2、RDCMH 联合优化了深度特征提取过程和哈希量化过程,使特征学习过程与哈希码学习过程更加兼容,这种联合优化确实显着提高了性能。
3、在基准多模态数据集上的实验表明,RDCMH 优于其他基准(Bronstein 等人 2010;Zhang 和 Li 2014;Lin 等人 2017;Jiang 和 Li 2017;Cao 等人 2016)并达到了 state-of-the - 跨模式检索任务中的艺术表现。

建议的方法

        假设 X = {x1, x2,····, xn} ∈ Rn×dX 和 Y = {y1, y2,···, yn} ∈ Rn×dY 是两种数据模态,n 是实例数(数据点), dX(dY ) 是各个模态中实例的维数。例如,在 Wiki-image 搜索应用程序中,xi 是实体 i 的图像特征,yi 是该实体的标签特征。 Z ∈ Rn×m 存储了 X 和 Y 中 n 个实例关于 m 个不同标签的标签信息。 zik ∈ {0, 1}, zik = 1 表示 xi 被标记为第 k 个标签; zik = 0 否则。不失一般性,假设前 l 个样本具有已知标签,而其他 u = n - l 个样本缺乏标签信息。要启用跨模态散列,我们需要学习两个散列函数,F1: Rd1 → {0, 1}c 和 F2: Rd2 → {0, 1}c,其中 c 是二进制散列码的长度。期望这两个散列函数将各自模态中的特征向量映射到公共汉明空间并保持原始数据的接近性。

        RDCMH主要涉及两个步骤。它首先根据标签和特征信息测量实例之间的语义排名。接下来,它定义了一个目标函数来同时考虑语义排序、深度特征学习和散列编码函数学习;并进一步引入了一种替代优化程序来共同优化这些学习目标。 RDCMH 的整体工作流程如图所示。

半监督语义排名

        为了保持语义结构,我们可以强制通过汉明距离计算的邻居的排名顺序与从排名评估度量方面的语义标签得出的排名顺序一致。假设q是一个查询点,可以根据标签信息的排序顺序计算出一个数据库点x相对于q的语义相似度。然后,我们可以通过按照相似度的降序对数据库点进行排序来获得 q 的 groundtruth 排名列表(Zhao et al. 2015; Song et al. 2015)。然而,这种相似度只是简单地从共享标签的数量中得出,这些基于语义排名的方法忽略了训练数据的标签并不总是容易获得的。此外,这些方法适用于一种模态,不能直接应用于多模态数据。

        为了缓解标签数据不足的问题,我们引入了一种半监督语义度量,该度量同时考虑了训练数据的标签和特征信息。实例的标签取决于该实例的特征,语义相似度与各个实例的特征相似度正相关(Zhang and Zhou 2010; Wang et al. 2009)。半监督语义度量定义如下:

         其中 s1ij 是 xi 和 xj 的特征相似度,而 s2ij 是标签相似度,两者都是通过余弦相似度计算的。注意,sxxij 总是在区间 [0,1] 中,也可以使用其他相似度度量。方程。 (1) 可以考虑标记和未标记的训练数据。具体来说,对于两个未标记的数据,xi 和 xji 之间的相似度是直接从各自数据的特征信息中计算出来的。对于带标签的数据,我们认为标签相似度 s2ij 是对 s1ij 的补充。 s2ij 越大,sxxij 越大。通过这种方式,我们利用训练数据的标签和特征信息来解决标签不足的问题。

        将排序顺序扩展到跨模态的情况下,我们应该在模态间和模态内保持语义结构。基于 Sxx ∈ Rn×n,我们可以通过将数据库点按 sxxqk 的降序排序来获得 q 的排序列表 {xqk}nk=1。类似地,我们可以为数据模态 Y 定义半监督语义相似度 Syy ∈ Rn×n。为了平衡两种模态之间排名表的不一致,半监督语义相似度被平均为: Sxy = Syx = (Sxx + Syy) /2。最后,我们可以得到三个不同的排序列表:{rxi }ni=1, {ry i }ni=1, {rxy i }ni=1 对于每个查询点。

图 1:提议的基于等级的深度跨模态哈希(RDCMH) 的工作流程。 RDCMH 包含两个步骤:(1) 用于学习图像表示的 Image CNN 网络和用于学习文本表示的 Text 两层网络。 (2) 联合优化跨模态三元组排序损失和定量损失,寻求深度特征表示和哈希函数的最优参数。

统一目标函数

        深度特征表示 大多数现有的散列方法首先从图像中提取手工制作的视觉特征(如 GIST 和 SIFT),然后在这些特征上学习“浅”(通常是线性)散列函数(Bronstein 等人 2010;Zhang 和 Li 2014;Lin 等人。 2017)。然而,这些手工制作的特征表示能力有限,可能会丢失关键语义信息,这对于相似性搜索很重要。在这里,我们考虑使用 CNN(Krizhevsky、Sutskever 和 Hinton 2012)设计深度哈希函数来联合学习特征表示及其到哈希码的映射。这种非线性分层哈希函数比基于预先制作的特征的浅层哈希函数具有更强大的学习能力,因此能够学习到更适合多级语义相似度搜索的特征表示。其他表示学习模型(即 AlexNet)也可用于为 RDCMH 学习图像和文本的深度特征。特征学习部分包含两个深度神经网络,一个用于图像模态,另一个用于文本模态。

        用于图像模态的深度神经网络是 CNN,它包括八层。前六层与 CNN-F 中的相同(Chatfield et al. 2014)。第七层和第八层是全连接层,输出是学习到的图像特征。对于文本模态,我们首先将每个文本表示为具有词袋(BOW)表示的向量。接下来,词袋向量被用作具有两个全连接层的神经网络的输入,表示为“full1 - full2”。 “full1”层有 4096 个神经元,第二层“full2”有 c 个(哈希码)神经元,第一层的激活函数是 ReLU,第二层的激活函数是恒等函数。

        为了表示,我们将 x 和 y 的学习深度特征表示表示为 φ(x) 和 φ(y)。这两种表示的非线性映射参数将在后面讨论。

 三元组损失和定量损失

        直接优化跨模态哈希的排名标准是非常困难的。因为很难比较排行榜并严格遵守排行榜。为了规避这个问题,我们使用三重排序损失作为代理损失。给定一个查询 q 和一个 q 的排名列表 {rxqi}ni=1,我们可以在一组哈希码三元组上定义一个排名损失,如下所示:

         其中 n 是排序列表的长度,sqi 和 sqj 分别是查询 q 与 xi 和 xj 之间的相似度。 h(x) 表示 x 的学习哈希码,[x]+ = max(0, x), δdH(a1, a2, a3) = dH(a1, a2) - dH(a1, a3), dH(· ) 是汉明距离。这个三元组排名损失是成对不一致的凸上限,它计算了排名不正确的三元组的数量。

        方程。 (2) 同等对待所有三元组,但一个三元组的两个样本(xi 和 xj)可能与查询 q 具有不同的相似度。所以我们引入基于排名表的加权排名三元组损失如下:

 xi 和 q 之间的相关性大于 xj 和 q 之间的相关性,如果 xi 对 q 排在 xj 之后,则排名损失就越大。对于跨模态的情况,我们应该平衡两种模态之间排名列表的不一致。为此,我们给出同时考虑三元组排序损失和定量损失的统一目标函数如下:

        

         

        Q 是查询点的集合,φ(x) 和 φ(y) 是图像和文本的深层特征,Wx 和 Wy 分别是两种模态的系数矩阵。 λ 是平衡三元组排序损失和定量损失的标量参数。 Bx 和 By 分别是图像和文本模态的二进制哈希码。在训练过程中,由于同一个样本的不同模态数据共享同一个标签集,而且它们实际上代表了不同视角的同一个样本,我们将两个模态的相同训练点的二进制编码固定为相同,即Bx = By = B。

        方程。 (4) 同时考虑三元组排序损失和定量损失。第一项通过最小化排名不正确的三元组的数量来强制跨模式排名列表的一致性,第二项(由 λ 加权)衡量散列的定量损失。 F 和 G 可以保留 Sxx、Syy 和 Sxy 中的跨模态相似性,因此二进制哈希码 Bx 和 By 也可以保留这些跨模态相似性。这与跨模式散列的目标完全一致。

        优化我们可以解决方程式。 (4) 通过乘数交替方向法 (ADMM) (Boyd et al. 2011),交替优化 Wx、Wy 和 B 之一,同时保持其他两个固定。

        在 Wy 和 B 固定的情况下优化 Wx:我们观察到方程中的损失函数。 (4) 实际上是加权三元组损失和定量损失的总和。像大多数现有的深度学习方法一样,我们利用随机梯度下降 (SGD) 通过反向传播 (BP) 算法来学习 Wx。为了便于梯度计算,我们将汉明距离改写为内积的形式: dH(h(a), h(b)) = c−h(a)T h(b) 2 ,其中 c 是哈希位数。

        更具体地说,在每次迭代中,我们从训练集中抽取一小批点,然后根据三元组数据执行我们的学习算法。对于任何三元组 (q; xi; xj),方程的导数。 (4) 关于数据模态 X 中的系数矩阵 Wx 由下式给出:

 

 我们可以使用链式法则计算 ∂L ∂Wx 与 ∂L ∂F∗q 、 ∂L ∂F∗i 和 ∂L ∂F∗j 。这些导数值用于更新系数矩阵 Wx,然后将其馈送到六层 CNN 中,通过 BP 算法更新每层的 φ(x) 的参数。与 Wx 的优化类似,我们在 Wx 和 B 固定的数据模态 Y 上优化 Wy。导数值类似地用于更新系数矩阵 Wy,然后将其馈入所采用的两层网络,通过 BP 算法更新每层中的 φ(y) 的参数。固定 Wx 和 Wy 优化 B:当 Wx 和 Wy 被优化和固定时,F 和 G 也确定了,则方程中的最小化问题。 (4) 等于一个最大化如下:

 

结论

        在本文中,我们提出了一种新的跨模态哈希函数学习模板 (RDCMH),将深度特征学习与基于语义排序的哈希无缝集成。 RDCMH 可以为跨模态散列保留多标签对象之间的多级语义相似性,并且它还引入了标签和特征信息诱导的半监督语义度量来利用标记和未标记的数据。大量实验表明,RDCMH 在跨模式检索中优于其他最先进的散列方法。 RDCMH 的代码可在 mlda.swu.edu.cn/codes.php?name=RDCMH 获得。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值