当前位置: 首页 > 专利查询>清华大学专利>正文

大规模高维数据快速检索方法及系统技术方案

技术编号:17779965 阅读:39 留言:0更新日期:2018-04-22 08:36
本发明专利技术提供了一种基于乘积量化与多重倒排索引的大规模高维数据近似近邻检索方法及系统,包括基于训练后的乘积量化单元,获取待检索数据对应的二进制码,所述二进制码用于确定与所述待检索数据距离最近的聚类中心;将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中,获取预设数据库中与所述待检索数据距离最小的数据构成的集合;根据所述集合中每一数据与所述待检索数据的距离大小,对所述集合中的所有数据进行排序,并将排序后的所有数据作为检索结果。本发明专利技术通过提供一种基于高维数据的大规模相似性检索方法及系统,可以大大提高检索的准确度和时间效率。

【技术实现步骤摘要】
大规模高维数据快速检索方法及系统
本专利技术涉及计算机数据管理
,更具体地,涉及大规模高维数据快速检索方法及系统。
技术介绍
随着互联网的飞速发展,大规模高维度数据在搜索引擎和社会网络中越来越普遍,也吸引了越来越多的关注。随着互联网上多媒体资源的不断增加,如何从大规模高维数据中快速、有效的查找到相关的数据,无论是在时间上还是空间上都是一个极大的考验。现有技术中,通常采用如下方法实现大规模高纬度数据的查找和检索,即步骤1,采用初始化检索方法对高维数据库点集,建立初始化索引,并建立所述高维数据库点集的最近邻表;步骤2,根据初始化索引,获得待检索数据点在所述高维数据库点集中的若干个最邻近点,若干个最邻近点构成初始候选点集;步骤3,构造临时点集,针对初始候选点集中的每个数据点,在最近邻表中查询该数据点的若干个近邻点,并将查到的各近邻点以及初始候选点添加至临时点集中;步骤4,计算临时点集中所有数据点与待检索数据点的距离,将距离最小的若干个数据点作为新的候选点集;步骤5,将新的候选点集作为初始候选点集;步骤6,重复步骤3~步骤5,直至候选点集中的数据点不再更新或者迭代次数达到预定值,输出候选点集中距离待检索数据点最近的若干数据点作为近似最近邻数据点进行。但是,在现有的大规模高纬度数据的查找和检索方法中,仅能在一定程度上对高维数据进行压缩,却不能进行有效剪枝,使得检索实现的检索精度与效率均不高。
技术实现思路
为克服上述问题或者至少部分地解决上述问题,本专利技术提供了一种大规模高维数据快速检索方法及系统。一方面,本专利技术提供了一种大规模高维数据快速检索方法,包括:S1,基于训练后的乘积量化单元,获取待检索数据对应的二进制码,所述二进制码用于确定与所述待检索数据距离最近的聚类中心;S2,将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中,获取预设数据库中与所述待检索数据距离最小的数据构成的集合;S3,根据所述集合中每一数据与所述待检索数据的距离大小,对所述集合中的所有数据进行排序,并将排序后的所有数据作为检索结果。优选地,所述方法还包括:将训练样本集输入至乘积量化单元,基于乘积量化损失函数对所述乘积量化单元进行训练,以得到与所述训练样本集中每一训练样本对应的二进制码。优选地,所述方法还包括:基于训练后的乘积量化单元,获取所述乘积量化单元中的聚类中心矩阵;相应地,所述将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中之前,还包括:获取所述预设数据库中的所有数据并分别输入至所述训练后的乘积量化单元,得到每一数据对应的二进制码;基于得到的每一数据对应的二进制码,分别获取所述预设数据库中与所述聚类中心矩阵中每一聚类中心距离最小的数据;基于获取到的所有数据及对应的二进制码,构建与所述乘积量化单元匹配的多重倒排索引单元。优选地,所述乘积量化损失函数具体通过如下公式计算:其中,所述Q为乘积量化损失函数,zi为所述训练样本集中第i个训练样本,N为所述训练样本集中训练样本的数量,C为所述聚类中心矩阵,hi为与zi对应的二进制码。优选地,S1具体包括:将所述待检索数据输入至所述训练后的乘积量化单元,所述训练后的乘积量化单元基于乘积量化算法,将所述待检索数据在每一低维子空间中的所有分量量化至所述每一低维子空间对应的聚类中心中;确定与所述待检索数据的每一分量距离最近的聚类中心,并采用二进制码进行标记。优选地,每一聚类中心对应一数据桶,所述数据桶中包含有与所述数据桶对应的聚类中心距离最小的所有数据;相应地,S2中所述获取预设数据库中与所述待检索数据距离最小的数据构成的集合,具体包括:S21,基于所述预设数据库中与所述待检索数据的每一低维子空间对应的聚类中心距离最小的聚类中心,确定预设数量个聚类中心组;S22,获取所述预设数量个聚类中心组中每一聚类中心对应的数据桶,并提取所有数据桶中的数据,以获取所述预设数据库中与所述待检索数据距离最小的数据构成的集合。优选地,S21具体包括:S211,将所述待检索数据所属的聚类中心组成首个聚类中心组;S212,将与所述待检索数据的每一低维子空间对应的聚类中心距离最小的聚类中心均放入优先队列中;S213,从所述优先队列中的所有聚类中心中选取一对应最小距离的聚类中心,若判断获知选取的聚类中心对应于低维子空间m,则将所述首个聚类中心组中低维子空间m对应的聚类中心替换为所述选取的聚类中心,并将替换后的所述首个聚类中心组作为第二聚类中心组;S214,将低维子空间m中对应的、且未放入所述优先队列的、与所述聚类中心距离最小的聚类中心放入优先队列中,重复执行S213,直至得到的聚类中心组达到预设数量。另一方面,本专利技术还提供了一种大规模高维数据快速检索系统,包括:量化模块,用于基于训练后的乘积量化单元,获取待检索数据对应的二进制码,所述二进制码用于确定与所述待检索数据距离最近的聚类中心;剪枝模块,用于将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中,获取预设数据库中与所述待检索数据距离最小的数据构成的集合;检索模块,用于根据所述集合中每一数据与所述待检索数据的距离大小,对所述集合中的所有数据进行排序,并将排序后的所述数据作为检索结果。优选地,所述系统还包括:训练模块,用于将训练样本集输入至乘积量化单元,基于乘积量化损失函数对所述乘积量化单元进行训练,以得到与所述训练样本集中每一训练样本对应的二进制码。另一方面,本专利技术还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述的方法。本专利技术提供了一种基于乘积量化与多重倒排索引的大规模高维数据近似近邻检索方法及系统,包括基于训练后的乘积量化单元,获取待检索数据对应的二进制码;将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中,获取预设数据库中与所述待检索数据距离最小的数据构成的集合;根据所述集合中每一数据与所述待检索数据的距离大小,对所述集合中的所有数据进行排序,并将排序后的所有数据作为检索结果。本专利技术通过提供一种基于高维数据的大规模相似性检索方法,可以大大提高检索的准确度和时间效率。本专利技术提供的基于非结构化数据的大规模近似近邻检索系统,通过在深度表征学习基础上将乘积量化误差最小化,显著提高了待检索数据的可量化性,从而大大提高检索的准确度和时间效率。附图说明图1为本专利技术一实施例提供的一种大规模高维数据快速检索方法的流程示意图;图2为本专利技术一实施例提供的一种大规模高维数据快速检索方法的总体架构示意图;图3为本专利技术一实施例提供的一种大规模高维数据快速检索方法的总体流程示意图;图4为本专利技术一实施例提供的一种大规模高维数据快速检索系统的结构示意图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。如图1所示,本专利技术一实施例提供了一种大规模高维数据快速检索方法,包括:S1,基于训练后的乘积量化单元,获取待检索数据对应的二进制码,所述二进制码用于确定与所述待检索数据距离最近的聚类中心;S2,将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中,获取预设数据库本文档来自技高网...
大规模高维数据快速检索方法及系统

