System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据处理领域,特别涉及一种嵌入向量的处理方法、系统及设备。
技术介绍
1、目前,随着人工智能技术的迅速发展,高维嵌入向量在自然语言处理以及计算机视觉等多种领域中扮演着核心角色;因此为了适应技术的迅速发展,高维嵌入向量在存储上也迎来了巨大的挑战。
2、现有的针对高维嵌入向量的量化技术,包括均匀量化方法和矢量量化方法,虽然在一定程度上能够减少数据的存储需求,但是这种量化技术往往忽视了数据的内在结构和相关性,导致量化后信息大幅度损失。
3、因此亟需一种既能有效压缩数据体积,又能保留数据特征结构的嵌入向量的处理方法以解决上述技术问题。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种嵌入向量的处理方法、系统、设备及介质,以解决上述技术问题。
2、第一方面,本申请提供一种嵌入向量的处理方法,方法包括:
3、获取待存储嵌入向量并对所述待存储嵌入向量进行二进制量化,以生成所述待存储嵌入向量对应的本义向量;
4、对所述待存储嵌入向量进行序列方向性量化,以生成所述待存储嵌入向量对应的相邻向量;
5、根据所述待存储嵌入向量对应的本义向量以及相邻向量生成与所述待存储嵌入向量匹配的目标嵌入向量;
6、存储所述目标嵌入向量以生成向量数据库。
7、在一些实施例中,所述对所述待存储嵌入向量进行二进制量化,以生成所述待存储嵌入向量对应的本义向量包括:
8、对所述待存储嵌入向量进行单位化处
9、根据所述待处理单位向量内包含的向量元素的符号,确定所述待处理单位向量内每一向量维度对应的第一编码值;
10、根据所述待处理单位向量内每一维度对应的第一编码值,确定与所述待处理单位向量匹配的待存储嵌入向量的本义向量。
11、在一些实施例中,所述对所述待存储嵌入向量进行二进制量化,以生成所述待存储嵌入向量对应的本义向量,还包括:
12、对包含至少一个所述待存储嵌入向量的原始向量集进行数据分组,并获取每一分组对应的中介向量;
13、在每一分组内,比较所述中介向量与所述待存储嵌入向量在相同向量维度下的数值;
14、若相同向量维度下,所述待存储嵌入向量对应的数值大于所述中介向量对应的数值,则记录所述待存储嵌入向量在所述向量维度下的第一编码值为1;
15、若相同向量维度下,所述待存储嵌入向量对应的数据小于等于所述中介向量对应的数值,则记录所述待存储嵌入向量在所述向量维度下的第一编码值为0;
16、根据所述待存储嵌入向量的每一向量维度对应的第一编码值,生成所述待存储嵌入向量对应的本义向量。
17、在一些实施例中,所述对所述待存储嵌入向量进行序列方向性量化,以生成所述待存储嵌入向量对应的相邻向量,包括:
18、顺序读取所述待存储嵌入向量中的所有向量维度的数值;
19、比较当前向量维度的数值与当前向量维度的下一个向量维度的数值的大小;
20、如果当前向量维度的数值小于等于当前向量维度的下一个向量维度的数值,则记录所述待存储嵌入向量在当前向量维度下的第二编码值为1;
21、如果当前向量维度的数值大于当前向量维度的下一个向量维度的数值,则记录所述待存储嵌入向量在当前向量维度下的第二编码值为0;
22、汇总记录到的所述待存储嵌入向量的每一向量维度对应的第二编码值;
23、根据汇总后的所述待存储嵌入向量的每一向量维度对应的第二编码值,生成所述待存储嵌入向量对应的相邻向量;
24、其中,所述第二编码值利用二进制数值表示所述待存储嵌入向量的维度变化方向。
25、在一些实施例中,所述方法还包括:
26、若所述当前向量维度为所述待存储向量的末端向量维度,则比较所述末端向量维度的数值与所述待存储向量的首端向量维度的数值;
27、若所述末端向量维度的数值小于等于所述待存储向量的首端向量维度的数值,则记录所述末端向量维度的第二编码值为1,反之,则记录所述末端向量维度的第二编码值为0。
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、第五方面,本申请还提供了一种计算机可读存储介质,存储介质上存储计算机程序,计算机程序使得计本文档来自技高网...
【技术保护点】
1.一种嵌入向量的处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对所述待存储嵌入向量进行二进制量化,以生成所述待存储嵌入向量对应的本义向量包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述待存储嵌入向量进行二进制量化,以生成所述待存储嵌入向量对应的本义向量,还包括:
4.根据权利要求3所述的方法,其特征在于,所述对所述待存储嵌入向量进行序列方向性量化,以生成所述待存储嵌入向量对应的相邻向量,包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述存储所述目标嵌入向量以生成向量数据库,包括:
7.根据权利要求1-6任意一项所述的嵌入向量的处理方法,其特征在于,所述方法还包括:
8.一种嵌入向量的处理系统,其特征在于,所述系统包括:
9.一种电子设备,其特征在于,所述电子设备包括:
10.一种计算机可读存储介质,其特征在于,其存储计算机程序,所述计算机程序使得计算机执行权利
...【技术特征摘要】
1.一种嵌入向量的处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对所述待存储嵌入向量进行二进制量化,以生成所述待存储嵌入向量对应的本义向量包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述待存储嵌入向量进行二进制量化,以生成所述待存储嵌入向量对应的本义向量,还包括:
4.根据权利要求3所述的方法,其特征在于,所述对所述待存储嵌入向量进行序列方向性量化,以生成所述待存储嵌入向量对应的相邻向量,包括:
5.根据权利...
【专利技术属性】
技术研发人员:秦朝阳,魏健,
申请(专利权)人:苏州元脑智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。