Deep Visual-Semantic Hashing for Cross-Modal Retrieval

Deep Visual-Semantic Hashing for Cross-Modal Retrieval(DVSH)论文阅读笔记。

image-20180911095135825

KDD 2016

本文提出了一个深度图像语义哈希(DVSH)模型,用来为图像和句子生成哈希码。模型将对图像操作的CNN、对句子操作的RNN和一个结构化的最大间隔目标函数结合起来,同时有效地实现了多模态特征抽取和跨模态哈希表示。

模型

image-20180911101828745

  • 个样本
  • 表示图像模态数据的 维特征
  • 表示第 个句子的词序列,其中 是序列 中时刻 的词的one-hot向量,词典大小
  • 相似标签 表示 相似, 表示不相似,相似矩阵 一般从数据的语义标签或者点击查询的反馈中获得

本文提出的方法是学习融合函数,将图像和文本数据映射成 维的Hamming距离空间 中,并且保留他们之间的相关关系;模型同时还学习两个具体模态的哈希函数 ,将数据库中的每一个图像和句子数据都编码成二进制码

本文的模型中,CNN使用的是AlexNet,RNN使用的是LSTM,模型的输入 ,然后将其传入特征学习和哈希码生成的流水线中。

图像语义融合网络

如上图左边部分所示,网络将图片和文本的特征表示映射到一个共同的语义表达空间中,使得图像-文本对包含的语义关联度最大,即保留相似标签表示的数据的相似度。

将一张图片 作为输入传入 CNN 网络中,生成一个固定长度的表示向量 。将AlexNet的 fc8 的分类层替换成一个特征映射层,将 fc7 特征映射成一个新的 维特征。

LSTM 将在时间 的输入 和前一个时间 的隐含状态 映射成一个输出 和新的隐含状态

为了将CNN和LSTM整合到起来,这里引入了第二层LSTM,即将 的表示 融合到LSTM每个状态的第二层,融合层(绿色的LSTM)在状态 的激活函数为:

为了使得 与最终的哈希码 的差别更小,通过 tanh 函数将 变换到 之间。

上述过程中每个时间步 都生成了一个联合特征 ,但是对于一个图像-文本对,只需要一个联合特征,本文通过 mean embeddings of distributions 来生成每一对的融合特征:

其中 是指示变量,当词 在时间步 t 出现时, ,否则 。这样处理的原因是每个句子的长度不一样。

值得注意的是,生成的联合语义特征 不仅需要“捕获”图像数据的空间依赖和文本数据的时序特征,还应该获取数据在Hamming空间的关系,保留数据对之间的相似信息。

余弦最大间距损失(Cosine Max-Margin Loss)

时,表示数据 相似,则他们的哈希码 也必须相似。这意味着他们联合语义表示 应该相似,反之,他们的联合语义表示应该不相似。

使用余弦相似度 来度量两者的关联性。对于相似度保留学习,提出了下面的余弦最大间距损失

其中, 是间距参数,固定为

基于位的最大间距损失(Bitwise Max-Margin Loss)

对于每一个图像-文本对 ,为了减小联合语义特征 和他们的模态相关的哈希码 的差距,要求 尽可能接近,即使得 最小化。

由于平方损失容易受离群点影响,因此提出了基于位的最大间距损失

其中 是间距参数,固定为 。该目标函数鼓励 的第 位分散在 两边。

特定模态的Hash网络

图像语义融合网络学习的特征是连接两个不同模态的桥梁,其存在两个问题:

  • 不能扩展到样本外的数据
  • 需要两个模态的数据作为输入,不能直接用于跨模态检索

因此还需要两个Hash网络,来直接学习每个模态的Hash函数。

图像哈希网络

直接使用AlexNet的 conv1-fc7 层,然后将 fc8 层的softmax替换成一个Hash函数,将 的特征表示转换成哈希码 。为了保证生成的哈希码在联合语义空间中,要求 的哈希码 和联合特征 尽可能的接近:

文本哈希网络

将 LSTM 中的softmax层替换为Hash函数,将特征表示转换成哈希码,同样的,要求句子 的联合特征表示 和哈希码 的平方误差尽可能小:

DVSH

整合上述的损失函数,有:

其中

  • 表示网络参数
  • 为惩罚因子

训练完成后,使用 获得每个模态的哈希码。

学习算法

使用BP算法,通过SGD来学习网络的参数。

实验

详见论文。

此时不赞何时赞!