基于深度监督哈希的快速图像检索
基于Swin_Transformer的深度有监督哈希图像检索方法
第50 卷第 8 期2023年8 月Vol.50,No.8Aug. 2023湖南大学学报(自然科学版)Journal of Hunan University(Natural Sciences)基于Swin Transformer的深度有监督哈希图像检索方法苗壮,赵昕昕,李阳†,王家宝,张睿(陆军工程大学指挥控制工程学院,江苏南京 210007)摘要:在深度有监督哈希图像检索的特征提取过程中,一直由卷积神经网络架构主导,但是随着Transformer在视觉领域中的应用,Transformer替代卷积神经网络架构成为可能.为了解决现存基于Transformer的哈希方法中不能生成层次表示和计算复杂度高等问题,提出了一种基于Swin Transformer的深度有监督哈希图像检索方法.该方法以Swin Transformer网络模型为基础,在网络最后添加一个哈希层,为图像进行哈希编码.该模型中引入了局部思想和层级结构,能够有效解决上述问题.与现有的13种先进方法相比,所提方法的哈希检索性能得到大幅提升.在两个常用检索数据集CIFAR-10和NUS-WIDE上进行实验,实验结果表明:在CIFAR-10数据集上所提方法mAP最高达到98.4%,与TransHash方法相比平均提高7.1%,与VTS16-CSQ方法相比平均提高0.57%;在NUS-WIDE数据集上所提方法mAP最高达到93.6%,与TransHash方法相比平均提高18.61%,与VTS16-CSQ方法相比检索精度平均提高8.6%.关键词:哈希学习;深度学习;图像检索;Swin Transformer中图分类号:TP391 文献标志码:ADeep Supervised Hashing Image Retrieval Method Based on SwinTransformerMIAO Zhuang,ZHAO Xinxin,LI Yang†,WANG Jiabao,ZHANG Rui(Command and Control Engineering College, Army Engineering University of PLA, Nanjing 210007, China)Abstract:The feature extraction process in deep supervised Hash image retrieval has been dominated by the convolutional neural network architecture. However,with the application of Transformer in the field of vision,it becomes possible to replace the convolutional neural network architecture with Transformer. In order to address the limitations of existing Transformer-based hashing methods,such as the inability to generate hierarchical representations and high computational complexity, a deep supervised hash image retrieval method based on Swin Transformer is proposed. The proposed method utilizes the Swin Transformer network model, and incorporates a hash layer at the end of the network to generate hash encode for images. By introducing the concepts of locality and hierarchy into the model, the method effectively solve the above problems. Compared with 13 existing state-of-the-∗收稿日期:2022-06-20基金项目:国家自然科学基金资助项目(61806220), National Natural Science Foundation of China(61806220);国家重点研发计划项目(2017YFC0821905), National Key Research and Development Program of China(2017YFC0821905)作者简介:苗壮(1976―),男,辽宁辽阳人,陆军工程大学教授,博士生导师,博士† 通信联系人,E-mail:**********************文章编号:1674-2974(2023)08-0062-10DOI:10.16339/ki.hdxbzkb.2023274第 8 期苗壮等:基于Swin Transformer的深度有监督哈希图像检索方法art methods, the method proposed in this paper has greatly improved the performance of hash retrieval. Experiments are carried out on two commonly used retrieval datasets,namely CIFAR-10 and NUS-WIDE. The experimental results show that the proposed method achieves the highest mean average precision (mAP) of 98.4% on the CIFAR-10 dataset. This represents an average increase of 7.1% compared with the TransHash method and an average increase of 0.57% compared with the VTS16-CSQ method. On the NUS-WIDE dataset,the proposed method achieves the highest mAP of 93.6%. This corresponds to an average improvement of 18.61% compared with the TransHash method, and an average increase of 8.6% in retrieval accuracy compared with the VTS16-CSQ method. Key words:hash learning;deep learning;image retrieval;Swin Transformer随着互联网技术的飞速发展,高维数据呈爆炸性增长,如何高效地实现大规模信息检索已经成为表示学习领域的严峻挑战.在解决这项具有挑战性任务所提的方法中[1-4],基于哈希的方法取得了显著的成功[5].哈希方法旨在学习一个哈希函数,该函数能够将高维像素空间中的图像映射到低维汉明空间,同时保留它们在原始像素空间中的视觉相似性.根据特征提取方式的不同,现存的基于哈希方法可以分为两类,即传统方法和基于深度学习的方法.传统方法[6-8]通过手工制作的视觉描述符(例如GIST[9])来学习哈希函数.然而,其并不能准确地保留原始图像对的语义相似性,导致后续哈希函数学习过程中性能的下降.与传统的哈希方法相比,基于深度学习的哈希方法[10-11]通常可以实现显著的性能改进.基于深度学习的哈希方法包括两个阶段:第一阶段旨在学习一个能够生成图像特征表示的深度卷积神经网络(Convolutional Neural Networks, CNNs),例如AlexNet.第二阶段通过深度哈希函数将连续特征映射为二进制哈希码,并利用各种损失函数[12-16]来保留图像原始像素空间中的相似性.基于深度学习的哈希方法通过卷积神经网络[17-22]以端到端的方式来同时学习图像的特征表示和二进制哈希码,取得了较好的检索性能.例如,文献[23]提出采用成对损失的贝叶斯学习框架;文献[13]进一步提出用柯西分布代替先前的神经网络输出对数的概率生成函数,来惩罚汉明距离大于阈值的相似图像对;文献[24]开创性提出了一种针对多标签图像检索的相似矩阵.虽然上述方法取得了较好的检索性能,但是依然存在一些问题.例如,图像的二进制哈希码是由图像连续特征表示通过sign函数量化得到,由于sign函数不可导,这使得优化过程变成NP难问题.先前大多数工作[25]都采用连续松弛方法来解决该问题(使用tanh函数或sigmoid函数代替sign函数),然后在测试阶段使用sign函数直接得到最终的二进制哈希码.第一种典型的方法就是通过在损失函数中添加一个惩罚项来量化函数,这个惩罚项有助于获得sign(h)≈h.该方法还存在一些变体,如文献[23]提出DHN方法实现了同时控制量化误差和优化损失函数.文献[26]提出DCH架构,通过联合优化柯西交叉熵损失和柯西量化损失生成紧凑且集中的二进制哈希码,实现了高效的汉明空间检索.第二种方法是替代方案,它将优化问题分解为几个子问题,可以用交替最小化方法迭代求解.在这个替代过程中,反向传播只能用于一个子问题,而其他的子问题可以用其他的优化方法来解决.例如,文献[27]的最后一层输出直接限制为二进制哈希码,它保留了哈希编码的离散化这一特性,并提出了交替优化策略优化目标函数.第三种方法如HashNet[28]方法提出通过收敛的连续方法直接进行哈希码学习,从连续的相似数据中学习到准确的二进制哈希码,即使用不同的β值来使tan(βz)无限接近于sign (h).除上述三种常用方法外,还存在其他方法.例如,Greedy Hash[29]方法提出使用贪心算法在前传过程中保持对网络输出的离散约束,在反传过程中将哈希层的梯度完全传送到网络前层,进一步解决了离散优化问题并提高了哈希检索精度.在此启发下,设计了贪心非对称损失函数,该损失函数能够解决优化过程中梯度消失问题,并充分利用训练数据,提高了哈希码学习精度.近年来,Transformer[30]在自然语言处理[31-32]中取得了巨大的成功.随着Transformer在自然语言处理中的成功,许多研究人员开始探索将Transformer作为视觉任务的独立架构使用.将Transformer用于计算机视觉存在两个主要的挑战.首先,Transformer在63湖南大学学报(自然科学版)2023 年一组Token上操作,但在图像中不存在类似自然语言中的单词的自然Token.其次,图像具有较强的局部结构,而Transformer结构以同样的方式处理所有的Token,忽略了图像局部性.因此,2020年谷歌提出了Vision Transformer(ViT)[33],开创性地解决了第一个挑战,即简单地将图像分割为不重叠的块,并将每个块作为视觉Token,有效地缓解了这一问题.随后,Swin[34]和Twins[35]提出了用局部ViT来解决第二个问题.它们在非重叠窗口内进行自注意力计算以及采用局部分组的自注意力机制.这些机制引入了局部性,不仅提高了架构的性能,而且能够充分利用内存并提高计算效率.与此同时,Transformer在哈希图像检索领域中也存在一定的应用.TransHash[36]提出一种基于纯视觉Transformer的双流特征学习架构,能够同时学习图像有区别的全局和局部特征表示.然而,TransHash 未能利用在大规模数据集上预训练的Transformer模型和最新研究的目标函数.因此,文献[33]提出了用于图像检索的视觉Transformer哈希方法(VTS),该方法通过预训练的ViT模型来提取图像的连续特征表示,并在网络最后添加一个哈希模块来学习图像的二进制哈希码,并达到当前深度有监督哈希图像检索领域最先进水平.但是,研究发现ViT在特征提取阶段均保持相同的特征分辨率以及在整幅图像内计算各像素点之间的依赖关系,这导致ViT不能提取图像的多层次表示和计算复杂度高等问题.因此,尝试探索以Swin Transformer[34]为基础设计哈希骨干网,将局部思想和层级结构引入Transformer来解决上述问题,并进一步提高哈希检索性能.本文建立了一个基于Swin Transformer的深度有监督哈希图像检索方法,这是第一个以Swin Trans⁃former为基础设计的哈希学习方法.图像经过Swin Transformer能够得到深度特征表示,然而学习得到的深度特征表示是连续的,因此在测试阶段需要通过sign函数将特征表示转化为二进制哈希码.但是,由于sign函数不可导,使得优化过程变为NP难问题,这导致了次优的哈希检索性能.因此,设计了贪心非对称损失来解决此问题,并得了较好的结果.综上所述,本文主要贡献可以概括为:1)提出了一种基于Swin Transformer的深度有监督哈希图像检索方法.该方法通过将局部思想和层级结构引入Transformer来生成图像的层次表示,能够得到更好保留图像底层信息的深度特征. 2)设计了一种贪心非对称损失函数.该损失函数能够解决优化过程中梯度消失问题,并充分利用训练数据,提高哈希码学习精度.3)在两个常用检索数据集CIFAR-10和NUS-WIDE上的实验结果表明,本文方法检索性能优于其他方法.在CIFAR-10数据集上,与TransHash方法相比,当训练数据远远小于TransHash时,本文方法mAP平均提高7.1%,与VTS16-CSQ方法相比,本文方法mAP平均提高0.57%.在NUS-WIDE数据集上,与TransHash方法相比,本文方法mAP平均提高18.61%,与VTS16-CSQ方法相比,本文方法检索精度平均提高8.6%.充分验证了所提方法的有效性.1 本文方法图1为本文网络结构的总体框架,主要包含特征提取和损失函数两个阶段.本文方法的主要思路是:通过以Swin Transformer为基础设计的哈希网络对输入图像进行深度特征提取,再使用深度哈希函数生成图像的哈希编码,最后通过图像之间哈希编码的汉明距离远近来进行图像检索.1.1 特征提取以Swin Transformer为基础设计的哈希网络进行图像深度特征提取.Swin Transformer与主流的CNN 模型相似,均采用金字塔结构将模型分为不同的Stage.它包含1个Patch partition和4个Stage,每个Stage都是由Swin Transformer Block堆叠而成,如图2所示.在哈希特征提取过程中,首先将大小为H×W (224×224)的RGB图像输入哈希网络中,通过Patch partition层将图像划分成长宽均为p=4、特征维度为48的不重叠Patch,这样使得Transformer Block能够直接处理具有二维结构的图像.之后再将Patch送入各个Stage中,对其进行自注意力计算.在Stage 1中,先通过Linear embedding层将每个Patch的特征维度映射成C维,再送入Swin Transformer Block中;Stage 2、Stage 3和Stage 4相同,通过一个Patch merging 层将相邻2×2个Patch合并,来改变每个Stage中特征图的分辨率从而生成层次表示.如图2所示,Swin Transformer Block是由窗口多头自注意力机制(Window Multi-head Self-Attention,W-MSA)和滑动窗口多头自注意力机制(Shifted-Window Multi-head Self-Attention,SW-MSA)交替组成.W-MSA机制引入窗口操作将图像Patch进行非64第 8 期苗壮等:基于Swin Transformer 的深度有监督哈希图像检索方法重叠均匀划分,每个窗口包含相邻的M ×M 个Patch.这样使得每个窗口内部可以单独进行自注意力计算,能够有效降低计算量,从而解决了上述VTS 方法中计算复杂度高的问题.但是,由于W-MSA 缺乏跨窗口的连接,无法对全局特征进行建模.针对该问题,Swin Transformer 又进一步提出了SW-MSA 机制.SW-MSA 机制在W-MSA 模块划分的规则窗口中,从(ëûM /2,ëûM /2)像素开始替换第一模块中的规则窗口,这种划分方法能够引入上一模块中相邻非重叠窗口之间的连接,提高模型的全局建模能力.但是,划分后会存在许多大小不规则的窗口从而加大计算量.为了高效计算,Swin Transformer 提出使用沿左上方循环移动方式计算,如图3所示(只画出8×8的特征图在M =4的情况).在循环移动后的特征图中,一个窗口可以由几个在特征图中不相邻的子窗口组成,因此使用MASK 机制将自注意力计算限制在每个子窗口内.通过循环位移方式,窗口的数量与常规窗口保持相同.这样Swin Transformer 既可以实现相邻窗口之间的信息交流,又能够保持较少的计算量.Swin Transformer Block 的计算过程如下:z l =W-MSA(LN(z l -1))+z l -1z l =MLP (LN(z l ))+z l ,z l +1=SW-MSA(LN(z l ))+z l , z l +1=MLP (LN(z l +1))+z l +1(1)式中:z l 、z l 代表l 模块(S )W-MSA 和MLP 的输出特征.在自注意力计算过程中,通过添加一个相对位置偏置P ∈R M2×M 2来计算每个head的相似性:图1 本文网络结构图Fig.1 Network architecture of our method图2 两个连续的Swin Transformer BlocksFig.2 Two successive Swin Transformer Blocks图3 W-MSA 和SW-MSA Fig.3 W-MSA and SW-MSA65湖南大学学报(自然科学版)2023 年Attention(Q,K,V)=SoftMax(QK T/d+B)V(2)式中:Q、K、V∈R M2×d代表query、key、value矩阵;d代表Q/K的维度;M2代表一个窗口中包含的Patch 数量.为学习得到图像的哈希特征,本文以Swin Transformer模型为基础,通过在模型Stage 4后添加一个哈希层构建了一个哈希特征提取网络,来将输出特征向量映射到不同位大小的哈希码中.对于大小为224×224的查询图像x i,通过骨干网提取特征及哈希映射得到哈希特征h i:h i=f(x i,θ)(3)式中:f表示骨干网函数,θ表示Swin Transformer骨干网的参数.1.2 损失函数为了学习得到更优的哈希码,设计了一个损失函数,可表示为:L=L1+λL2,其中L1为贪心损失[37],L2为非对称成对损失[38],λ为超参数.贪心损失L1能够解决优化过程中的梯度消失问题,非对称成对损失L2能够使训练过程充分利用数据集合的标签信息,有效地训练网络.具体的贪心损失L1如式(4)所示,B表示图像哈希码集合,H表示图像深度特征集合:L1=loss(B)+α||H-sign(H)||p p(4)为了得到图像的哈希编码,通常会在哈希编码层后面使用sign函数将深度特征映射为二值化哈希码.但由于sign函数不可导,会使优化过程变为NP 难问题.传统方法使用tanh函数或sigmoid函数进行松弛,这样虽然能够训练网络,但会产生次优解.为了更好地解决这个问题,本文的贪心损失L1提出利用贪心算法解决离散优化问题.贪心算法认为离连续最优解最近的离散点,就是所希望得到的离散最优解.算法过程如表1所示.非对称成对损失如式(5)所示,它的作用是:在训练过程中,采用非对称策略训练网络.这样不仅能够充分利用数据集合的监督信息,而且也可以高效训练网络.所谓非对称策略是指,采用不同的方式来处理查询图像和数据集合图像.对于查询图像,通过骨干网进行深度特征提取,再使用深度哈希函数生成查询图像的哈希码;而对于数据集合图像,它的哈希码则是直接学习得到.minθ,V L2(θ,V)=∑i=1m∑j=1n[tanh(f(x i,θ))T v j-c S ij]2(5)式中:S ij表示相似矩阵,V表示数据集合图像.损失函数部分具体过程可参考文献[37]和文献[38].2 实验2.1 数据集本文在CIFAR-10[39]和NUS-WIDE[37]这两个常用的图像检索数据集上进行实验.CIFAR-10数据集是一个单标签图像数据集,共包含10个类,每类包含6 000个样本,总共有60 000张彩色图像,图像大小为32×32.对于CIFAR-10数据集,如果两张图像标签相同,那么将两张图像视为相似对.NUS-WIDE数据集是一个多标签图像数据集,共包含81个类,总共有269 648张图像.本文选择了195 834张属于21个最常见的类的图像进行实验.对于NUS-WIDE数据集,如果两张图像至少共享一个公共标签,那么它们将被定义为相似对.2.2 实验设置全部实验均基于PyTorch 1.7深度学习框架,使用2块Geforce RTX 2080 Ti显卡进行测试.在数据处理上,将所有图像的大小首先调整到256×256.然后对于训练图像,采用标准的图像增广技术,包括随机表1 贪心算法原理Tab.1 The principle of greedy algorithm训练集X以及神经网络f(θ),θ表示神经网络参数,H为图像的特征表示,B为图像哈希码- H i=f(X,θ).- B=sign(H). [前向传播过程]- 计算贪心损失L1:L1=loss(B)+α||H-sign(H)||p ploss可以是任何类型损失,这里loss为交叉熵损失- 计算∂L1∂B=∂loss∂B- 令∂loss∂H=∂loss∂B[后传过程]- 计算∂L1∂H=∂loss∂H+α∂||H-sign(H)||p p∂H=∂loss∂B+α||H-sign(H)||p-1p-1- 计算∂L1∂θ=∂L1∂H×∂H∂θ- 更新网络参数66第 8 期苗壮等:基于Swin Transformer的深度有监督哈希图像检索方法水平翻转和随机裁剪,其中随机裁剪大小为224.对于测试图像,只应用裁剪大小为224的中心裁剪.在参数设置上,Batch Size设置为128,采用Adam优化器,学习率为0.000 1,权重衰减值为0.000 01,训练次数设置为150.在数据集划分上,CIFAR-10数据集的划分与TransHash[36]设置相同,随机从每类中抽取500张,总共5 000张作为训练集;再随机从每类中抽取100张,共1 000张作为查询集;除查询集外的59 000张图像作为数据库集合.由于实验条件有限,对于NUS-WIDE数据集,除训练集和查询集外,其他设置均与TransHash设置相同.NUS-WIDE数据集从数据集合中随机抽取2 000张作为训练集;再随机抽取1 000张作为查询集;除查询集外的其他图像作为数据库集合.在评价指标选取上,本文选择图像检索中最常用的评价指标:mAP (mean Average Precision)和P‒R(Precision‒Recall).2.3 实验结果与分析实验在CIFAR‒10和NUS‒WIDE数据集上进行,与13种哈希方法进行了比较,其中包括4种传统哈希学习方法:SH[8]、ITQ[40]、KSH[40]、BRE[41];9种深度哈希学习方法:DSH[16]、DHN[23]、HashNet[28]、DCH[13]、IDHN[24]、DPN[14]、TransHash[36]、VTS16‒CSQ[33]和DPLAH[42].哈希检索性能如表2所示,其中加粗表示最优值,下画线表示次优值.除VTS16‒CSQ方法外,其他12种方法结果均取自TransHash[36]和DPLAH[42].其中TransHash是首个将Transformer应用于深度有监督哈希图像检索的方法,VTS16-CSQ是基于Transformer模型的哈希检索方法中检索精度最高的方法.虽然TransHash是首个将Transformer应用到深度有监督哈希图像中的方法,但是该方法与最先进的基于卷积神经网络的方法[43]相比仍然存在较大的劣势.由于实验条件有限,在NUS-WIDE数据集上本文只使用TransHash五分之一的数据进行训练,而在CIFAR-10上则与TransHash设置一样.虽然在训练集设置上与TransHash相比有较大的劣势,但实验结果表明,本文方法仍在两个数据集上不同比特条件下均表现出最优异的检索性能.在CIFAR-10数据集上mAP最高达到98.4%,与TransHash相比平均提高7.1%,与VTS16-CSQ相比平均提高0.57%;在NUS-WIDE数据集上mAP最高达到93.6%,与最先进的基于CNN的哈希方法[43]相比平均提高3.8%,与TransHash 和VTS16-CSQ方法相比分别平均提高18.6%和8.6%.传统的非深度哈希方法因为使用手工特征而不能达到较好的检索性能,深度有监督哈希方法通过机器学习技术能够获得更具有辨别性的哈希特征并取得了较高的检索结果.然而,本文所提方法比现有的深度有监督哈希方法性能更优.在NUS-WIDE数据集上,于训练集不足VTS16-CSQ方法1/5的情况下取得了93.6%的检索精度,比目前本领域最先进表2 在CIFAR-10和NUS-WIDE上图像检索精度对比Tab.2 Comparison of the retrieval accuracy on CIFAR-10 and NUS-WIDEMethods SH[8]ITQ[39]KSH[40]BRE[41]DSH[16]DHN[23]HashNet[28]DCH[13]IDHN[24]DPN[14]DPLAH[42]TransHash[36]VTS16-CSQ[33]OursCIFAR-10 (mAP@54000)16 bits————0.614 50.654 40.510 50.668 00.541 90.825 00.938 00.907 50.979 00.984 032 bits————0.68150.67110.62780.69360.56950.8380—0.910 80.979 00.984 048 bits————0.632 80.692 10.663 10.680 70.589 50.830 00.960 00.914 1—0.983 064 bits————0.691 00.673 70.682 60.677 50.597 20.829 00.958 00.916 60.976 00.982 0NUS-WIDE (mAP@5000)16 bits0.405 80.508 60.356 10.502 70.633 80.647 10.682 10.703 60.699 9—0.885 00.726 30.819 00.913 032 bits0.420 90.542 50.332 70.529 00.650 70.672 50.695 30.717 80.714 9——0.739 30.846 00.927 048 bits0.421 10.558 00.312 40.547 50.666 40.698 10.719 30.710 60.722 5—0.918 00.753 2—0.936 064 bits0.410 40.561 10.336 80.554 60.685 60.702 70.734 10.705 60.725 6—0.923 00.748 80.853 00.936 067湖南大学学报(自然科学版)2023 年的方法(VTS16-CSQ )的检索性能提高了8.6%,与基于卷积神经网络的方法(IDHN )相比,检索性能提高了20.19%.在CIFAR-10和NUS-WIDE 数据集上的P ‒R 曲线如图4和图5所示.P -R 曲线与横坐标轴所围面积越大,则表示该方法性能越好.从图中可以看出,本文方法P -R 曲线一直位于其他方法的上方,再一次证明本文方法检索性能的优越性.本文方法能够取得比较优异的检索结果原因如下:首先,设计的基于Swin Transformer 的哈希特征骨干网不仅能够捕获图像的局部信息,而且能够使局部信息之间产生联系,增大感受野获得图像之间的远程依赖关系,因此能够得到更好地保留图像底层信息的哈希特征.其次,设计的贪心非对称损失函数,通过贪心原理能够更好地解决优化过程中的离散优化问题,也能通过非对称方式训练网络,充分利用数据集合中的监督信息.2.4 消融实验我们设计了详细的消融实验来证明所提方法每一部分的有效性.对6种哈希方法(DSH [16]、Hash⁃Net [28]、GreedyHash [29]、IDHN [24]、CSQ [44]、DPN [14])在5种不同哈希骨干网(AlexNet [18]、ResNet50[14]、VTS32[33]、VTS16[33]和本文创建的哈希骨干网)上的性能表现进行了评估.在CIFAR-10和NUS-WIDE 数据集上16和64比特下的检索结果如表3和表4所示,其中黑色加粗表示相同损失函数在不同的骨干网上的最优值,黑色下画线表示次优值;红色加粗表示相同骨干网在不同损失函数下的最优值,红色下画线表示次优值.为了证明所提哈希骨干网的有效性,在5种不同的哈希骨干网中使用相同的损失函数进行了实验(表3和表4纵列所示).实验结果表明,各个损失函数在所提骨干网上的检索性能均能优于在其他骨干网上的检索性能,证明了所提骨干网的有效性.如表3所示,在CIFAR-10数据集上16和64比特下,与AlexNet 网络相比mAP 分别平均提高了20.3%和15.6%;与ResNet50网络相比mAP 分别平均提高了19%和14.6%.如表4所示,在NUS-WIDE 数据集上16和64比特下,与AlexNet 网络相比mAP 分别平均提高了7.81%和4.8%;与ResNet50网络相比mAP 分别平均提高了6.3%和5.55%.图4 CIFAR-10 P -R 曲线Fig.4 P -Rcurves of CIFAR-10图5 NUS-WIDE P -R 曲线Fig.5 P -R curves of NUS-WIDE表3 在CIFAR-10上图像检索精度对比Tab.3 Comparison of the retrieval accuracy on CIFAR-10骨干网AlexNet [18]ResNet50[14]VTS32[33]VTS16[33]Our backboneDSH[16]16 bit 0.7350.6910.9300.9800.94964 bit 0.7850.5240.9530.9740.952HashNet[28]16 bit 0.6510.5550.9620.9780.91964 bit 0.7980.8800.9560.9830.930GreedyHash[29]16 bit 0.7610.8150.9480.9700.97164 bit 0.8160.8630.9430.9800.980IDHN[24]16 bit 0.7590.7560.9590.9760.93464 bit 0.7670.8650.9600.9840.949CSQ[44]16 bit 0.7590.8360.9600.9790.92064 bit 0.7830.8370.9560.9760.924DPN[14]16 bit 0.7350.8200.9510.9740.92264 bit 0.7790.8200.9500.9750.932Our loss 16 bit 0.9370.963——0.98364 bit 0.9470.962——0.98268第 8 期苗壮等:基于Swin Transformer 的深度有监督哈希图像检索方法与VTS 网络相比,本文骨干网在NUS-WIDE 数据集上表现出优异的检索性能,达到目前检索领域最先进的水平.然而,在CIFAR-10数据集上,所提方法次优于基于VTS 的哈希方法性能,分析原因如下:首先,本文的哈希骨干网是以Swin Transformer 在ImageNet 上的预训练模型为基础构建的,由于CIFAR-10中的图像与ImageNet 中的部分图像属性相似,导致在CIFAR-10数据集上再训练出现过拟合现象;其次,基于VTS 的哈希方法的骨干网是以Vi⁃sion Transformer 为基础构建的,与本文所使用的Swin Transformer 在参数量和计算成本上存在巨大的差异.为了进一步证明所提损失函数的有效性,在7种不同的损失函数下使用相同的骨干网进行实验(表3和表4横行所示).如表3所示,AlexNet 网络在GreedyHash 损失函数下能够达到次优值,而在所提贪心非对称损失条件下能够达到最优值;ResNet50网络在HashNet 和CSQ 损失下分别取得次优值,而在所提贪心非对称损失条件下能够达到最优值;所提骨干网在GreedyHash 损失函数下能够达到次优值,而在所提贪心非对称损失下能够达到最优.同理,表4也存在上述情况.进一步证明了所提的贪心非对称损失的有效性.2.5 特征可视化本节对该哈希特征提取网络的4个阶段所得到的特征图进行可视化.如图6所示,随机选取两张图像对每个阶段产生的特征图进行可视化,可以发现:特征提取初期,骨干网更加偏向于提取图像的纹理层特征;特征提取最后阶段,骨干网更加偏向于提取图像的语义特征,得到的特征信息更加聚焦于图像中的目标.这进一步说明Swin Transformer 能够更好地提取图像的深度特征.3 结 论本方法以预训练的Swin Transformer 模型为基础,提出了一个基于视觉Transformer 的哈希特征提取网络.同时,提出贪心非对称损失以端到端的方式进行训练并指导图像哈希码的学习.我们注意到,在不同的检索框架下,所提出的骨干网的性能在两个表4 在NUS-WIDE 上图像检索精度对比Tab.4 Comparison of the retrieval accuracy on NUS-WIDE骨干网AlexNet [18]ResNet50[14]VTS32[33]VTS16[33]Our backboneDSH[16]16 bit 0.7750.7710.7960.7980.80464 bit 0.8080.7910.8290.8290.831HashNet[28]16 bit 0.7520.7680.7760.7920.84664 bit 0.8450.8390.8620.8730.874GreedyHash[29]16 bit 0.7480.7560.7580.7620.90864 bit 0.8000.7880.7980.7860.932IDHN[24]16 bit 0.7910.8090.8330.8410.84164 bit 0.8130.7940.8410.8510.842CSQ[44]16 bit 0.7800.7930.8240.8190.84564 bit 0.8340.8380.8610.8530.875DPN[14]16 bit 0.7500.7890.8020.7970.82164 bit 0.8350.8400.8610.8460.869Our loss 16 bit 0.8820.908——0.91364 bit 0.9250.936——0.936(a ) 原图 (b ) Stage 1 (c ) Stage 2 (d ) Stage 3 (e ) Stage 4图6 特征图可视化Fig.6 Visualization of feature maps69湖南大学学报(自然科学版)2023 年常用数据集上均优于AlexNet和ResNet骨干网.此外,该模型的性能还优于目前所有的基于Trans⁃former的哈希方法,且检索性能达到目前领域的最先进水平.参考文献[1]FU C,XIANG C,WANG C X,et al.Fast approximate nearest neighbor search with the navigating spreading-out graph[J].Proceedings of the VLDB Endowment,2019,12(5):461-474.[2]GE T Z,HE K M,KE Q F,et al.Optimized product quantization for approximate nearest neighbor search[C]//2013 IEEEConference on Computer Vision and Pattern Recognition.Portland,OR,USA:IEEE,2013:2946-2953.[3]JÉGOU H,DOUZE M,SCHMID C.Product quantization for nearest neighbor search[J].IEEE Transactions on PatternAnalysis and Machine Intelligence,2011,33(1):117-128.[4]MALKOV Y A,YASHUNIN D A.Efficient and robust approximate nearest neighbor search using hierarchical navigablesmall world graphs[J].IEEE Transactions on Pattern Analysisand Machine Intelligence,2020,42(4):824-836.[5]LI Y,MIAO Z A,HE M,et al.Deep attention residual hashing [J].IEICE Transactions on Fundamentals of Electronics,Communications and Computer Sciences,2018,E101,A(3):654-657.[6]CHARIKAR M S.Similarity estimation techniques from rounding algorithms[C]//Proceedings of the Thirty-fourth Annual ACMSymposium on Theory of Computing. Montreal,Quebec,Canada,New York:ACM,2002:380-388.[7]INDYK P,MOTWANI R,RAGHAVAN P,et al.Locality-preserving hashing in multidimensional spaces[C]//Proceedings ofthe Twenty-ninth Annual ACM Symposium on Theory ofComputing.El Paso,Texas,USA,New York:ACM,1997:618-625.[8]WEISS Y,TORRALBA A,FERGUS R. Spectral hashing [C]// Proceedings of 22th Annual Conference on Neural InformationProcessing Systems. Red Hook: Curran Associates, 2008: 1753-1760.[9]OLIVA A,TORRALBA A.Modeling the shape of the scene:a holistic representation of the spatial envelope[J].InternationalJournal of Computer Vision,2001,42(3):145-175.[10]LIONG V E,LU J W,WANG G,et al.Deep hashing for compact binary codes learning[C]//2015 IEEE Conference on ComputerVision and Pattern Recognition (CVPR).Boston,MA:IEEE,2015:2475-2483.[11]XIA H K, PAN Y, LAI H J, et al. Supervised hashing for image retrieval via image representation learning [C]// Proceedings ofthe 28th AAAI Conference on Artificial Intelligence. Menlo Park:AAAI, 2014: 2156-2162.[12]CAKIR F,HE K,BARGAL S A,et al.Hashing with mutualinformation[J].IEEE Transactions on Pattern Analysis andMachine Intelligence,2019,41(10):2424-2437.[13]CAO Y,LONG M S,LIU B,et al.Deep cauchy hashing for hamming space retrieval[C]//2018 IEEE/CVF Conference onComputer Vision and Pattern Recognition.Salt Lake City,UT,USA:IEEE,2018:1229-1237.[14]FAN L X,NG K W,JU C,et al.Deep polarized network for supervised learning of accurate binary hashing codes[C]//Proceedings of the Twenty-Ninth International Joint Conferenceon Artificial Intelligence.Yokohama,Japan,California:International Joint Conferences on Artificial IntelligenceOrganization,2020:825-831.[15]HE K,CAKIR F,BARGAL S A,et al.Hashing as tie-aware learning to rank[C]//2018 IEEE/CVF Conference on ComputerVision and Pattern Recognition. Salt Lake City,UT,USA:IEEE,2018:4023-4032.[16]LIU H M,WANG R P,SHAN S G,et al.Deep supervised hashing for fast image retrieval[C]//2016 IEEE Conference onComputer Vision and Pattern Recognition (CVPR). Las Vegas,NV,USA:IEEE,2016:2064-2072.[17]LECUN Y,BOTTOU L,BENGIO Y,et al.Gradient-based learning applied to document recognition[J].Proceedings of theIEEE,1998,86(11):2278-2324.[18]KRIZHEVSKY A,SUTSKEVERU I,HINTON G E. ImageNet classification with deep convolutional neural networks [C]//Proceedings of Advances in Neural Information Processing System.Red Hook: Curran Associates, 2012: 1106-1114.[19]SIMONYAN K,ZISSERMAN A.Very deep convolutional networks for large-scale image recognition[J].eprint arXiv:1409.1556[20]SZEGEDY C,LIU W,JIA Y Q,et al.Going deeper with convolutions[C]//2015 IEEE Conference on Computer Vision andPattern Recognition (CVPR).Boston,MA,USA:IEEE,2015:1-9.[21]HE K M,ZHANG X Y,REN S Q,et al.Deep residual learning for image recognition[C]//2016 IEEE Conference on ComputerVision and Pattern Recognition (CVPR).Las Vegas,NV,USA:IEEE,2016:770-778.[22]TAN M X,LE Q V.EfficientNet:rethinking model scaling for convolutional neural networks[EB/OL].2019:arXiv:1905.11946.https://arxiv.org/abs/1905.11946.[23]ZHU H,LONG M S,WANG J M,et al.Deep hashing network for efficient similarity retrieval[C]// Proceedings of the ThirtiethAAAI Conference on Artificial Intelligence. Menlo Park:AAAI,2016: 2415-2421.[24]ZHANG Z,ZOU Q,LIN Y W,et al.Improved deep hashing with soft pairwise similarity for multi-label image retrieval[J].IEEETransactions on Multimedia,2020,22(2):540-553.[25]LI Y,MIAO Z,WANG J B,et al.Deep discriminative supervised hashing via Siamese network[J]. IEICE Transactions onInformation and Systems,2017,E100,D(12):3036-3040.[26]CAO Y,LIU B,LONG M S,et al.HashGAN:deep learning to70。
基于深度监督哈希的快速图像检索
1 研究背景随着互联网的蓬勃发展,每天有数以万计的图像在网络中产生,但很难根据不同用户的要求对相关图像进行准确查找。
假设数据库中的图像和待查询图像都是由实值特征来表示,查找相似图像最直接的方法就是根据数据库中的图像在特征空间中与待查询图像之间的距离对数据库中的图像进行排名,然后返回其中距离最接近的图像。
但是,对于现如今拥有数千万甚至数亿张图像的数据库来说,通过线性搜索整个数据库会花费大量的时间和内存。
受到CNN(卷积神经网络)功能鲁棒性的启发,作者通过利用CNN吉构提出了一种二值码学习框架(称为深度监督哈希(DSH)。
在此方法中,作者首先设计一个CNN莫型,该模型不再是使用单张图片进行训练,而是将图像对或三元图像组以及指示相似程度的标签作为训练输入,并生成二值码作为输出。
设计损失函数用于将相似图像的网络输出拉到一起,并将不相似图像的输出推送到很远的位置,以使得学习到的汉明空间可以很好地逼近图像的语义吉构。
2 国内外研究现状最近邻居搜索的问题旨在从数据库中找到一个最接近查询的项目,在数据库很大或距离度量的计算成本很高的情况下,精确的最近邻居搜索的计算开销会过高。
作为一种更实用的选择,近似最近邻搜索方法由于其高效性而受到越来越多的关注,其代表性算法为LSH (局部敏感哈希)。
为了产生更紧凑的二值码,提出了与数据相关的哈希方法,试图从训练集中学习保留相似性的哈希函数。
这些方法又可以进一步分为非监督方法和监督(或半监督)方法。
无监督方法仅利用未标记的训练数据来学习哈希函数。
例如,SH (谱哈希)、ITQ (迭代量化哈希)等。
为了更好地处理更复杂的语义相似性,提出了监督学习方法,以利用诸如类别、标签之类的信息。
例如,DGH(离散图哈希)、SDH(监督离散哈希)等。
上述哈希方法在一定程度上确实取得了成功,但这些功能无法很好地捕获现实世界数据中出现的剧烈变化下的复杂语义信息,从而限制了学习的二进制代值码的检索精度。
基于自注意力和深度哈希的图像检索技术研究
基于自注意力和深度哈希的图像检索技术研究摘要:随着图像数据的快速增长,图像检索技术在各个领域中变得越来越重要。
传统的图像检索方法通常依赖于手工设计的特征和浅层模型,其性能受到限制。
近年来,基于深度学习的图像检索方法取得了显著的进展,但仍面临诸多挑战。
本文提出了一种基于自注意力和深度哈希的图像检索技术,旨在提高图像检索的准确性和效率。
1. 引言图像检索是指通过输入一张图像,从数据库中找到与之相似的图像。
随着图像数据的爆炸式增长,高效准确的图像检索技术变得尤为重要。
基于深度学习的图像检索方法通过学习图像的高级表示,在一定程度上解决了传统方法的限制。
2. 自注意力机制自注意力机制是自注意力机制网络的核心组件之一。
它可以根据输入的特征图自动计算每个位置与其他位置的相关性,从而获取全局的上下文信息。
在图像检索任务中,自注意力机制能够捕捉到图像中不同区域之间的关联性,提取更准确的特征。
3. 深度哈希深度哈希是一种用于图像检索的哈希编码方法。
它通过将图像映射为二进制编码,实现了高效的图像相似性度量和快速的图像检索。
深度哈希技术可以将高维图像特征映射到低维二进制编码空间,从而大大提高了图像检索的效率。
4. 基于自注意力和深度哈希的图像检索技术本文提出的图像检索技术首先通过自注意力机制提取图像的特征表示,捕捉到图像中不同区域的关联性。
然后,利用深度哈希算法将得到的特征映射为二进制编码。
最后,通过计算二进制编码之间的汉明距离,实现图像的相似性度量和图像检索。
5. 实验结果与分析我们在常用的图像检索数据集上进行了实验,与传统的图像检索方法进行了对比。
实验结果表明,本文提出的基于自注意力和深度哈希的图像检索技术在准确性和效率方面均取得了显著的提升。
6. 结论本文提出的基于自注意力和深度哈希的图像检索技术充分利用了自注意力机制和深度哈希的优势,在图像检索任务中取得了良好的效果。
未来的研究可以进一步探索如何进一步优化和改进该技术,以满足不断增长的图像检索需求。
基于深度哈希的数字档案图像检索方法
第 41 卷
数字技术与应用
索方法,提升了数字图像资源的利用率。 综上所述,档案数字化是档案事业发展的必然趋势,
档案图像检索是档案管理中的重要环节。而早期档案图 像检索方法大多是基于文本的图像检索,随着基于内容 的图像检索方法的提出,开始采用浅层图像特征进行匹 配,但这种方法未能准确识别出图像中的高级语义特征, 并且生成的高维特征占用较大的存储空间,从而导致检 索效率低和准确率差等问题。故本文将深度哈希方法应 用至档案图像检索中,一方面,深度神经网络用于提取 图像特征以进行有效的内容表示 ;另一方面,使用哈希 码代替图像高维特征能够有效降低所需存储空间并进行 快速相似度计算。 2 方法介绍
于数据检索 [3]。其目的是通过将高维图像数据转换为较 为紧凑的低维二进制码,从而在很少的存储容量内保留 更丰富的原始图像的信息,故目前常将深度哈希方法引 入图像检索中,达到节省存储空间并且有效地提升检索 效率的目的。本文基于深度哈希方法的特点,利用端到 端的网络框架生成图像哈希码用于图像检索,实现一个 档案图像检索系统,解决数字图像档案的检索问题。 1 数字档案图像检索研究背景
的相似性并将 +1 和 -1 的出现概率分别保持在 50%。具
体过程描述如下 :
给 定 图 像 集 X = {xi}iN=1,N 表 示 图 像 集 中 图 像 的 数
量, 利 用 训 练 后 得 到 的 网 络 模 型 得 到 图 像 近 似 哈 希 码
H = {hi}iN=1,之后采用符号函数 sgn() 生成用于图像检索
输入
CONV
CONV BLOCK
CONV BLOCK
CONV BLOCK
CONV BLOCK
Sgn(·)
FC
面向图像检索的监督哈希方法
VS
实验设置
在实验中,我们将数据集划分为训练集和 测试集,并利用训练集学习哈希函数。我 们采用了多种监督哈希方法进行对比实验 ,包括基于深度神经网络的方法、基于核 函数的方法等。同时,我们设置了不同的 哈希码长度进行实验,以评估不同码长对 检索性能的影响。
评价指标
准确率(Precision)
数与总检索图像数的比值 。准确率越高,表示检索结果越准确。
与其他方法的对比分析
我们还将监督哈希方法与一些传统的无监督哈希方法 和基于手工特征的方法进行了对比。实验结果表明, 监督哈希方法在图像检索任务中具有明显的优势,能 够取得更高的准确率和召回率。
06
总结与展望
本文工作总结
在实验中,我们采用了多种评价指标,对所提出的方 法进行了全面的性能评估。相比传统哈希方法和无监 督哈希方法,本文所提出的方法在检索精度和效率方 面均取得了显著的提升。
定义
哈希函数是将输入数据映射为二进制哈希码的关键组件。
学习过程
在监督哈希方法中,哈希函数的学习是通过利用标注数据 (监督信息)来优化哈希函数的参数,以使得生成的哈希 码能够更好地保留数据之间的相似性关系。
目标
学习的目标是得到一个能够有效编码输入数据,并生成具 有相似保留能力的二进制哈希码的哈希函数。
层次、不同粒度的特征表示。
特征融合策略
设计合适的特征融合策略,将多 种特征进行融合,得到更全面、 更鲁棒的图像表示,进而提高哈
希编码的质量。
哈希编码生成
基于融合后的特征,生成高质量 的哈希编码,使得相似图像在哈 希空间内距离更近,不相似图像
距离更远。
基于跨模态学习的监督哈希
跨模态数据准备
除了图像数据外,收集与图像相关的文本、标签等其他模态的数 据。
基于深度学习哈希算法的快速图像检索研究
1 引言
为了降低图像检索的空间复杂度与时间复杂 度,研究者们在过去十几年提出了很多高效的检索 技术,最成功的方法包括基于树结构的图像检索方 法[1]、基于哈希的图像检索方法[2],其中,经典的哈 希 方 法 是 局 部 敏 感 哈 希 方 法(Locality Sensitive Hashing,LSH)[3]和基于向量量化的图像检索方法[4]。 相比基于树结构的图像检索方法和基于向量量化 的图像检索方法,哈希技术将图像的高维特征保持 相似性的映射为紧致的二进制哈希码。由于二进
∗ 收稿日期:2019 年 6 月 14 日,修回日期:2019 年 7 月 24 日 作者简介:李泗兰,女,硕士,讲师,研究方向:图像处理,平面设计、网站开发等。郭雅,男,实验师,研究方向:计算机 网络、网络安装和云计算等。
3188
李泗兰等:基于深度学习哈希算法的快速图像检索研究
第 47 卷
学习算法,形成针对多标签图像的深度监督哈希。 该方法的基本思想包括:
关键词 哈希函数;损失函数;神经网络;标签 中图分类号 TP391.41 DOI:10. 3969/j. issn. 1672-9722. 2019. 12. 047
Fast Image Retrieval Based on Hash Algorithm in Depth Learning
LI Silan GUO Ya (School of Electronic Information Engineering,Guangdong Innovative Technical College,Dongguan 523960)
基于深度多监督哈希的快速图像检索
而,主流的深度学习方法往往使用较高维度的特征,这 极大地增加了图像检索的时间和空间开销。为了提高 检索的效率,哈希方法,如 LSH[19]开始应用于图像检 索领域,哈希特征的使用大大降低了图像检索在空间 和时间上的开销。然而,哈希方法的检索准确率往往 取决于它们所使用的特征,而手工编码的特征只能编 码线性特征,无法捕捉图像的深层语义信息。
第 36卷第 11期 2019年 11月
计算机应用与软件 ComputerApplicationsandSoftware
Vol36 No.11 Nov.2019
基于深度多监督哈希的快速图像检索
郁延珍
(复旦大学计算机科学技术学院 上海 201203)
摘 要 由于较低的检索时间和空间复杂度,哈希方法被广泛应用于大规模图像检索领域。提出深度多监督 哈希(DeepMultiSupervisedHashing,DMSH)方法来学习具有高度判别能力和紧凑的哈希编码,并进行有效的图 像检索。设计一个新的卷积神经网络结构来产生相似性保留的哈希编码,用一个识别信号来增加类间距离,用一 个验证信号来降低类间距离。同时,通过正则化的方式降低网络输出和二进制哈希编码之间的损失并使二进制 哈希值在每一维上均匀分布使网络输出更接近离散的哈希值。在两个数据集上的实验证明了该方法能够快速编 码任意新的图像并取得先进的检索结果。 关键词 图像检索 深度多监督哈希 卷积神经网络 中图分类号 TP3 文献标识码 A DOI:10.3969/j.issn.1000386x.2019.11.037
最近,很多基于卷积神经网络的哈希方法被提出, 如文 献 [1-2,14-15,23,26-27],用 来 解 决 快 速 图 像检索的问题。这些方法表明:深度卷积神经网络可 以有效地编码非线性函数,图像特征及其对应的哈希 函数都可以通过深度卷积神经网络学习得到。
基于深度学习的快速图像检索技术研究
基于深度学习的快速图像检索技术研究随着数字图像的大量增加和人们对图像信息的需求日益增加,图像检索技术逐渐成为图像处理领域的研究热点。
在以往的图像检索方法中,传统的基于手工特征提取的方法并不能完全满足人们对于图像检索速度和精度的要求,因此,基于深度学习的图像检索技术应运而生。
一、深度学习在图像检索中的应用深度学习可以通过大量数据的训练,自动学习并提取图像特征,从而实现图像检索的目的。
其中,卷积神经网络(Convolutional Neural Network,CNN)是一种经常被用于图像处理的深度学习模型。
CNN可以通过对图像进行卷积操作,提取出图像的特征,对于图像中的目标物体进行识别和分类。
在CNN模型的训练过程中,通常使用大量的图片数据,但是这些数据往往是没有标签的,也就是说我们并不知道这些图片中具体包含哪些物体或者哪些关键点。
因此,训练出来的模型对于识别和分类的能力往往很强,但是对于定位和检索的能力却往往不太理想。
为了解决这一问题,研究者们提出了一些新的网络结构和学习思路。
其中,以Siamese网络为例,它通过对图像进行两两比较,来实现图像之间的相似性度量,并将相似的图像聚集在一起。
而Triplet网络是通过对图像进行三元组比较,进一步提高了相似性度量的准确性。
这些网络结构使得我们可以在端到端的学习方式下,直接得到图像之间的相似度分数,从而实现对图像的快速检索。
二、实现快速图像检索的关键因素1. 数据集的选择数据集的选择是实现快速图像检索的关键因素之一。
一方面,数据集需要包含足够的图像样本,以满足深度学习模型的训练要求;另一方面,数据集中的图像需要尽可能地接近实际应用场景,以保证模型的泛化能力。
当然,由于数据集本身所包含的图像特征也会影响最终的检索结果,因此数据集的选择需要进行一定的筛选和预处理。
2. 图像特征的提取在深度学习的过程中,图像特征的提取是非常重要的一环。
常用的图像特征提取方法包括基于卷积神经网络的特征提取和基于传统图像处理技术的特征提取。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 研究背景随着互联网的蓬勃发展,每天有数以万计的图像在网络中产生,但很难根据不同用户的要求对相关图像进行准确查找。
假设数据库中的图像和待查询图像都是由实值特征来表示,查找相似图像最直接的方法就是根据数据库中的图像在特征空间中与待查询图像之间的距离对数据库中的图像进行排名,然后返回其中距离最接近的图像。
但是,对于现如今拥有数千万甚至数亿张图像的数据库来说,通过线性搜索整个数据库会花费大量的时间和内存。
受到CNN(卷积神经网络)功能鲁棒性的启发,作者通过利用CNN结构提出了一种二值码学习框架(称为深度监督哈希(DSH))。
在此方法中,作者首先设计一个CNN模型,该模型不再是使用单张图片进行训练,而是将图像对或三元图像组以及指示相似程度的标签作为训练输入,并生成二值码作为输出。
设计损失函数用于将相似图像的网络输出拉到一起,并将不相似图像的输出推送到很远的位置,以使得学习到的汉明空间可以很好地逼近图像的语义结构。
2 国内外研究现状最近邻居搜索的问题旨在从数据库中找到一个最接近查询的项目,在数据库很大或距离度量的计算成本很高的情况下,精确的最近邻居搜索的计算开销会过高。
作为一种更实用的选择,近似最近邻搜索方法由于其高效性而受到越来越多的关注,其代表性算法为LSH(局部敏感哈希)。
为了产生更紧凑的二值码,提出了与数据相关的哈希方法,试图从训练集中学习保留相似性的哈希函数。
这些方法又可以进一步分为非监督方法和监督(或半监督)方法。
无监督方法仅利用未标记的训练数据来学习哈希函数。
例如,SH(谱哈希)、ITQ(迭代量化哈希)等。
为了更好地处理更复杂的语义相似性,提出了监督学习方法,以利用诸如类别、标签之类的信息。
例如,DGH(离散图哈希)、SDH(监督离散哈希)等。
上述哈希方法在一定程度上确实取得了成功,但这些功能无法很好地捕获现实世界数据中出现的剧烈变化下的复杂语义信息,从而限制了学习的二进制代值码的检索精度。
为了解决这个问题,又出现了一些基于CNN的哈希方法。
2.1 LSH(Locality Sensitive Hashing,局部敏感哈希)局部敏感哈希是最初的用来做图像哈希索引的算法,其基本思想是使用一组哈希函数使用随机投影来生成哈希位将数据散列到不同的桶中,令相近的数据落在同一个哈希桶中,越相似的数据落到同一个桶中的概率越大。
理论上已经证明,随着代码长度的增加,两个二值码之间的汉明距离逐渐接近它们在特征空间中对应的距离。
但是通常情况下局部敏感哈希需要长代码才能达到令人满意的性能,这就意味着需要大量的内存。
2.2 SH(Spectral Hashing,谱哈希)谱哈希首先分析和总结了图像哈希编码应满足的条件,即:获得新图像哈希编码的算法易于实现;语义相同的图像有相同或相近的哈希编码序列,语义不同的图像得出差异性较大的哈希编码序列;图像的内容特征用较短的哈希编码序列就能表示。
为达到这三个条件的要求,谱哈希将编码过程视为图分割过程,对高维数据集进行谱分析,通过放松约束条件将问题转化成拉普拉斯特征图的降维问题,从而求解得到图像数据的哈希编码。
谱哈希的缺点是它有两个条件在实际情况中很难同时得到满足,即假设数据是从多维均匀分布中采样得到的而且要求不同维度上的哈希编码之间相互独立,因此谱哈希的广泛使用受到了限制。
2.3 ITQ(Iterative Quantization,迭代量化哈希)迭代量化哈希是一种基于PCA的图像哈希算法,不同于谱哈希为方差大的主成分方向分配更多的比特,迭代量化哈希通过旋转主成分方向使得旋转后各方向的方差尽量保持平衡。
迭代量化哈希步骤:首先用 PCA 对数据进行降维并对降维后的结果进行二值量化处理得到所有数据的初始哈希编码,这样原始数据被嵌入到了汉明空间中,各数据位于超立方体的顶点上;随后对主成分方向进行一次随机旋转,可以较好的平衡不同主成分方向的方差,接着对编码矩阵和旋转矩阵进行交替优化,以最小化量化误差为目标,旋转若干次后将得到局部最优解。
迭代量化哈希不同于谱哈希需要假设数据集服从均匀分布,因此适用范围更广泛,而且还可以与典型相关分析算法(Canonical Correlation Analysis, CCA)结合,构成有监督的哈希方法,可以对具有标签的图像数据库进行检索。
2.4 SDH(Supervised Discrete Hashing,监督离散哈希)监督离散哈希主要思想:通过将哈希码映射到 label 标签信息上,从而不需要通过计算相似性矩阵来将标签信息嵌入到哈希码生成过程当中;不对离散约束进行松弛,直接使用DCC算法在离散约束下按位求解哈希码。
具体算法是将哈希码映射到标签上来保持原始空间相似性信息,损失函数是将原始特征通过核函数进行一个非线性映射,具体来说就是先从n个样本中选出m个锚点(m<<n),可以求n个样本与m个锚点间的欧氏距离作为新特征,这样n*d的原始特征矩阵就转换为n*m的新特征矩阵,这种方式主要是用来增加非线性的。
还要注意一点,监督离散哈希没有对哈希码做松弛,也就是哈希码在训练过程中一直是离散的(只取-1和1),目前来看离散哈希性能都会超过松弛方法的,因为松弛之后量化误差会变大。
3 方案描述3.1 网络结构本论文所设计的网络结构如图3-1所示。
该网络由三个卷积池层和两个完全连接层组成。
卷积层中的过滤器的大小为5×5,步幅为1(三个卷积层中过滤器个数分别为32、32和64),并在步幅为2的情况下合并3×3块。
第一个完全连接的层包含500个节点,第二个(输出层)具有k(码长)个节点。
损失函数旨在通过利用可区分性项和正则化器来学习保留相似性的类似二值码,通过量化图像的网络输出来获得二值码。
图3-1 网络结构图在理想情况下,为了避免由量化损失引起的性能下降,直接在汉明空间中优化二值码更为合适,如图3-2右上方所示,而不是将它们放宽为实数值。
然而,在汉明空间中优化不可微的损失函数将不可避免地引起梯度问题,从而使对CNN模型进行优化变得困难。
为了解决这个问题作者采取了折衷方案,通过在 CNN 输出上强加一个正则化器,将二维汉明空间放宽到类似于二维的欧几里德空间,如图3-2右下方所示,网络输出被放松到实际值,而同时强加一个调节器以鼓励实际值输出接近期望的离散值。
在此框架下,可以通过以下方式轻松编码图像:首先通过网络进行正向传播,然后将网络输出量化为二进制代码表示形式。
图3-2 正则化器示意图3.2 损失函数设Ω为RGB图像空间,作者的方法旨在学习从Ω到k位二维码的映射:F:Ω→{+ 1,−1}k,这样类似的图像(在视觉相似性或语义相似性方面)就被编码为相似的二值码,反之亦然。
为此达到目的,损失函数被设计为将相似图像的网络输出拉到一起,并将相异图像的输出推到很远,以便学习的汉明空间可以很好地近似图像的语义结构。
如图3-3所示,作者采用的两种损失函数的图示方法:(a)对比损失,在这种情况下,鼓励相似的样本黄色圆圈尽可能靠近,而不同样本之间(中心黄色圆圈与红色圆圈和绿色。
(b)三元组排序损失,其中相似样本黄色圆圈之间的距离被强圆圈)的距离应大于mc。
制小于空白样本(中心黄色圆圈与红色圆圈和绿色圆圈)之间的距离mt图3-3 对比损失示意图3.2.1 对比损失对比损失的设计为尽可能拉近相似图像的二值码,同时将相异图像的二值码推得很远,直到距离超过预设的阈值。
形式上,对于一对图像I1,I2∈Ω和对应的二值码网络输出b1,b2∈{+1,-1}k,如果它们相似,则定义y=0,否则定义y=1。
关于这对图像的损耗定义为:其中Dh (*,*)表示两个二进制矢量之间的汉明距离,mc> 0 是对比损失的余量阈值参数。
等式中的第一项惩罚映射到不同二值码的相似图片,等式中的第二项惩罚映射到汉明距离较近的二值码的异类图像。
假设从训练图像{(Ii ,1,Ii,2,yi)|i=1,...,Nc}中随机选择Nc个训练对,目标是使总体损失函数最小:3.2.2 三元组排名损失与对比损失类似,三元组排名损失也旨在学习辨别性图像表示,但是以柔和的方式。
具体地来说,不同于惩罚相似图像的二值码之间的任何非零距离的对比损失,三元组排序损失仅要求相似图像的码之间的距离小于不相似图像的码之间的距离。
对于图像三元组Ia ,Ip,In∈Ω,相应的二值网络输出ba,bp,bn∈{+1,-1}k,其中Ia与Ip相比比与In更相似(此处使用下标分别表示锚点,正数和负数)。
此三元组的损失函数定义为:其中mt >0是三元组排名损失的余量参数。
这个损失函数强制ba和之间的汉明距离bn大于ba 和bp之间的汉明距离以一点距离。
该损失函数不是约束距离的精确数值,而是对所有样本到锚点样本的相对距离施加约束,因此被认为更适合应用于检索任务。
同样,假设从训练图像{(Ii ,a,Ii,p,Ii,n}|i=1,...,Nt}中随机选择Nt个三元组,最小的总体损失函数为:3.2.2 优化如果完全忽略二进制约束,由于欧几里得空间和汉明空间之间的差异,将导致次优的二值码。
常用的松弛方案是利用S型或tanh函数来近似阈值化过程。
但是由于梯度消失问题,使用这样的饱和非线性函数将不可避免地减慢甚至限制网络的收敛。
为了克服这种局限性,在这项工作中,作者对实值网络输出施加一个正则化器,以逼近所需的克里特值(+1/−1),用欧几里得距离替换汉明距离。
损失函数改写为:对应的总体损失函数改写为:利用这些目标函数,使用反向传播算法和小批量梯度下降法对网络进行训练。
由于目标函数中的最大运算和绝对值运算在某些点上是不可微的,因此作者使用子梯度来代替,并在这些点处将子梯度定义为1。
上式进一步改写为:有了这样的框架,可以使用sign(b)轻松获得图像的二值码。
实验部分将验证正则化器相对于饱和非线性的优势,该非线性已被大多数现有的基于CNN的哈希方法采用。
4 实验评估在实验阶段,作者选取了三个广泛使用的数据集:(1)CIFAR-10,该数据集由属于十个互斥类别的六万张32×32彩色图像组成,每个类别六千张图像。
图像可以直接用作那些基于CNN的竞争方法以及我们的DSH的输入。
(2)NUS-WIDE,该数据集包含从Flickr收集的二十七万张图像,图像和八十一个概念之间的关联是手动注释的。
选取其中二十一个最常见概念相关联的图像,其中每个概念至少与五千张图像相关联,因此总共产生二十万个选定图像。
在输入到基于CNN的方法之前,图像变形为64×64。
(3)SVHN,该数据集包含六十三万张32×32彩色数字裁剪图像(从0到9),从每个类别中随机选择二十张图像,直接将原始像素用作基于 CNN 的方法的输入。