Deep Cross-Modal Hashing

DCMH论文阅读笔记。

1533708837904

CVPR 2018

模型结构

1533709036203

由两个部分组成:

  • 特征学习部分
  • Hash-code学习部分
  • 在学习过程中,两个部分会相互反馈

特征学习部分

图像特征学习

使用的CNN由论文Return of the devil in the details: Delving deep into convolutional nets中继承而来,结构如下

1533709740539

文本特征学习

使用词袋模型表示文本作为网络的输入,网络的结构如下:

1533710577693

  • 第一层的激活函数是RELU,第二层直接输出

Hash-Code学习部分

令$f(\mathbf{x}_i;\theta_x) \in \mathbb{R}^c$和$g(\mathbf{y}_j;\theta_y)\in \mathbb{R}^c$分别表示图像特征网络和文本特征网络的输出,$\theta_x$和$\theta_y$分别是两个网络的参数。

DCMH的目标函数如下:

  • $\mathbf{F} \in \mathbb{R}^{c\times n}$,$\mathbf{F}_{*i} = f(\mathbf{x}_i; \theta_x)$
  • $\mathbf{G} \in \mathbb{R}^{c\times n}$,$\mathbf{G}_{*j} = g(\mathbf{y}_j; \theta_y)$
  • $\mathbf{B}_{*i}^{(x)}$是图片$\mathbf{x}_i$的hash code
  • $\mathbf{B}_{*j}^{(y)}$是文本$\mathbf{y}_j$的hash code
  • $\gamma$和$\eta$是超参数
  • $\mathbf{1}$ 是值全为1的列向量

(1) 式中第一项

负对数似然,其似然函数如下:

其中,$\sigma(\Theta_{ij}) = \frac1{1+e^{-\Theta_{ij}}}$,经过变形,得

  • 最大化似然估计或者最小化负对数似然都可以达到目标,即当$S_{ij} = 1$时, 的相似度(内积)越大,否则,他们的相似度越小
  • 最终图片特征表示$\mathbf{F}$和文本特征表示$\mathbf{G}$可以保留相似性矩阵$\mathbf{S}$的内容

(1) 式中第二项

要使得该项最小,我们可以得到$\mathbf{B}^{(x)} = {\rm sign}(\mathbf{F})$,$\mathbf{B}^{(y)} = {\rm sign}(\mathbf{G})$。因为$\mathbf{F}$和$\mathbf{G}$都够保留$\mathbf{S}$中的相似性,所以$\mathbf{B}^{(x)}$和$\mathbf{B}^{(y)}$也能够达到相同的效果,而这正是跨模态哈希的目标。

(1) 式中第三项

  • 使得所有Hash code同一位的$+1$和$-1$的个数尽可能相等
    • 因为$\mathbf{F,G} \in \mathbb{R}^{c \times n}$,$\mathbf{1} \in \mathbb{R}^{n \times 1}$,$\mathbf{F1}$ 的结果即是所有数据的Hash code对应的的每一位相加,得到长度为$c$的向量(或$c\times 1$的矩阵),然后平方求和,使之最小。
  • 使得每一位bit提供的信息最大

改进

令$\mathbf{B}_{(x)} = \mathbf{B}_{(y)} = \mathbf{B}$,有:

此为最终的目标函数。

  • $\theta_x,\theta_y$和$\mathbf{B}$从同一个目标函数中学得
  • 仅在训练阶段令$\mathbf{B}^{(x)} = \mathbf{B}^{(y)}$

学习策略

每次固定其他参数,只学习一个参数。

固定$\theta_y$和$\mathbf{B}$,学习$\theta_x$

使用BP算法学习参数$\theta_x$

首先计算梯度

然后通过链式法则更新$\theta_x$。

固定$\theta_x$和$\mathbf{B}$,学习$\theta_y$

使用BP算法学习参数$\theta_y$

计算梯度

然后通过链式法则更新$\theta_y$。

固定$\theta_x$和$\theta_y$,学习$\mathbf{B}$

当$\theta_x$和$\theta_y$固定的时,(2) 式可转化为:

其中$\mathbf{V} = \gamma(\mathbf{F}+\mathbf{G})$。

要使上式最大,$B_{ij}$应该与$V_{ij}$同号,因此:

实验

数据集

  • MIRFLICKR-25K dataset
    • 25,000图片,每张图片有1到多个文本标签
    • 选择至少有20个文本标签的图片用来实验
    • 24个种类
  • IAPR TC-12 dataset
    • 20,000图片-文本对,255个种类
    • 图片由句子描述
  • NUS-WIDE dataset
    • 选择195,834图像-文本对
  • 含有至少同一种类标记的图片和文本视为相似的,否则不相似

评价方法

Hamming Ranking Protocols

将结果按照与查询的Hamming距离排序,计算最终的MAP值

Hash Lookup Protocols

返回与查询在一定Hamming redius范围内的所有结果,使用PR curve评价

此时不赞何时赞!