哈希图像检索文章学习笔记
Central Similarity Quantization for Efficient Image and Video Retrieval
摘要:现在哈希算法通常只是从成对或者三元组的数据关系中学习哈希函数,因此只在局部捕获了数据的相似性,学习效率低,冲突率低。
本文提出了一种全新的相似性度量,称为中心相似度,鼓励相似的图像产生的哈希码逼近一个共同的哈希中心,不同的图像则收敛到不同的哈希中心。以提高哈希的学习效率和检索精度。
本文引入了一个新的概念,即散列中心来计算所提出的中心相似性度量,散列中心是指一组分散在汉明空间中的数据点,它们之间有足够的相互距离。本文提供了一种有效的方法,通过利用哈达玛矩阵和伯努利分布来构建分离良好的哈希中心。
最后,我们提出了中心相似性量化(CSQ),它优化数据点之间的中心相似性,而不是优化局部相似性。CSQ是通用的,适用于图像和视频哈希场景。在大规模图像和视频检索任务上的大量实验表明,CSQ可以为相似的数据对生成内聚的散列码,为不相似的数据对生成分散的散列码,从而显著提高检索性能,即在mAP方面比以前的技术水平提高了3%到20%
介绍:
通过合适的哈希函数将高维数据特征转换为汉明空间中的紧凑的二进制哈希码,哈希为数据存储和检索提供了显著的效率。并且“深度学习散列”方法已经成功应用到大规模的图像检索以及视频检索,能够自然的表示非线性用于产生输入数据哈希码的哈希函数。
大多数深度散列方法通过利用成对或三元组数据相似性来学习散列函数,其中数据关系是从本地角度捕获的。这种基于成对/三元组的散列学习本质上导致以下问题。
- 对整个训练数据集之间的相似性进行剖析的效率低。常用的成对相似性度量或三对相似性度量的时间复杂度为O(n!)为n个数据点。因此,从大规模图像或视频数据的所有可能的数据对/三元组中详尽地学习是不切实际的。
- 数据分发覆盖不足。基于成对/三元组相似性的方法仅利用数据对之间的部分关系,这可能会损害生成的散列码的可辨别性。
- 对不平衡数据的有效性低。在现实场景中,不同对的数量比相似对的数量多得多。因此,基于成对/三元组相似性的散列方法不能充分学习相似性关系来生成足够好的散列码,导致性能受限。
为了解决上述问题,我们提出了一种新的全局相似性度量,称为中心相似性。
哈希中心被定义为汉明空间中具有足够相互距离的一组点。中心相似性学习旨在鼓励生成的哈希码接近相应的哈希中心。对于n个数据点和m个中心,时间复杂度仅为O(nm)
基于中心相似性的散列是高效的,并且可以从全局数据分布中生成足够有区别性的散列码(图1),这克服了基于成对/三元组相似性的散列方法的局限性。即使存在严重的数据不平衡,哈希函数仍然可以从全局关系中很好地学习。
为了获得合适的哈希中心,本文提出了两种系统的方法。
一种是利用哈达玛矩阵直接构造相互汉明距离最大的哈希中心.
另一种是通过从伯努利分布中随机采样来生成哈希中心。
本文证明了这两种方法都可以生成适当的哈希中心,这些哈希中心以足够的汉明距离相互分离。
利用生成的哈希中心,发展了卷积神经网络的中心相似性,在汉明空间中学习一个深度哈希函数。本文将提出的哈希学习方法命名为中心相似性量化(CSQ)。特别地,我们采用卷积层来学习数据特征,并采用散列层来产生散列码。在确定哈希中心后,对深度CNN和哈希层进行端到端的训练,生成以优化中心相似度为目标的哈希码。
我们在MNIST数据集上进行了说明性实验首先验证我们的CSQ的有效性。我们发现CSQ学习的哈希