System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及向量检索,具体而言,涉及一种存算一体结构的量化参数确定方法、向量检索方法及装置。
技术介绍
1、随着信息技术的发展,向量检索可应用的场景越来越多,例如跨模态识别、人脸人体识别、模糊文本识别等均可以通过向量检索的方法实现。但是很多场景所需检索的数据量非常大,为了提高向量检索的效率,可以利用具有高密度、低功耗、快速读写等优点的存算一体结构实现向量检索,该存算一体结构包括feram(ferroelectric random accessmemory,铁电存储器)、rram(resistive random access memory,忆阻器)、flash(闪存)的存算一体结构等。
2、在基于rram结构或新型存储器的存算一体结构进行向量检索时,往往需要进行数据量化,以适应其自身的精度要求。但是在传统的量化方法中,不但只对输入数据进行量化,而且在对输入数据进行量化时,所需的量化参数也是按照经验值确定的,例如直接对输入的统计数据进行计算,取最大/小值、平均值等。因此,采用该量化方法会导致向量检索的准确率降低。
技术实现思路
1、本申请提供了一种存算一体结构的量化参数确定方法、向量检索方法及装置,能够提供一种更优的量化参数确定方法,提高向量检索的准确率。
2、具体的技术方案如下:
3、第一方面,本申请实施例提供了存算一体结构的量化参数确定方法,所述方法包括:
4、逻辑计算单元根据初始输入缩放参数和初始输入平移参数,对原始目标向量进行线性
5、数字模拟转换模块基于输入量化函数对所述线性变换后的目标向量进行量化,获得量化后的目标向量,基于权重量化函数对所述线性变换后的底库向量进行量化,获得量化后的底库向量;
6、所述逻辑计算单元结合存算一体阵列根据所述初始权重缩放参数、所述初始输入缩放参数、所述量化后的目标向量和所述量化后的底库向量,计算第一等价欧式距离,其中,所述第一等价欧式距离是根据所述初始权重缩放参数和所述初始输入缩放参数,对所述量化后的目标向量和所述量化后的底库向量的等价欧式距离进行调整后的距离,两个向量的等价欧式距离由欧式距离公式转换而成,且能够代替欧式距离评估所述两个向量之间的相似度;
7、所述逻辑计算单元根据初始输出缩放参数和初始输出平移参数对所述第一等价欧式距离进行线性变换;
8、模拟数字转换模块基于输出量化函数对线性变换后的第一等价欧式距离进行量化,获得量化后的等价欧式距离;
9、所述逻辑计算单元根据所述原始目标向量、所述初始输入平移参数、所述初始输入缩放参数、所述初始权重缩放参数、所述初始输出缩放参数、所述初始输出平移参数,对所述量化后的等价欧式距离进行还原处理,获得所述原始目标向量与所述原始底库向量之间的量化后的欧式距离;
10、所述逻辑计算单元根据原始欧式距离和所述量化后的欧式距离计算当前量化损失,其中,所述原始欧式距离为量化前的欧式距离真值;
11、所述逻辑计算单元利用最优化方法和所述当前量化损失,对所述初始输入缩放参数、所述初始输入平移参数、所述初始权重缩放参数、所述初始输出缩放参数和所述初始输出平移参数进行调整,直至所述当前量化损失小于或者等于预设损失阈值时,获得目标输入缩放参数、目标输入平移参数、目标权重缩放参数、目标输出缩放参数和目标输出平移参数。
12、在一种可能的实施方式中,所述原始欧式距离的获取方法,包括:
13、所述逻辑计算单元结合所述存算一体阵列根据所述初始权重缩放参数、所述初始输入缩放参数、所述线性变换后的目标向量和所述线性变换后的底库向量,计算第二等价欧式距离,其中,所述第二等价欧式距离是根据所述初始权重缩放参数和所述初始输入缩放参数,对所述线性变换后的目标向量和所述线性变换后的底库向量的等价欧式距离进行调整后的距离;
14、所述逻辑计算单元根据所述初始输出缩放参数和所述初始输出平移参数对所述第二等价欧式距离进行线性变换,获得线性变换后的第二等价欧式距离;
15、所述逻辑计算单元根据所述原始目标向量、所述初始输入平移参数、所述初始输入缩放参数、所述初始权重缩放参数、所述初始输出缩放参数、所述初始输出平移参数,对所述线性变换后的第二等价欧式距离进行还原处理,获得所述原始欧式距离。
16、在一种可能的实施方式中,所述逻辑计算单元结合存算一体阵列根据所述初始权重缩放参数、所述初始输入缩放参数、所述量化后的目标向量和所述量化后的底库向量,计算第一等价欧式距离,包括:
17、所述逻辑计算单元根据所述初始权重缩放参数、所述初始输入缩放参数、所述量化后的目标向量和所述量化后的底库向量,获得用于计算第一等价欧式距离所需的第一等价目标向量和第一等价底库向量,并将所述第一等价目标向量和所述第一等价底库向量发送给存算一体阵列;
18、所述存算一体阵列根据内部阵列结构对所述第一等价目标向量和所述第一等价底库向量进行内积运算,获得第一等价欧式距离。
19、在一种可能的实施方式中,所述逻辑计算单元利用最优化方法和所述当前量化损失,对所述初始输入缩放参数、所述初始输入平移参数、所述初始权重缩放参数、所述初始输出缩放参数和所述初始输出平移参数进行调整,包括:
20、所述逻辑计算单元利用非梯度优化方法和所述当前量化损失,对所述初始输入缩放参数、所述初始输入平移参数、所述初始权重缩放参数、所述初始输出缩放参数和所述初始输出平移参数进行调整。
21、第二方面,本申请实施例提供了一种向量检索方法,所述方法包括:
22、逻辑计算单元根据目标输入缩放参数和目标输入平移参数,对原始目标向量进行线性变换,获得线性变换后的目标向量,根据所述目标输入平移参数和目标权重缩放参数,对原始底库向量进行线性变换,获得线性变换后的底库向量;
23、数字模拟转换模块基于输入量化函数对所述线性变换后的目标向量进行量化,获得量化后的目标向量,基于权重量化函数对所述线性变换后的底库向量进行量化,获得量化后的底库向量;
24、所述逻辑计算单元结合存算一体阵列根据所述目标权重缩放参数、所述目标输入缩放参数、所述量化后的目标向量和所述量化后的底库向量,计算第一等价欧式距离;
25、所述逻辑计算单元根据目标输出缩放参数和目标输出平移参数对所述第一等价欧式距离进行线性变换;
26、模拟数字转换模块基于输出量化函数对线性变换后的第一等价欧式距离进行量化,获得量化后的等价欧式距离;
27、所述逻辑计算单元通过比较不同原始底库向量对应的量化后的等价欧式距离,确定与所述原始目标向量相似度最高的k个所述原始底库向量,其中,所述k为正整数;
28、其中,所述目标输入缩放参数、所述目标输入平移参数、所述本文档来自技高网...
【技术保护点】
1.一种存算一体结构的量化参数确定方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述原始欧式距离的获取方法,包括:
3.根据权利要求1所述的方法,其特征在于,所述逻辑计算单元结合存算一体阵列根据所述初始权重缩放参数、所述初始输入缩放参数、所述量化后的目标向量和所述量化后的底库向量,计算第一等价欧式距离,包括:
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述逻辑计算单元利用最优化方法和所述当前量化损失,对所述初始输入缩放参数、所述初始输入平移参数、所述初始权重缩放参数、所述初始输出缩放参数和所述初始输出平移参数进行调整,包括:
5.一种向量检索方法,其特征在于,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,所述逻辑计算单元结合存算一体阵列根据所述目标权重缩放参数、所述目标输入缩放参数、所述量化后的目标向量和所述量化后的底库向量,计算第一等价欧式距离,包括:
7.一种存算一体结构的量化参数确定装置,其特征在于,所述装置包括:
8.一种向量检索装置,
9.一种存算一体芯片,其特征在于,所述存算一体芯片至少用于实现如权利要求1-6中任一项所述的方法中关于向量的内积运算,以及用于存储底库向量。
10.一种电子设备,其特征在于,所述电子设备包括至少一个权利要求9所述的存算一体芯片。
...【技术特征摘要】
1.一种存算一体结构的量化参数确定方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述原始欧式距离的获取方法,包括:
3.根据权利要求1所述的方法,其特征在于,所述逻辑计算单元结合存算一体阵列根据所述初始权重缩放参数、所述初始输入缩放参数、所述量化后的目标向量和所述量化后的底库向量,计算第一等价欧式距离,包括:
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述逻辑计算单元利用最优化方法和所述当前量化损失,对所述初始输入缩放参数、所述初始输入平移参数、所述初始权重缩放参数、所述初始输出缩放参数和所述初始输出平移参数进行调整,包括:
5.一种向量检索...
【专利技术属性】
技术研发人员:鲜于海舒,
申请(专利权)人:北京忆元科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。