一种应用于大规模高维数据的两阶段近邻图搜索方法技术

技术编号:25835364 阅读:48 留言:0更新日期:2020-10-02 14:16
本发明专利技术公开了一种应用于大规模高维数据的两阶段近邻图搜索方法。该方法针对大规模高维数据构建K近邻图;对K近邻图中每一个顶点的邻居集划分得到可导向近邻图;查询时,在可导向近邻图上执行两阶段搜索,第一阶段使用优化导向搜索快速定位到查询点附近,第二阶段在查询点附近使用贪婪算法精确搜索;最后将返回的点作为搜索结果。本发明专利技术改进了在近邻图上只执行单一搜索策略的常规方式,使用联合优化导向搜索和贪婪算法的混合式搜索策略。解决了近邻图算法中普遍存在的低搜索效率和易陷入局部最优问题,从而提升了近邻图算法的搜索性能。

【技术实现步骤摘要】
一种应用于大规模高维数据的两阶段近邻图搜索方法
本专利技术涉及近似最近邻搜索领域,具体涉及一种应用于大规模高维数据的两阶段近邻图搜索方法。
技术介绍
大规模高维数据近似最近邻搜索是模式识别、信息检索和机器学习等领域的一个核心技术。在过去的几十年,研究者在开发快速和可扩展的近似最近邻算法上倾注了大量的努力。目前,根据近似最近邻算法使用的索引结构,可将其大致分为以下四类:树基空间划分方法、哈希基方法、向量量化方法以及近邻图方法。研究表明,基于近邻图的近似最近邻算法在很多方面都获得了更好的性能,因此,它是最有希望得到广泛应用的。当前最优的几个近邻图算法包括可导航卫星系图(NSSG)、可导航伸展图(NSG)、分层可导航小世界图(HNSW),它们已经被整合到各种搜索系统中并表现出了优秀的性能。然而,包括这些优秀的近邻图算法在内的大部分近邻图都仅使用单一的贪婪算法作为它们的搜索策略,这会导致两个普遍的问题:(1)低的搜索效率。当使用贪婪算法在近邻图上执行搜索时,每一个访问点的所有邻居都需要与查询点进行相似性度量,这实际上并不是必不可少的,它本文档来自技高网...

【技术保护点】
1.一种应用于大规模高维数据的两阶段近邻图搜索方法,其特征在于该方法包含以下步骤:/n(1)针对大规模高维向量数据构建K近邻图;/n(2)对K近邻图中每一个顶点的邻居集使用一种空间划分策略进行划分得到可导向近邻图;/n(3)给定查询点,从入口点开始,在可导向近邻图上执行两阶段近似最近邻搜索;其中在第一阶段,使用优化导向搜索快速定位到查询点附近区域;在第二阶段,使用贪婪算法在查询点附近区域内进行穷尽式搜索;/n(4)将返回的一定数量的点作为结果,即为查询点的最近邻点集。/n

【技术特征摘要】
1.一种应用于大规模高维数据的两阶段近邻图搜索方法,其特征在于该方法包含以下步骤:
(1)针对大规模高维向量数据构建K近邻图;
(2)对K近邻图中每一个顶点的邻居集使用一种空间划分策略进行划分得到可导向近邻图;
(3)给定查询点,从入口点开始,在可导向近邻图上执行两阶段近似最近邻搜索;其中在第一阶段,使用优化导向搜索快速定位到查询点附近区域;在第二阶段,使用贪婪算法在查询点附近区域内进行穷尽式搜索;
(4)将返回的一定数量的点作为结果,即为查询点的最近邻点集。


2.根据权利要求1所述的一种应用于大规模高维数据的两阶段近邻图搜索方法,其特征在于,步骤(1)具体是:对于给定d维空间中的数据集S,其抽象表示为
S={vi|i=1,2,…,N}
其中,vi为第i个向量数据,N为数据集的尺寸;使用K近邻图G来组织S,G表示为
G=(V,E)
其中,V为顶点集,它满足V=S,E为边集;当且仅当δ(vi,vj)是集合Δi的K个最小元素时,vi指向vj的有向边<vi,vj>∈E,集合Δi表示为
Δi={δ(vi,vl)|l=1,…,i-1,i+1,…,N}
其中δ是一种相似性度量方式,此时vj便是vi的邻居,vi所有K个邻居构成的集合为N(vi),即vi的邻居集。


3.根据权利要求2所述的一种应用于大规模高维数据的两阶段近邻图搜索方法,其特征在于,步骤(2)所述的空间划分策略是使用一种数据结构W来组织每个顶点的邻居集;对于任一顶点vi,使用数据结构W组织它的邻居集后得到W(N(vi));对K近邻图中所有顶点执行上述操作后,得到的近邻图称为可导向近邻图G′,所述的数据结构W包括树、图或哈希。


4.根据权利要求3所述的一种应用于大规模高维数据的两阶段近邻图搜索方法,其特征在于,步骤(3)在K近邻图上执...

【专利技术属性】
技术研发人员:徐小良王梦召
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1