确定量化截断值的方法、设备和介质与流程
- 国知局
- 2024-08-05 11:43:26
本技术涉及模型量化领域,尤其涉及一种确定量化截断值的方法、设备和介质。
背景技术:
1、随着科技的不断发展,机器学习成为人工智能领域的重要分支,而深度学习作为机器学习的一种关键技术,受到广泛的关注和应用。深度学习可以从大规模的数据中自动学习和提取特征,从而实现高效的数据分析和预测。
2、目前,深度学习模型广泛用于芯片等硬件上,深度学习模型部署在芯片等硬件上时,一般会考虑内存和速度等因素以及会有高吞吐量的需求。
3、为了降低内存占用、提升计算速度,可以采用模型量化压缩模型,模型量化过程中截断值的选取会影响模型量化的推理精度。
技术实现思路
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、可选的,获取最大第二余弦相似度对应的第二目标缩放尺度,并计算第二目标缩放尺度对应的第二目标零点值之后,所述方法还包括:
28、调用所述目标层的权重伪量化器,根据所述第二目标缩放尺度、所述第二缩放尺度对应的第二目标截断值、所述第二目标零点值、所述目标层的权重数据计算所述目标层的权重数据的第二目标量化值,对所述第二目标量化值反量化后输出。
29、可选的,所述在浮点模型对应的参数文件中设置激活观察器为余弦相似度观察器之前,所述方法还包括:
30、在浮点模型对应的观察器代码文件中新建余弦相似度观察器类,余弦相似度观察器类中包括余弦相似度损失函数和余弦相似度函数;
31、将观察器代码文件中的余弦相似度观察器类导入量化配置代码文件中;
32、在量化配置代码文件中加入余弦相似度观察器键值。
33、第二方面,本技术提供一种确定量化截断值的装置,包括:
34、确定模块,用于根据目标层的采样数据的最大值和最小值确定多个缩放尺度的截断值并计算每个缩放尺度;
35、计算模块,用于计算采样数据在每个缩放尺度下的量化值,以及每个缩放尺度下采样数据与对应的量化值之间的余弦相似度;
36、获取模块,用于获取最大余弦相似度对应的目标缩放尺度,所述目标缩放尺度的截断值作为目标截断值。
37、第三方面,本技术提供一种电子设备,包括:存储器和处理器;
38、存储器用于存储指令;处理器用于调用存储器中的指令执行第一方面及第一方面任一种可能的设计中的确定量化截断值的方法。
39、第四方面,本技术提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,当电子设备的至少一个处理器执行该计算机指令时,电子设备执行第一方面及第一方面任一种可能的设计中的确定量化截断值的方法。
40、第五方面,本技术提供一种计算机程序产品,所述计算机程序产品包括计算机指令,当电子设备的至少一个处理器执行该计算机指令时,电子设备执行第一方面及第一方面任一种可能的设计中的确定量化截断值的方法。
41、本技术提供的确定量化截断值的方法、设备和介质,根据目标层的采样数据的最大值和最小值确定多个缩放尺度的截断值并计算每个缩放尺度,而后计算采样数据在每个缩放尺度下的量化值,以及每个缩放尺度下采样数据与对应的量化值之间的余弦相似度,获取最大余弦相似度对应的目标缩放尺度,目标缩放尺度的截断值作为目标截断值,从而通过计算余弦相似度的方式推理不同截断值对应的量化数据与原始数据的分布相似性,以获得量化模型与原浮点模型相比推理精度损失较小的截断值,提高量化模型的推理精度。
本文地址:https://www.jishuxx.com/zhuanli/20240802/259029.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表