与无监督哈希算法相比,监督哈希算法通过标签信息通畅能获取更好的模型性能。对于无标签的数据,如果我们能够挖掘其潜在的标签信息,并将其应用到模型训练过程中,可以明显提升无监督哈希算法的模型性能。本文提出一种利用预训练目标检测模型来挖掘标签信息的模型,其在2个数据集上的图像检索任务都超过了现有的最优模型。基于监督模型算法的良好表现,本文提出一种新的模型结构(ODDUH),其核心在于使用预训练目标检测模型来挖掘潜在标签信息,并用此信息辅助无监督模型的训练。
论文地址:
https://arxiv.org/abs/1811.09822
引言
鉴于标签信息对模型性能的影响,本文提出了一种基于深度无监督哈希的目标检测算法(ODDUH)。首先,我们需要在大数据集上预训练一个目标检测模型,该数据集包含了所有属于此哈希数据集的标签。然后预训练模型被用来挖掘图像的标签信息,即伪标签。同时,本文也设计了一种新的相似度准则(pair-wise percentage similarity),我们通过一个共享权重的CNN来获取图像的特征信息。最后,我们结合pair-wise percentage相似度信息与图像的特征信息来学习哈希方程,并最终获取高质量的哈希码。
数据集
文本实验是基于公开数据集Pascal VOC2007和BMVC2009。其中,Pascal VOC2007包含9963个多标签的图像,整个数据集大概有20个类别。BMVC2009包含96378个图像,数据集中的每个图像都与上述20个标签类别中的一个或者多个标签有关联。
模型
模型结构
假设数据集 X X X含有张图像 X = { x i } i − 1 n X=\{x_i\}_{i-1}^n X={xi}i−1n,该模型的目标是学习得到一个映射 H : x 1 → b i ∈ { − 1 , 1 } k H:x_1\rightarrow b_i \in\{-1,1\}^k H:x1→bi∈{−1,1}k。对于一个输入图像 x i x_i xi,其可以被编码到k字节的二进制码 b i b_i bi中。由图可知,我们的模型结构包含3部分,即挖掘潜在标签信息、特征学习以及哈希方程学习。首先,我们采用YOLO v2预训练目标检测模型,并用其挖掘图像中的潜在标签信息。然后我们采用了卷积神经网络模型来完成图像特征的学习,其包含5个卷积层、2个全连接层。最后,我们通过k个单元的哈希层完成哈希方程的训练。事实上,实验中我们利用了一个element-wise sign方程 s g n ( ) sgn() sgn()来处理哈希层的结果,并得到二进制码。
相似度定义
对于很多图像,我们会挖掘出多个标签信息。为了更好地利用伪标签信息,本文设计了一个新颖的相似度计算准备(pair-wise percentage similarity),具体公式如下:
s
i
j
=
<
l
i
,
l
j
>
∣
∣
l
i
∣
∣
2
∣
∣
l
j
∣
∣
2
s_{ij}=\frac{<l_i,l_j>}{||l_i||_2||l_j||_2}
sij=∣∣li∣∣2∣∣lj∣∣2<li,lj>
其中, < l i , l j > <l_i,l_j> <li,lj>表示内积运算, l i ∈ { 0 , 1 } c l_i \in \{0,1\}^c li∈{0,1}c表示伪标签信息。如果第 i i i张图像 x i x_i xi拥有第 j j j个伪标签信息,则 l i j = 1 l_{ij}=1 lij=1,否则 l i j = 0 l_{ij}=0 lij=0。
模型训练
对于所有图像的二进制码
B
=
{
b
i
}
i
−
1
n
B=\{b_i\}^n_{i-1}
B={bi}i−1n,我们定义pair-wise percentage similarity的似然值计算如下:
其中,
Ψ
i
j
=
1
2
b
i
T
b
j
\Psi_{ij}=\frac{1}{2}b_i^Tb_j
Ψij=21biTbj,
σ
(
Ψ
i
j
)
=
1
1
+
e
−
Ψ
i
j
\sigma(\Psi_{ij})=\frac{1}{1+e^{-\Psi_{ij}}}
σ(Ψij)=1+e−Ψij1。同时,pair-wise similarity的损失函数定义如下:
其中,
α
\alpha
α是超参数。如果第
i
i
i个图像的伪标签与第
j
j
j个图像的伪标签是完全相似的,则
L
i
j
=
1
L_{ij}=1
Lij=1,此时
s
i
j
=
1
{s_{ij}=1}
sij=1或者
s
i
j
=
0
s_{ij}=0
sij=0。如果第
i
i
i个图像的伪标签与第
j
j
j个图像的伪标签是部分相似的,则
L
i
j
=
0
L_{ij}=0
Lij=0,此时
0
<
s
i
j
<
1
0<s_{ij}<1
0<sij<1。
对于pair-wise similarity的损失函数,它是一个离散的优化问题。本文重定义此损失函数如下:
其中,
Θ
i
j
=
1
2
u
i
T
u
j
\Theta_{ij}=\frac{1}{2}u_i^Tu_j
Θij=21uiTuj,
u
i
∈
R
k
u_i \in R^k
ui∈Rk是哈希层的输出,
u
i
=
W
T
F
(
x
i
;
θ
)
+
v
u_i=W^TF(x_i;\theta)+v
ui=WTF(xi;θ)+v。由于
u
i
u_i
ui不是二进制码,我们采用了一个量化损失使得
u
i
u_i
ui尽量靠近二进制码,此量化损失定义如下:
L
q
=
∑
i
n
∣
∣
b
i
−
u
i
∣
∣
2
2
L_q=\sum^{n}_{i}||b_i-u_i||^2_2
Lq=∑in∣∣bi−ui∣∣22。把伪标签的pair-wise similarity损失与量化损失结合到一起,最终的损失函数定义如下:
L
=
L
2
+
β
L
q
L=L_2+\beta L_q
L=L2+βLq,其中是超参数。
评价准则
为了验证哈希码的有效性,我们通过多个不同的方法来评价图像检索质量。具体地,实验中我们用了AGG、NDCG、MAP以及W-MAP,其具体定义如下:
A
C
G
@
n
=
∑
j
=
1
n
r
(
j
)
n
ACG@n=\sum^n_{j=1}\frac{r(j)}{n}
ACG@n=j=1∑nnr(j)
D
C
G
@
n
=
∑
j
=
1
n
2
r
(
j
)
−
1
l
o
g
(
i
+
1
)
DCG@n=\sum^n_{j=1}\frac{2^{r(j)}-1}{log(i+1)}
DCG@n=j=1∑nlog(i+1)2r(j)−1
M
A
P
=
∑
j
=
1
n
P
j
p
(
j
)
N
MAP=\sum^n_{j=1}P_j\frac{p(j)}{N}
MAP=j=1∑nPjNp(j)
W
−
M
A
P
=
∑
j
=
1
n
A
C
G
@
j
p
(
j
)
N
W-MAP=\sum^n_{j=1}ACG@_j\frac{p(j)}{N}
W−MAP=j=1∑nACG@jNp(j)
实验
本文实验是基于数据集Pascal 2007以及BMVC2009,实验中用了8个基线模型,分别是LSK、ITQ、SH、PCAH、SGH、UH_BDNN、UTH、HashGAN。数据集Pascal 2007与BMVC2009中的每个图像都用512维的GIST向量表征,对于UH_BDNN模型,其用一个7层AlexNet的输出作为图像的表征。对于哈希层,我们调整图像的大小为224*224,并且直接用原始图像的像素作为输入。实验中,我们随机选取2000个图像作为训练集,剩余的图像作为验证集。YOLO v2模型的预训练是在数据集COCO2014上完成的,该数据集包含了81个类别。实验结果表明,我们提出的模型性能明显优于众多基线模型。
结论
本文作者认为潜在标签信息有利于提升模型性能,其在COCO2014上预训练YOLO v2。然后用该模型去学习图像的伪标签,并将该伪标签作为额外信息用于无监督模型的训练中。本文提出了一种新的模型(ODDUH),在多种数据集上,对比了多个基线模型,验证了该模型的合理性。
扫码识别关注,获取更多新鲜论文解读