- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
HashingforSimilaritySearchASurvey
Hashing for Similarity Search: A Survey
摘要:文章主要从两方面对 hashing进行了介绍。1.局部敏感哈希:不考虑数据的分布状况,选定不同距离
度量下的特定满足 LSH条件的 hashing family函数,并抽样产生参数。2:学习哈希,通过考虑数据的分布
情况,用学习的方法(定义相应的目标函数)获得相应的 hashing函数的参数。其他还有关于基于 hash code
进行相似度比较的一些常见搜索方法。
1.介绍
数据集大时,直接进行精确的最近邻检索是很消耗时间的。因此,近似的最近邻搜索是一种可选取得方
法。典型的 ANN的方法是 hashing。总的来说,哈希就是一种将数据转化到低维度,形成短比特组成 code
的方法。哈希的应用主要有两种方式:
用哈希表索引数据(将相似的数据以更大的概率编码到相同的 code)--局部敏感哈希。主要的研究放在了
设计满足 LSH条件的 hash function,以及针对相应的 hash table,设计有效的搜索策略。
近似距离估计(用短的 codes进行全局的距离计算是非常高效的)。主要研究放在了设计计算短 code的方
法上,以及设计距离测量的方法上。
2.回顾
2.1 最近邻搜索
2.1.1 精确最近邻搜索
第一种方法是 KNN。涉及的距离度量有 Lp范数,cosine similarity等。
还有一种方法是 RNN。 。
2.1.2 近似最近邻搜索
最近邻搜索:找到一个 item x : dist(q,x)= dist(q,x)*, 其中,x*是真正的最近邻点。
cR最近邻搜索: 。
2.1.3 随机最近邻搜索 (ps.with probability )
随机 cR最近邻搜索以及随机 R最近邻搜索。
2.2 哈希方法
将数据映射到短的,紧致的哈希码。例如,y=h(x)。其中,y 是哈希码,h(-)是哈希函数。通常,我们
会使用对个哈希函数,来获得多个 code来组成哈希码。y=h(x),y=[y1 y2 … ym]’=[h1(x) h2(x) … hm(x)]’。
使用哈希码进行最近邻搜索有两种方法:1是使用哈希表查询;2是快速的距离近似。
2.2.1 哈希表查询 (ps. Hash tables, buckets, size-L, length-K)
哈希表是由多个桶(buckets)组成的数据结构,每一个桶都通过哈希码进行索引。并且每一个 item x都
对应一个 h(x)的桶。特别的,哈希算法的哈希表构建的目标是实现邻近 items 碰撞的概率最大化。即希望,
给定一个查询 q,相应的在 h(q)桶中的 items都是 q的实际的邻近 items。
为了改善哈希表的召回率,通常可以增加哈希表的数目。这样,假设共有 L 个 hash tables,我们就返回
h1(q),…hL(q)的所有 tables的对应桶中的 items。
同时为了保证精度,我们希望每一个 table中的 hash code 长度 K都足够长。
2.2.2 快速距离近似 (ps. Exhaustive search)
另一种 hash 码处理的方式是直接进行全局的查询。即先快速的计算查询 item 和数据集样本的 hash code
的距离,获得候选的 items。然后紧接着在候选点中进行基于原始特征的 reranking,获得 KNN或者 RNN。
这边利用了 hash code 的两个点:1.哈希码因为短,所以能很有效的进行全局计算。2.哈希码能进行有效
的磁盘读写,i/o消耗很少。
2.3 论文的组织
Section.3 介绍 LSH 的特性,以及一些在不同 distance衡量方法下的 family instance (hashing function)。
ht
tp
:/
/w
ww
.c
nb
lo
gs
.c
om
/j
ef
fw
il
so
n/
Section 4 介绍利用 LSH codes 进行搜索的方法;Section 5.6.7 基于学习的哈希算法。
3.局部敏感哈希 (LSH)(ps. 定义,以及在不同距离度量下的 LSH函数例子)
LSH 族 :一族能够将在输入空间相似的 items以更高概率映射到相同哈希码的哈希函数。
LSH的理论研究主要在三个方面:
1. 发明针对不同类型的 distance/similarity度量的不同的 LSH函数族;
2. 探索不同 LSH 框架的不同性质的理论边界;
3. 改进 LSH code的搜索策略;
LSH的应用研究主要在:
发展更好的
文档评论(0)