一种数据检索方法、装置、设备及存储介质与流程

文档序号:35027524发布日期:2023-08-05 14:50阅读:27来源:国知局
一种数据检索方法、装置、设备及存储介质与流程

本申请涉及数据处理,尤其涉及一种数据检索方法、装置、设备及存储介质。


背景技术:

1、目前,大数据搜索在多种应用场景中存在广泛应用,如听歌识曲、论文查重、病毒特征匹配等,能够从海量的数据中搜索出与目标数据之间相似度较高的数据。具体实现时,在实现大数据检索服务之前,通常会将海量的数据转化为文本数据,并根据该文本数据构建倒排索引。这样,在进行数据检索时,可以利用该倒排索引从数据库中查找出与待查询的目标数据相似度较高的数据。

2、但是,基于倒排索引检索数据的复杂度通常随着数据量的增加而线性增加,因此,在海量数据的检索场景下,数据检索性能较低,如检索时延较长等。


技术实现思路

1、有鉴于此,本申请实施例提供了一种数据检索方法,以提高数据检索性能。本申请还提供了对应的装置、计算设备、计算机可读存储介质以及计算机程序产品。

2、第一方面,本申请实施例提供了一种数据检索方法,具体实现时,获取待检索数据,该待检索数据包括文本数据、图像数据、音频数据、视频数据中的任意一种,然后对该待检索数据进行哈希运算,得到该待检索数据对应的向量化表示,从而根据该待检索数据对应的向量化表示,从数据库中查找出目标数据,该目标数据对应的向量化表示与待检索数据对应的向量化表示相匹配。

3、如此,相对于利用倒排索引检索数据的方式而言,通过向量检索的方式可以有效降低检索过程的耗时,从而可以有效提高数据检索效率。并且,存储数据对应的向量化表示与存储倒排索引所需占用的存储空间较少,从而可以有效降低对于存储资源的要求。另外,针对文本、图像、音频、视频等任意类型的待检索数据,均可以采用向量检索的方式搜索出与该待检索数据相似的目标数据,从而可以提高数据检索的普适性以及灵活性。

4、在一种可能的实施方式中,待检索数据对应的向量化表示包括二值序列,该二值序列中的各个字符的取值为0或者1。如此,通过将二值序列作为待检索数据对应的向量化表示,可以有效降低向量维度,从而可以进一步提高数据检索的效率。

5、在一种可能的实施方式中,在对待检索数据进行哈希运算时,具体可以是先利用模糊哈希算法对待检索数据进行哈希运算,得到该待检索数据对应的字符串序列,然后再利用局部敏感哈希算法对该字符串序列进行哈希运算,得到该待检索数据对应的二值序列。如此,通过对待检索数据进行双重哈希运算,可以得到该待检索数据的向量化表示。

6、可选地,模糊哈希算法例如可以是ssdeep算法,局部敏感哈希算法例如可以是simhash算法等。

7、在一种可能的实施方式中,在利用局部敏感哈希算法对字符串序列进行哈希运算之前,还可以利用多个滑窗分别对字符串序列进行分词,得到多组不同的分词结果,其中,不同滑窗的大小存在差异,从而在得到待检索数据对应的二值序列的过程中,可以利用局部敏感哈希算法对字符串序列对应的多组不同的分词结果分别进行哈希运算,得到该待检索数据对应的多个不同的二值序列,也即得到待检索数据在多个维度的不同向量化特征。如此,后续可以基于待检索数据在多个维度的向量化特征进行数据搜索,有效保留了待检索数据的局部信息,以此可以提高后续进行数据搜索的准确性。

8、在一种可能的实施方式中,在根据待检索数据对应的向量化表示从数据库中查找出目标数据时,可以根据该向量化表示,利用基于图的向量搜索算法从数据库中查找出目标数据。如此,查找目标数据的时间复杂度可以降低至对数级别,从而可以有效提高数据检索效率。

9、可选地,基于图的向量搜索算法例如可以是nsw算法或者hnsw算法等。

10、在一种可能的实施方式中,还可以向预先构建数据库,具体地,先获取待写入数据,并对该待写入数据进行哈希运算,得到该待写入数据对应的向量化表示,从而可以将该待写入数据以及该待写入数据对应的向量化表示添加至数据库中。如此,通过上述对待写入数据的处理可以构建出数据库,以支持后续从该数据库中查找出与待检索数据相似的目标数据。

11、第二方面,本申请提供一种数据检索装置,所述装置包括:获取模块,用于获取待检索数据,所述待检索数据包括文本数据、图像数据、音频数据、视频数据中的任意一种;处理模块,用于对所述待检索数据进行哈希运算,得到所述待检索数据对应的向量化表示;搜索引擎,用于根据所述向量化表示,从数据库中查找出目标数据,所述目标数据对应的向量化表示与所述待检索数据对应的向量化表示相匹配。