【技术保护点】
一种高维数据检索方法,其特征在于,包括:S1,基于训练后的乘积量化单元,获取待检索数据对应的二进制码;S2,将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中,获取预设数据库中与所述待检索数据距离最小的数据构成的集合;S3,根据所述集合中每一数据与所述待检索数据的距离大小,对所述集合中的所有数据进行排序,并将排序后的所有数据作为检索结果。

【技术特征摘要】
1.一种高维数据检索方法,其特征在于,包括:S1,基于训练后的乘积量化单元,获取待检索数据对应的二进制码;S2,将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中,获取预设数据库中与所述待检索数据距离最小的数据构成的集合;S3,根据所述集合中每一数据与所述待检索数据的距离大小,对所述集合中的所有数据进行排序,并将排序后的所有数据作为检索结果。2.根据权利要求1所述的方法,其特征在于,还包括:将训练样本集输入至乘积量化单元,基于乘积量化损失函数对所述乘积量化单元进行训练,以得到与所述训练样本集中每一训练样本对应的二进制码。3.根据权利要求1所述的方法,其特征在于,还包括:基于训练后的乘积量化单元,获取所述乘积量化单元中的聚类中心矩阵;相应地,所述将所述二进制码输入至与所述训练后的乘积量化单元匹配的多重倒排索引单元中之前,还包括:获取所述预设数据库中的所有数据并分别输入至所述训练后的乘积量化单元,得到每一数据对应的二进制码;基于得到的每一数据对应的二进制码,分别获取所述预设数据库中与所述聚类中心矩阵中每一聚类中心距离最小的数据;基于获取到的所有数据及对应的二进制码,构建与所述乘积量化单元匹配的多重倒排索引单元。4.根据权利要求2所述的方法,其特征在于,所述乘积量化损失函数具体通过如下公式计算:其中,所述Q为乘积量化损失函数,zi为所述训练样本集中第i个训练样本,N为所述训练样本集中训练样本的数量,C为所述聚类中心矩阵,hi为与zi对应的二进制码。5.根据权利要求3所述的方法,其特征在于,每一聚类中心对应一数据桶,所述数据桶中包含有与所述数据桶对应的聚类中心距离最小的所有数据;相应地,S2中所述获取预设数据库中与所述待检索数据距离最小的数据构成的集合,具体包括:S21,基于所述预设数据库中与所述待检索数据的每一低维子空间对应的聚类中心距离最小的聚类中心,确定预设数量个聚类中心组;S22...

【专利技术属性】
技术研发人员:王建民龙明盛曹越刘斌
申请(专利权)人:清华大学
类型:发明
国别省市:北京,11

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

1