【技术实现步骤摘要】
数据查询方法、装置、系统、设备和介质
[0001]本公开涉及人工智能
,具体涉及一种数据查询方法、数据查询装置、数据查询系统、电子设备、计算机可读存储介质和计算机程序产品。
技术介绍
[0002]深度学习的突破使非结构化数据能够被表示为高维特征向量,以服务于广泛的应用。在大型非结构化数据集(具有数十亿项)上进行的高维特征向量的查询具有挑战性,因为难以同时保证低延迟和准确性。因此,近似最近邻搜索(Approximate Nearest Neighbor,ANN)应运而生。
[0003]在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非另有指明,否则此部分中提及的问题不应认为在任何现有技术中已被公认。
技术实现思路
[0004]本公开提供了一种数据查询方法、数据查询装置、数据查询系统、电子设备、计算机可读存储介质和计算机程序产品。
[0005]根据本公开的一方面,提供了一种数据查询方法,用于在数据集中查询与查询数据相似度最高的目标数量的样本数据。该方法包括:获取目标终止条件,目标终止条件包括目标准确率和/或目标时延;基于查询数据和Y个子数据集中的每一个子数据集的相似度,确定Y个子数据集各自的排名,其中,Y个子数据集是根据数据集中的样本数据之间的相似度对样本数据进行划分得到的,每一个子数据集包括数据集中与该子数据集对应的至少一个样本数据,其中,Y为大于1的正整数;将Y个子数据集中的 ...
【技术保护点】
【技术特征摘要】
1.一种数据查询方法,用于在数据集中查询与查询数据相似度最高的目标数量的样本数据,所述方法包括:获取目标终止条件,所述目标终止条件包括目标准确率和/或目标时延;基于查询数据和Y个子数据集中的每一个子数据集的相似度,确定所述Y个子数据集各自的排名,其中,所述Y个子数据集是根据所述数据集中的样本数据之间的相似度对所述样本数据进行划分得到的,每一个所述子数据集包括所述数据集中与该子数据集对应的至少一个样本数据,并且Y为大于1的正整数;将所述Y个子数据集中的排名最高的前Z个未处理过的子数据集作为当前子数据集并对所述当前子数据集进行处理,直至当前查询指标中至少部分指标满足目标终止条件,其中,Z为小于Y的正整数,所述处理包括:在所述当前子数据集所包括的样本数据中,确定与所述查询数据的相似度最高的至少一个样本数据以更新中间结果,更新后的中间结果中包括排名不低于所述当前子数据集的子数据集所包括的样本数据中,与所述查询数据的相似度最高的目标数量的候选数据;以及基于更新后的中间结果确定当前查询指标,所述当前查询指标包括准确率,所述准确率指示对更新后的中间结果中的候选数据在目标结果中所占比例的预测结果,所述目标结果为对所有所述子数据集都进行所述处理后所得的更新后的中间结果;将更新后的中间结果作为查询结果。2.根据权利要求1所述的方法,其中,基于更新后的中间结果确定所述当前查询指标包括:确定更新后的中间结果中的至少一个候选数据的预测排名,所述预测排名指示在所述目标结果中,对应的候选数据与所述查询数据的相似度的排名的预测结果;以及基于预测排名的值不大于所述目标数量的候选数据的数量和所述目标数量,确定所述准确率。3.根据权利要求2所述的方法,其中,所述Y个子数据集各自具有不重叠的对应的空间范围,每一个所述样本数据和所述查询数据各自具有对应的空间位置,其中,更新后的中间结果中的每一个候选数据对应有该候选数据在更新后的中间结果中的中间排名,所述中间排名是根据该候选数据与所述查询数据的相似度确定的,其中,确定更新后的中间结果中的至少一个候选数据的预测排名,包括:在更新后的中间结果中确定目标候选数据,对于所述目标候选数据,执行以下操作,直至所述更新后的中间结果中所有的候选数据均作为过目标候选数据或满足结束条件:根据所述查询数据的空间位置、所述目标候选数据的空间位置、以及所述Y个子数据集各自的空间范围对应的空间特征,确定比例因子;以及根据所述目标候选数据的中间排名和比例因子,确定所述目标候选数据的预测排名,其中,所述结束条件包括所述目标候选数据的预测排名不大于所述目标数量且为所述更新后的中间结果所包括的候选数据的预测排名中的最大值。4.根据权利要求3所述的方法,其中,从更新后的中间结果中确定目标候选数据,包括:按照更新后的中间结果中候选数据的中间排名由低到高或由高到低的顺序,依次将更新后的中间结果中各候选数据确定为目标候选数据;
或者,根据二分搜索法,从更新后的中间结果中确定目标候选数据。5.根据权利要求3或4所述的方法,其中,与所述目标候选数据对应的第一空间范围的中心为所述查询数据的空间位置,并且所述目标候选数据的空间位置位于所述第一空间范围的边缘,其中,第二空间范围为排名不低于所述当前子数据集的至少一个候选子数据集对应的空间范围和所述第一空间范围的交集,其中,根据所述查询数据的空间位置、所述目标候选数据的空间位置、以及所述Y个子数据集各自的空间范围对应的空间特征,确定比例因子包括:确定所述第一空间范围的体积;确定所述第二空间范围的体积;以及将所述第一空间范围的体积和所述第二空间范围的体积的比值确定为比例因子。6.根据权利要求5所述的方法,其中,至少一个第三空间范围中的每一个第三空间范围为排名高于所述当前子数据集的一个其他子数据集对应的空间范围和所述第一空间范围的交集,其中,确定所述第二空间范围的体积包括:确定所述至少一个第三空间范围各自的体积;以及基于所述第一空间范围的体积与所述至少一个第三空间范围的体积总和的差值,确定所述第二空间范围的体积。7.根据权利要求6所述的方法,其中,确定所述至少一个第三空间范围各自的体积包括:确定所述查询数据的空间位置到每一个所述第三空间范围的最短空间距离;基于每一个所述第三空间范围对应的最短空间距离与所述查询数据的空间位置到所述目标候选数据的空间位置之间的空间距离的比值的反余弦值,估计该第三空间范围的体积。8.根据权利要求5
‑
7任一项所述的方法,其中,所述第一空间范围为以所述查询数据的空间位置为球心,以所述查询数据的空间位置和所述目标候选数据的空间位置之间的空间距离为半径的球。9.根据权利要求1
‑
8任一项所述的方法,其中,所述数据集是通过将中间数据集中的中间数据映射到单位球上而得到的,其中,所述数据集中的第一样本数据和第二样本数据在所述单位球上的球面距离指示所述中间数据集中与所述第一样本数据和所述第二样本数据分别对应的第一中间数据和第二中间数据的内积。10.根据权利要求1
‑
9任一项所述的方法,其中,在所述当前子数据集所包括的样本数据中,确定与所述查询数据的相似度最高的至少一个样本数据以更新所述中间结果包括:针对所述当前子数据集所包括的每一个样本数据,响应于确定该样本数据与所述查询数据的相似度高于当前的中间结果中的每一个候选数据与所述查询数据的相似度,使用该样本数据替换当前的中间结果中的与查询数据的相似度最低的候选数据。11.根据权利要求1
‑
10中任一项所述的方法,其中,获取目标终止条件包括:接收所述目标准确率和/或所述目标时延,所述目标准确率和/或所述目标时延是基于用户输入的,
其中,当前查询指标中至少部分指标满足目标终止条件包括:所述当前查询指标中的准确率大...
【专利技术属性】
技术研发人员:金鑫,刘譞哲,章梓立,马郓,陈卓,田昕晖,刘勤,汤林鹏,
申请(专利权)人:墨奇科技北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。