12、在一种可能的实施方式中,所述待检索数据对应的向量化表示包括二值序列,所述二值序列中各个字符的取值为0或1。

13、在一种可能的实施方式中,所述处理模块,具体用于:利用模糊哈希算法对所述待检索数据进行哈希运算,得到所述待检索数据对应的字符串序列;利用局部敏感哈希算法对所述字符串序列进行哈希运算,得到所述待检索数据对应的二值序列。

14、在一种可能的实施方式中,所述处理模块,还用于在利用局部敏感哈希算法对所述字符串序列进行哈希运算之前,利用多个滑窗分别对所述字串符序列进行分词,得到多组不同的分词结果,其中,不同滑窗的大小存在差异;并且,所述处理模块,具体用于利用所述局部敏感算法对所述字串符序列对应的多组不同的分词结果分别进行哈希运算,得到所述待检索数据对应的多个不同的二值序列。

15、在一种可能的实施方式中,所述搜索引擎,具体用于:根据所述向量化表示,利用基于图的向量搜索算法从所述数据库中查找出目标数据。

16、在一种可能的实施方式中,所述获取模块,还用于获取待写入数据;所述处理模块,还用于对所述待写入数据进行哈希运算,得到所述待写入数据对应的向量化表示,并将所述待写入数据以及所述待写入数据对应的向量化表示添加至所述数据库中。

17、值得注意的是,第二方面提供的数据检索装置,对应于第一方面提供的数据检索方法,故第二方面以及第二方面中任一实施方式所具有的技术效果,可参见第一方面或者第一方面的相应实施方式所具有的技术效果。

18、第三方面,本申请提供一种计算设备,所述计算设备包括处理器、存储器和显示器。所述处理器、所述存储器进行相互的通信。所述处理器用于执行存储器中存储的指令,以使得计算设备执行如第一方面或第一方面的任一种实现方式中的数据检索方法。

19、第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算设备上运行时,使得计算设备执行上述第一方面或第一方面的任一种实现方式所述的数据检索方法。

20、第五方面,本申请提供了一种包含指令的计算机程序产品,当其在计算设备上运行时,使得计算设备执行上述第一方面或第一方面的任一种实现方式所述的数据检索方法。

21、本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。



技术特征:

1.一种数据检索方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述待检索数据对应的向量化表示包括二值序列,所述二值序列中各个字符的取值为0或1。

3.根据权利要求2所述的方法,其特征在于,所述对所述待检索数据进行哈希运算,得到所述待检索数据对应的向量化表示,包括:

4.根据权利要求3所述的方法,其特征在于,在利用局部敏感哈希算法对所述字符串序列进行哈希运算之前,所述方法还包括:

5.根据权利要求1至4任一项所述的方法,其特征在于,所述根据所述向量化表示,从数据库中查找出目标数据,包括:

6.根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:

7.一种数据检索装置,其特征在于,所述装置包括:

8.根据权利要求7所述的装置,其特征在于,所述待检索数据对应的向量化表示包括二值序列,所述二值序列中各个字符的取值为0或1。

9.根据权利要求8所述的装置,其特征在于,所述处理模块,具体用于:

10.根据权利要求9所述的装置,其特征在于,所述处理模块,还用于在利用局部敏感哈希算法对所述字符串序列进行哈希运算之前,利用多个滑窗分别对所述字串符序列进行分词,得到多组不同的分词结果,其中,不同滑窗的大小存在差异;

11.根据权利要求7至10任一项所述的装置,其特征在于,所述搜索引擎,具体用于:

12.根据权利要求7至11任一项所述的装置,其特征在于,

13.一种计算设备,其特征在于,包括处理器、存储器;

14.一种计算机可读存储介质,其特征在于,包括指令,当其在计算设备上运行时,使得所述计算设备执行如权利要求1至6中任一项所述的方法。


技术总结
本申请提供了一种数据检索方法,包括:获取待检索数据,该待检索数据可以是文本数据、图像数据、音频数据、视频数据中的任意一种;对该待检索数据进行哈希运算,得到该待检索数据对应的向量化表示,并根据该向量化表示,从数据库中查找出目标数据,所查找出的目标数据对应的向量化表示与该待检索数据对应的向量化表示相匹配。如此,通过向量检索的方式可以有效降低检索过程的耗时,从而可以有效提高数据检索效率。并且,针对文本、图像、音频、视频等任意类型的待检索数据,均可以采用向量检索的方式搜索出与该待检索数据相似的目标数据,从而可以提高数据检索的普适性以及灵活性。此外,本申请还提供了对应的装置、设备及存储介质。

技术研发人员:胡斐然,范静泊
受保护的技术使用者:华为云计算技术有限公司
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1