高维向量快速检索方法Locality Sensitive Hashing之三——位置敏感聚类

1 关于位置敏感哈希的讨论

LSH主要是为了解决基本的高维向量快速搜索问题而提出的,在信息检索的各方面如图像、视频、文本、音乐和网页等都有应用。
LSH的主要优点有:

  • 用于检索时速度很快,相比于kd-tree等算法可以有几十倍的提高;
  • 适合于动态数据集增量索引,索引结构更新的计算代价小,用于聚类时不需要对全体数据集重新聚类生成新码本。
    LSH的主要局限有:
  • 耗费内存空间较大。近邻点可能分布在多个桶,如果要达到较好的性能,可以建立多个哈希表,但这种做法内存开销很大。Lv和Josephson等提出的Multi-probe LSH从一个表中多个桶查找近似点,可以减少约90%的空间消耗。
  • 算法性能对参数非常敏感,这些参数必须在使用前加以确定。Bawa和Condie等提出的LSH Forest减少了需要确定的参数的个数,部分地解决了这个问题。Dong等设计了自适应的LSH搜索算法模型,动态的为每次查询确定参数。

利用位置敏感哈希进行聚类,在设计哈希函数时使数据点发生冲突,而这些数据点一般属于同一类,将这些发生冲突的点归为一类,就可以达到聚类的效果。这种方式不使用距离度量方式来衡量数据点的紧密程度,而是通过哈希函数在对数据点映射的时候完成聚类,在大大加快算法运行速度的同时,不可避免的存在一定的随机性。

2 高维空间聚类

对高维空间中的数据集进行聚类时,许多常用算法的有效性和效率会有所降低,主要有以下几个原因:

  • 高维数据的内部稀疏性阻碍了这些算法性能的发挥;
  • 高维空间中两点距离趋于一致,因此从不相似数据中找出相似数据的难度更大;
  • 高维空间中的类存在于子空间中,不同的类可能存在于不同的子空间中。

图像聚类是典型的高维空间聚类,因为几乎所有的图像特征的维数都很高。因此,高维聚类的难题也存在于图像聚类中。虽然近年来出现了不少聚类算法,但应用于图像聚类的并不多。在图像聚类中常用的有k-means及其改进算法模糊k-means、谱聚类、仿射传播聚类等。在规模不断增加的数据库上,k-means的缺点会比较明显,因为它不支持增量聚类,运行时间会随着数据及规模的增大而急剧增长。而谱聚类和仿射传播聚类需要矩阵运算,其中相似矩阵的行和列与图像个数相同。当图像集规模较大时,它们的复杂度和内存消耗将会比k-means还高得多。
随机映射是近年来研究较多的算法,它可以在降低维数同时在一定程度上保持原有结构不变。例如,欧氏空间的n维的点可以映射到d维并且d远小于n。Johnson-Lindenstrauss定理说明,这些点中所有点对的相对距离和角度在映射后以很大的概率保持不变。这样的随机映射主要应用在降维和快速近似最近邻搜索,还包括信号处理、异常检测、聚类和分类等。

2 E2LSH聚类可能性

E2LSH是随机映射的一个特例,近年来引起了人们更多的注意,被应用在不少领域。它在用于近似最近邻检索时,在保持较高准确率的同时有着很短的运行时间,是当前近似最近邻检索的主流算法。它把高维向量映射到低维空间后,其实也完成了维数约减的任务。同时,由于相同的桶中的点比不同桶中的点更相似,如果根据桶标记对数据点进行分组,也可以达到对数据点进行聚类的目的。另外,E2LSH是一个数据无关的方法,它在对一个点进行映射时与其它点无关,这意味着它可以方便地为一个动态数据集建立索引。将E2LSH用于聚类时,当数据集规模变化时不需要对整个数据集重新进行聚类,只需要对变化的数据点进行运算即可。因此,它可以方便地起到增量聚类的作用,再加上它的时间优势,使得它可以较好的用于大数据集聚类。

3 位置敏感聚类原理分析

随机映射近年来在模式识别和数据挖掘中主要用于降维,它通过一个的矩阵A将数据从n维降到d维。其中,A与数据无关,可以快速的选定。和经典的降维方法PCA(Principal Component Analysis)相比,随机映射有自己的优势:

  • 对于n个高斯混合数据,PCA一般能降到低于O(n)维,然而随机映射能降到O(logn)维;
  • PCA不能减小高斯的离心率。另外,即使原始数据分布形状有严重的扭曲,经过随机映射的数据比经过PCA运算的数据的分布更趋近于球形,这使得降维后的数据更容易聚类。
  • PCA需要对矩阵进行分解,随机映射不需要,而高维情况下矩阵分解的复杂度是比较高的。

除了降维之外,随机映射还可用于聚类。聚类的基础在于它对数据集可分性的保持。这里的可分性保持主要涉及距离保持、边界保持和角度保持三个方面。对距离保持是指数据点间的距离在映射后以很高的概率得以保持。这是信息检索中近似最近邻搜索算法的基础。仅距离保持对聚类是不够的,随机映射对数据集的类边界的保留是必要的。

4 位置敏感聚类实现流程

在随机映射可分性保持的基础上,一个数据集在经过E2LSH算法映射后,相对距离、类边界和角度能够得以保持。这为E2LSH用于聚类提供了可行性。事实上,经过映射后,桶标记相同的点比桶标记不同的点相似度高,而且桶标记相邻的点比桶标记不相邻的点的相似度高。因此,可以利用桶标记对数据点进行分组,也就是把桶标记相同或相邻的数据点分为一类。我们把这种以E2LSH的位置敏感哈希函数为基础的聚类方法称作位置敏感聚类(Locality Sensitive Clustering, LSC)方法。位置敏感聚类方法主要包括三部分:

  • 第一,生成位置敏感哈希函数;
  • 第二,桶标记的产生,即利用位置敏感哈希函数对每个点进行映射得出桶标记;
  • 第三,桶标记的合并。由于桶标记的个数多于实际的类数目,需要选择合适的合并区间对桶标记进行合并,合并后的桶标记对可用来对数据点进行分组,得出最终的类标签。

在聚类前,要先计算图像集上特征的聚类优先级以选取聚类特征。
详细内容请下载具体内容请下载基于哈希技术的图像检索研究并查看3章。

转载于:https://blog.51cto.com/8764888/2056319

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值