面向大规模图像检索的层次语义索引

Hierarchical Semantic Indexing for Large Scale Image Retrieval

目录

摘要

1 介绍 Introduction

2 相关工作 Related Work

3 运用层次结构的检索 Exploiting Hierarchy for Retrieval

3.1 语义相似度的层次编码

 3.2 学习语义属性

 4 高效索引 Efficient Indexing

5 实验 Experiment 

 5.1 数据集和评估标准

5.2 层次检索 

5.3 平面检索

5.4 跨类别泛化

5.5 高效索引

6 结论 Conclusion


摘要

本文讨论的是相似图像检索的问题,特别是在百万到十亿级别的大规模数据集上。核心新贡献一个利用先进的语义层次知识的方法。 当语义标签和与它们相关的层次结构在训练中可用时,相似图像检索会获得显著的改进。一些优势来源于使用额外的信息的能力,我们的实验探索一种特殊的情况——在没有额外提供数据的情况下,新方法的表现也胜过了目前相似度学习领域的最先进方法OASIS。对于规模更大的问题,利用层次关系是最重要的,因为在这些问题中,可扩展性变得至关重要。我们提出的学习方法基本上是可并行的,因此比以前的工作更易于扩展。一个额外的贡献是一种新的散列方案(a hashing scheme),它可以减少检索计算上的开销(对于概率向量上的双线性相似性,可以选择考虑层次结构)。

1 介绍 Introduction

本文探讨的主要问题:给定一个查询图像,在大的图像集中找到与之相似的图像,如下图。

上图是使用层次结构的检索与不考虑层次结构的检索的对比。绿色的条块表示该图像再分类层次结构中的定义与查询用图像的基本相似度(见5.2节)。条块越长表示相似度越高。

结果显示:使用层次关系可以显著地改善检索精确度。包含层次关系随着数据集变大而变得越来越重要。当类别是密集采样的必须进行细粒度区分时,潜在的好处最大。为了处理大规模数据,计算上的性能和可扩展性是在检索中运用层次的关键。

我们的方法论证了如何高效地将定义在图像语义属性上的层次结构与先验的人类知识相结合。例如,给定语义属性像是包含马、狗,或者风车,一个预定义的层次结构可能会让我们知道,一张包含马的图像比起包含风车的图像,与包含一只狗的图像更为相似。根据语义属性来规定层次结构是可行的,但是用低级特征直接来做是很困难的。

当前最先进的相似图像检索技术水平来自大量的,学习用于检索的基本相似性函数的工作上。这些工作的目标是,学习出一个直接从图像的低级特征向量中计算相似度的函数,并且不允许可以编码层次结构的各种方法。改编其中一些策略,使其能够考虑使用层次结构是可能的,但是需要改变技术,并且改善方法的可扩展性和并行性并不是必需的。

我们的方法走了一条不同的路,学习去识别图像的语义属性,然后用一个预定义的比较函数——基于一个已知的层次结构,来生成检索的相似度分数。学习识别语义属性很容易并行,因此具有良好的可扩展性。我们指出,在现有的最先进水平上的显著进步在两种情况下是可能的:标签和层次结构已知,或者标签可以被推断出,但是层次结构是不可用的。然而,当标签不可用也不能被推出,我们提出的技术就不再适合。一旦确定了相似度函数,下一个挑战就是针对层次相似度,查询最相似的数据库图像的高效检索。

本文提出了一种新的哈希策略,该策略为检索提供了一个次线性时间解决方案,并形成了一个通用的组件。

2 相关工作 Related Work

主要回顾了层次结构、相似度学习、语义索引,以及哈希检索方面的相关工作。

本文我们论证了使用层次结构来开展一项不同但是又有关联的任务——相似图像检索——能够获得精确度上的显著进步。

目前的许多改进都源于以语义层次结构的形式利用高级知识。这和目前对高级语义属性的识别显式估计的研究相关。尤其是允许检索查询使用语言来描述人脸的语义属性。目前的工作考虑到一种和我们使用的语义表征在内核上相似的表征法,但是它关注的是用这种表征来分类——使用多次训练的样例来作为分类的具体查询,而不是将单个示例作为查询。在多媒体和信息检索领域也有相关工作。

在我们的工作中,使用概率向量的双线性相似度检索核心的程序,我们也提出了一种新的哈希模式来完成这一工作。请注意,与目前基于学习视觉哈希函数的方法相反的是,它是一种数据独立的哈希方法。

3 运用层次结构的检索 Exploiting Hierarchy for Retrieval

为了在检索中使用层次结构,我们考虑将估计两张图像的相似度Sim作为核心程序。检索包括从一个大数据集中找到和查询图像相似度最高的那些图像。

左侧是从前的工作,与之对比的是右侧我们的工作。我们将学习相似度函数划分为两个部分,一个是对语义标签的概率估计,还有一个是层次比较函数。层次比较函数是从先验知识上确定地建立的,只学习语义模型。

像上图描述的那样,我们计算相似度的方法

  • 首先基于低级图像特征,估计一张图像s(f(a))语义属性的概率
  • 接下来我们使用语义层次关系的先验知识,确定地计算一个层次相似度矩阵,S,相似度函数是Sim(a,b)=s(f(a))^{T}Ss(f(b))(见3.1和3.2节)。

这种方法不仅允许使用层次知识,而且学习过程只需要建立语义属性的模型——比之前的学习相似度方法更容易并行。

3.1 语义相似度的层次编码

 我们方法的核心是使用语义属性间的层次先验知识来计算检索的相似度。

 首先,我们讨论一个相似度的非概率版本,并通过一组二元语义属性\left \{ 1...K \right \}来描述图像。属性可以是对象分类(“是狗”),部分相关(“有腿”),视觉描述

大规模图像检索的代码,matlab与c++混合编程。总结了目前图像检索领域目前主要存在的方法。通过阅该代码,可以对于经典的“词袋”模型(bow模型)有个具体的了解,但是该代码没有提供前序的特征提取,是直接从对提取好的特征向量聚类开始的,包括了k-means,分层k-means(HKM)聚类,倒排文件的建立和索引等,该代码还提供了局部敏感哈希(LSH)方法。最后,这份代码是下面这篇论文的作者提供的, Indexing in Large Scale Image Collections: Scaling Properties and Benchmark-This C++/Matlab package implements several algorithms used for large scale image search. The algorithms are implemented in C++, with an eye on large scale databases. It can handle millions of images and hundreds of millions of local features. It has MEX interfaces for Matlab, but can also be used (with possible future modifications) from Python and directly from C++. It can also be used for approximate nearest neighbor search, especially using the Kd-Trees or LSH implementations. The algorithms can be divided into two broad categories, depending on the approach taken for image search: 1. Bag of Words: ---------------- The images are represented by histograms of visual words. It includes algorithms for computing dictionaries: * K-Means. * Approximate K-Means (AKM). * Hierarchical K-Means (HKM). It also includes algorithms for fast search: * Inverted File Index. * Inverted File Index with Extra Information (for example for implementing Hamming Embedding).
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值