检索方法、装置、设备及系统与流程
本技术涉及人工智能领域,尤其涉及一种检索方法、装置、设备及系统。
背景技术:
1、目前,随着大数据技术的广泛应用,数据规模越来越大。例如,数据规模主要体现在数据量和数据维度。随着数据规模增加,数据存储消耗大量的存储空间。通常,为了节省存储空间,将数据转换为低精度数据,以减少数据的数据量,则降低了占用的存储空间。例如,将高精度的浮点数转换为低精度的整型数据。但是,在低精度数据中检索目标数据导致检索精度低。此外,在数据规模较大的情况下,低精度数据仍然会占用较大的存储空间。
技术实现思路
1、本技术提供了一种检索方法、装置、设备及系统,提升了检索精度,减少数据所占用的存储空间。
2、第一方面,提供了一种检索方法,包括:获取检索请求,检索请求包括查询数据,对数据集的编码后数据解码得到解码后数据,根据解码后数据与码本的映射关系确定解码后数据对应的多个聚类中心,根据查询数据对解码后数据对应的多个聚类中心检索,得到检索结果。检索结果包括至少一个聚类中心对应的数据。其中,数据集的编码后数据根据多个聚类中心对数据集包含的多条数据进行量化并编码得到,码本用于指示多个聚类中心。
3、本技术提供的方法由于多个聚类中心是根据数据集中多条数据的特征得到,根据多个聚类中心对数据进行量化并编码,则编码后数据也保留了数据集的特征。在确保数据精度的情况下,减少编码后数据所占用的存储空间。在获取到检索请求后,对编码后数据进行解码,依据解码后数据与码本的映射关系确定解码后数据对应的多个聚类中心,从而,确保了还原的数据集的数据精度。根据检索请求包括的查询数据对解码后数据对应的多个聚类中心检索,得到检索结果。由于多个聚类中心包含了数据集的特征,在多个聚类中心中进行检索,提高了检索精度。
4、在一种可能的实现方式中,根据解码后数据与码本的映射关系确定解码后数据对应的多个聚类中心,包括:根据解码后数据与码本的数位对应关系,从码本中确定解码后数据对应的多个聚类中心。
5、通过数位对应关系从码本中查找解码后数据对应的多个聚类中心,确保能够准确还原数据,提升检索精度。
6、在另一种可能的实现方式中,条件约束用于指示多个聚类中心的关系,根据解码后数据与码本的数位对应关系从码本中确定解码后数据对应的多个聚类中心,包括:根据解码后数据与码本的数位对应关系确定解码后数据对应的码本中的数据,根据条件约束和解码后数据对应的码本中的数据确定解码后数据对应的多个聚类中心。
7、根据条件约束,将解码后数据对应的码本中的数据还原为聚类中心,确保能够准确还原数据,提高了检索精度。
8、在另一种可能的实现方式中,根据解码后数据与码本的映射关系确定解码后数据对应的多个聚类中心,包括:根据解码后数据中每个维度的数据与码本的映射关系,确定解码后数据对应的多个聚类中心。
9、通过以粒度更小的维度为单位,使解码后数据中每个维度的数据还原为与该维度中相似度较高的聚类中心,增加了确定的聚类中心的准确性,从而提升了检索精度。
10、在另一种可能的实现方式中,对数据集的编码后数据解码得到解码后数据,包括:对数据集的编码后数据进行二进制解码,得到解码后数据。
11、对编码后数据进行二进制解码,得到二进制数据,便于从二进制数据中按位选择数据,根据与码本之间的映射关系确定聚类中心。
12、在另一种可能的实现方式中,对数据集的编码后数据进行二进制解码,得到中间数据,对中间数据的相邻位数据合并,得到解码后数据。
13、将二进制解码得到的中间数据的相邻位数据合并,合并后的相邻位作为同一维度,便于从同一维度的码本中确定聚类中心,使确定的聚类中心更加准确,提高了检索精度。
14、第二方面,提供了一种数据编码方法,方法包括根据数据集包含的多条数据的特征确定多个聚类中心,根据多个聚类中心对数据集包含的多条数据量化,得到多条数据的量化值,对多条数据的量化值编码,得到数据集的编码后数据,数据集的编码后数据用于在检索时依据码本还原数据集,码本用于指示多个聚类中心。
15、本技术提供的方法由于多个聚类中心是根据数据集中多条数据的特征得到,根据多个聚类中心对数据进行量化并编码,则编码后数据也保留了数据集的特征。在确保数据精度的情况下,减少编码后数据所占用的存储空间。
16、在另一种可能的实现方式中,对多条数据的量化值编码,得到数据集的编码后数据,包括:以聚类中心数量为单位将多条数据的量化值划分为多组量化值,对多组量化值编码,得到数据集的编码后数据。
17、通过对多组量化值中的每组量化值进行编码,为每组量化值得到编码后数据,每组量化值的编码后数据占用的存储空间为每组量化值中的每个量化值占用的存储空间,减少了存储空间的占用。
18、例如,多组量化值中的每组量化值包含k个量化值,每组量化值中每个量化值占用的存储空间为n,每组量化值占用的存储空间为n*k。每组量化值的编码后数据占用的存储空间为n,相较于每组量化值占用的存储空间n*k,每组量化值的编码后数据占用的存储空间减少至每组量化值占用的存储空间的1/k。
19、又如,数据集包含的多条数据的维度为dim,数量为n,数据规模为n*dim。假设聚类中心数量为k,数据集的编码后数据的维度为dim/k,数据规模为n*dim/k,编码后数据占用的存储空间为数据集的1/k。
20、在另一种可能的实现方式中,多个聚类中心满足条件约束,条件约束用于指示多个聚类中心的关系。
21、通过对聚类中心设置条件约束,以便于在解码时根据条件约束将解码后的数据还原为聚类中心,得到更加准确的聚类中心,提高了检索精度。
22、在另一种可能的实现方式中,根据多个聚类中心对数据集包含的多条数据量化,得到多条数据的量化值,包括:根据每条数据与多个聚类中心的相似度确定每条数据的量化值,得到多条数据的量化值。
23、在另一种可能的实现方式中,根据每条数据与多个聚类中心的相似度确定每条数据的量化值,得到多条数据的量化值,包括:根据每条数据中每个维度的数据与每个维度对应的多个聚类中心的相似度确定每条数据的量化值,得到多条数据的量化值。
24、在另一种可能的实现方式中,根据映射关系与多个聚类中心生成码本。
25、通过为多条数据生成码本,以便于在检索时根据解码后数据与码本的映射关系确定多个聚类中心,增加了确定的聚类中心的准确性,提高了检索精度。
26、在另一种可能的实现方式中,对多条数据的量化值编码,得到数据集的编码后数据,包括:对多条数据的量化值二进制编码,得到数据集的编码后数据。
27、通过对每条数据的量化值进行二进制编码,为每条数据得到编码后数据,编码后数据相比于量化值减少了存储空间的占用。
28、在另一种可能的实现方式中,数据集包含的多条数据是根据数据集中原数据确定的残差数据。
29、残差数据相比于原数据包含了更多的局部信息,使得根据残差数据得到的编码后数据的信息损失减少,提高了检索精度。
30、在另一种可能的实现方式中,将数据集的原数据聚类得到两个以上簇,根据每个簇中的数据与簇的中心的关系,将数据集的原数据转换为残差数据。
31、每个簇中的数据包含了原数据的局部信息特征。簇中心是所在簇中的代表性数据,反映了簇内数据的特征。通过每个簇中的数据与簇中心的关系得到的残差数据,保留了原数据包含的局部信息特征,提高了检索精度
32、第三方面,提供了一种检索装置,检索装置包括用于执行第一方面或第一方面任一种可能设计中的方法中的各个模块。例如,检索装置包括通信模块、解码模块和检索模块。
33、通信模块,用于获取检索请求,检索请求包括查询数据。解码模块,用于对数据集的编码后数据解码得到解码后数据,根据解码后数据与码本的映射关系确定解码后数据对应的多个聚类中心,数据集的编码后数据根据多个聚类中心对数据集包含的多条数据进行量化并编码得到,码本用于指示多个聚类中心的关系。检索模块,用于根据查询数据对解码后数据对应的多个聚类中心检索,得到检索结果,检索结果包括至少一个聚类中心对应的数据。
34、在一种可能的实现方式中,解码模块根据解码后数据与码本的映射关系确定解码后数据对应的多个聚类中心时,具体用于根据解码后数据与码本的数位对应关系,从码本中确定解码后数据对应的多个聚类中心。
35、在另一种可能的实现方式中,解码模块根据解码后数据与码本的数位对应关系从码本中确定解码后数据对应的多个聚类中心时,具体用于根据解码后数据与码本的数位对应关系确定解码后数据对应的码本中的数据,根据条件约束和解码后数据对应的码本中的数据确定解码后数据对应的多个聚类中心。其中,条件约束用于指示多个聚类中心的关系。
36、在另一种可能的实现方式中,解码模块根据解码后数据与码本的映射关系确定多个聚类中心时,具体用于根据解码后数据中每个维度的数据与码本的映射关系,确定解码后数据对应的多个聚类中心。
37、在另一种可能的实现方式中,解码模块对数据集的编码后数据解码得到解码后数据时,具体用于对数据集的编码后数据进行二进制解码,得到解码后数据。
38、在另一种可能的实现方式中,解码模块对数据集的编码后数据进行二进制解码,得到中间数据,对中间数据的相邻位数据合并,得到解码后数据。
39、第四方面,提供了一种编码装置,编码装置包括用于执行第二方面或第二方面任一种可能设计中的方法中的各个模块。例如,编码装置包括量化模块和编码模块。
40、量化模块,用于根据数据集包含的多条数据的特征确定多个聚类中心。量化模块,还用于根据多个聚类中心对数据集包含的多条数据量化,得到多条数据的量化值。编码模块,用于对多条数据的量化值编码,得到数据集的编码后数据,数据集的编码后数据用于在检索时依据码本还原数据集,码本用于指示多个聚类中心。
41、在一种可能的实现方式中,编码模块对多条数据的量化值编码,得到数据集的编码后数据时,具体用于以聚类中心数量为单位将多条数据的量化值划分为多组量化值,对多组量化值编码,得到数据集的编码后数据。
42、在另一种可能的实现方式中,多个聚类中心满足条件约束,条件约束用于指示多个聚类中心的关系。
43、在另一种可能的实现方式中,量化模块根据多个聚类中心对数据集包含的多条数据量化,得到多条数据的量化值时,具体用于根据每条数据与多个聚类中心的相似度确定每条数据的量化值,得到多条数据的量化值。
44、在另一种可能的实现方式中,量化模块根据每条数据与多个聚类中心的相似度确定每条数据的量化值,得到多条数据的量化值时,具体用于根据每条数据中每个维度的数据与每个维度对应的多个聚类中心的相似度确定每条数据的量化值,得到多条数据的量化值。
45、在另一种可能的实现方式中,编码模块还用于根据映射关系与多个聚类中心生成码本。
46、在另一种可能的实现方式中,编码模块对多条数据的量化值编码,得到数据集的编码后数据时,具体用于对多条数据的量化值二进制编码,得到数据集的编码后数据。
47、在另一种可能的实现方式中,数据集包含的多条数据是根据数据集中原数据确定的残差数据。
48、在另一种可能的实现方式中,数据集包含的多条数据是根据数据集中原数据确定的残差数据时,编码模块具体用于将数据集的原数据聚类得到两个以上簇,根据每个簇中的数据与簇的中心的关系,将数据集的原数据转换为残差数据
49、第五方面,提供了一种检索系统,该检索系统用于执行第一方面或第一方面任一种可能实现方式中方法的操作步骤,对编码后数据解码得到解码后数据,根据解码后数据确定解码后数据对应的多个聚类中心,对解码后数据对应的多个聚类中心检索,得到检索结果。该检索系统还用于执行第二方面或第二方面任一种可能实现方式中方法的操作步骤,根据数据集包含的多条数据的特征确定多个聚类中心,根据多个聚类中心对数据集包含的多条数据量化,得到多条数据的量化值,对多条数据的量化值编码,得到数据集的编码后数据。
50、第六方面,提供了一种计算机设备,计算机设备包括存储器和多个处理器,存储器用于存储一组计算机指令;当处理器执行一组计算机指令时,多个处理器联合执行第一方面或第一方面任一种可能实现方式中方法的操作步骤,或者,执行第二方面或第二方面任一种可能实现方式中方法的操作步骤。
51、第七方面,提供了一种计算机可读存储介质,包括:计算机软件指令;当计算机软件指令在处理器中运行时,使得处理器执行如第一方面或第一方面任意一种可能的实现方式中方法的操作步骤。或者,执行第二方面或第二方面任一种可能实现方式中方法的操作步骤。
52、第八方面,提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面或第一方面任意一种可能的实现方式中方法的操作步骤,或者,执行第二方面或第二方面任一种可能实现方式中方法的操作步骤。
53、第二方面至第八方面中任一种设计方式所带来的技术效果可参见第一方面或第一方面中不同设计方式所带来的技术效果,此处不再赘述。
54、本技术在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com