动态量化的模型优化方法及装置与流程

摘要: 本发明涉及模型优化,尤其涉及一种动态量化的模型优化方法及装置。背景技术:1、随着大型语言模型参数规模的增长,其巨大的计算量和内存消耗严重限制了在资源受限设备如移...
动态量化的模型优化方法及装置与流程

本发明涉及模型优化,尤其涉及一种动态量化的模型优化方法及装置。

背景技术:

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、获取当前运行环境的硬件资源状态数据,所述硬件资源状态数据包括内存占用率和cpu/gpu负载中的至少一种;

29、基于所述置信度分数和所述硬件资源状态数据,确定所述目标量化精度。

30、根据本发明提供的一种动态量化的模型优化方法,所述模型为基于transformer架构的大型语言模型,所述对模型的网络参数和/或中间激活值进行量化处理是针对所述模型的特定层级或特定模块进行的,不同层级或模块根据各自的局部置信度被分配不同的目标量化精度。

31、本发明还提供一种动态量化的模型优化装置,包括:

32、获取模块,用于获取待处理的输入数据;

33、第一处理模块,用于利用模型对所述输入数据进行前向传播计算,获得初始概率分布结果;

34、第二处理模块,用于基于所述初始概率分布结果计算所述模型针对所述输入数据的置信度分数;

35、第三处理模块,用于根据预设的置信度与量化级别的映射关系,确定与所述置信度分数对应的目标量化精度;

36、第四处理模块,用于根据所述目标量化精度,对模型的网络参数和/或中间激活值进行量化处理,获得动态量化模型。

37、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述动态量化的模型优化方法。

38、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述动态量化的模型优化方法。

39、本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述动态量化的模型优化方法。

40、本发明提供的动态量化的模型优化方法及装置,通过计算置信度作为量化精度的决策变量,而不是依赖传统量化技术中全模型统一精度或仅依赖硬件负载调整精度的方式,可以实现模型计算精度与数据复杂度的动态匹配,从而实现更智能、更高效的模型推理。

1.一种动态量化的模型优化方法,其特征在于,包括:

2.根据权利要求1所述的动态量化的模型优化方法,其特征在于,所述基于所述初始概率分布结果计算所述模型针对所述输入数据的置信度分数,包括以下至少一种方式:

3.根据权利要求1所述的动态量化的模型优化方法,其特征在于,所述根据预设的置信度与量化级别的映射关系,确定与所述置信度分数对应的目标量化精度,包括:

4.根据权利要求3所述的动态量化的模型优化方法,其特征在于,所述置信度分数与量化精度的比特数呈正相关或负相关关系;

5.根据权利要求1所述的动态量化的模型优化方法,其特征在于,对模型的网络参数和/或中间激活值进行量化处理,包括:

6.根据权利要求1所述的动态量化的模型优化方法,其特征在于,所述方法还包括反馈优化步骤:

7.根据权利要求1所述的动态量化的模型优化方法,其特征在于,所述根据预设的置信度与量化级别的映射关系,确定与所述置信度分数对应的目标量化精度,还包括:

8.根据权利要求1所述的动态量化的模型优化方法,其特征在于,所述模型为基于transformer架构的大型语言模型,所述对模型的网络参数和/或中间激活值进行量化处理是针对所述模型的特定层级或特定模块进行的,不同层级或模块根据各自的局部置信度被分配不同的目标量化精度。

9.一种动态量化的模型优化装置,其特征在于,包括:

10.一种电子设备,包括存储器、处理器及存储在所述存储器上并能在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述动态量化的模型优化方法方法。