(完整)LocalitySensitiveHashing总结,文档.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Locality Sensitive Hashing 总结 一、 概述 最近 搜索 ( Nearest Neighbor Search Problem , NNS )是: 定距离空 X 中的 点集 P = { p1, p2 ? pn } ,以及 q∈ X ,如何高效的找到 P 中距离近 q 最近的那个点。 里 的距离空 X ,我 一般只关注 Rd 空 。当 d 小的 候, 文献 H. Edelsbrunner. Algorithms in Combinatorial Geometry. 1987 提出了一个有效的解决 法。 但是,当空 的 度 d 大的 候, 无 是理 上 是 践中, 没有令人 意的解决方法, 性 找方法的效率也非常 低。 种由于 度 d 太大,而 来的求解困 的 称 “ 度灾 ” 。 除了最近 之外, 研究人 近似最近 也比 感 趣,  即,在 P 中找到点 p, 使得 所有的 p’都 足 。此 ,可以直 理解 , p 是 P 中距离 q 的差不多最小的点。但 是即使是ε -NNS ,情况也不比 NNS 好到哪里去。 了解决 度灾 , Indyk 提出了局部敏感哈希算法, 用于 理高 海量数据,尤其是用于数据 的相似度 算。 在 用中, 如果是低 少量数据, 可以直接采用 性 找的方法。当数据量大,并且 度高 , LSH 是一个不 的 。 LSH  从 1998  年开始, 了多个版本。 比 典的是 明空 上的  LSH 、p-stable LSH 。 P-stable LSH  是 明空  LSH  的改 版本,它使得数据无需 化  01 串,可以直接在欧氏 空 上 理。下文分 介 两种  LSH  方案。 二、 原始 LSH LSH  算法的思想是, 利用  hash 函数,将原始数据点映射到一个新的空 中,  并且使得, 在原空 中距离相近的点,会以很大的概率 生 hash 碰撞。当 行最近 找 ,只需要 算 点的 hash ,然后提取所有与 点 生 hash 碰撞的数据点。 些数据点可以在 一个 大的概率下保 是与 点相似的。 一来, 我 只需要在 些相似的点中 找那 个最近 , 无需遍 整个数据 。 因此, LSH 算法能 帮助我 从整个数据 中找到一个子 集, 个子集种的数据点会以很大的概率与 点相接近。 LSH 算法中采用的 hash 函数并 不同于 的用于密 学中的 hash函数。在密 学中,我 期望尽量避免 hash 碰撞。而在 LSH 算法中的 hash 函数,我 却希望最大化碰撞概率。 那么什么 的函数才算是局部敏感哈希函数呢?从上述描述来看,可以看出  LSH  函数 有如下性 : 距离较远的点,产生哈希碰撞的概率较小 距离较近的点,产生哈希碰撞的概率较高。 从 LSH 函数的性质,我们可以这么定义 LSH 函数: 在距离空间 X( d)中,d 为距离, 函数簇 H 是从 X 到 U 到映射, 对任意 X 中的点 p,q, 都满足: 1)如果  d(x,y)  ≤ d1, 则  h(x) = h(y)  的概率至少为  p1; 2)如果  d(x,y)  ≥ d2, 则  h(x) = h(y)  的概率至多为  p2; 满足上述条件的函数称之为是 ( d1, d2 , p1 , p2)-sensitive 的。《 Mining of Massive Datasets 》 一书中,给出了寻找这样的函数的方法。一般来说,我们只需要几个常用的: 下面我们介绍一些满足不同距离度量方式下的 locality-sensitive 的 hash functions : 1. Jaccard distance Jaccard distance: (1 - Jaccard similarity) ,而 Jaccard similarity = (A intersection B) / (A union B) , Jaccard similarity 通常用来判断两个集合的相似性。 Jaccard distance 对应的 LSH hash function 为: minhash,其是 (d1,d2,1-d1,1-d2)-sensitive 的。 2. Hamming distance Hamming distance : 两个具有相同长度的向量中对应位置处值不同的次数。 Hamming distance 对应的 (d1,d2,1-d1/d,1-d2/d)-sensitive  LSH hash function 的。  为:  H(V) = 

文档评论(0)

187****5086 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档