System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 混合精度量化方法、机器学习方法、计算系统及存储介质技术方案_技高网

混合精度量化方法、机器学习方法、计算系统及存储介质技术方案

技术编号:40923685 阅读:11 留言:0更新日期:2024-04-18 14:47
本发明专利技术公开了一种混合精度量化方法、机器学习方法、计算系统及存储介质,该混合精度量化方法用于对权重矩阵进行混合精度量化,该方法包括:将权重矩阵划分为多个量化块,统计各量化块中的权重的数值范围,对数值范围大于精度阈值的量化块采用4比特量化,对于数值范围小于或等于精度阈值的采用2比特量化。该量化方法可以既保证精度又能满足硬件友好性。解量化过程中数据流可采用并行设计,对二阶解量化中解量化计算与一阶解量化中数据载入做并行处理,使得两者在硬件上可独立并行执行,加速解量化过程。

【技术实现步骤摘要】

本专利技术涉及机器学习领域,尤其涉及一种混合精度量化方法、机器学习方法、计算系统及存储介质


技术介绍

1、大语言模型(large language model,llm)在自然语言理解和生成等领域展现了非凡的能力,但是其推理成本昂贵。例如,openai的数据显示,llm(gpt-4turbo)生成每个符号(token)的成本为0.003美分,即每天数百万美元。现有工作使用量化(quantization)技术从存储和计算两个方面降低推理成本,一方面,运用量化技术压缩llm的参数(如权重)后,模型可以在更少或更便宜的硬件平台(如图形处理器,graphic process unit,gpu)上运行,另一方面,量化技术通过降低计算过程中的访存次数提升计算速度。

2、在权重量化过程中,一组16比特浮点数据类型(float16)的权重(量化组),被量化成一组整型(integer,int)权重,一个int零点(zero)和一个float16缩放系数(scale),称为一阶量化。当采用更低的比特量化时,往往采用更小的分组大小来降低误差损失,这时为进一步降低权重的平均比特,多个分组的scale会继续被量化,称为二阶量化。与量化对应的是解量化(dequantization),在解量化过程中,经过量化后的int权重先减去zero再乘以float16的scale得到float16的权重,称为一阶解量化。若量化时采用二阶量化技术量化scale,则需先解量化得到float16的scale,此过程称为二阶解量化。

3、现有的量化技术可分成两大类,量化感知训练(quantization-aware training,qat)和训练后量化(post-training quantization,ptq)。在qat中,量化过程被集成到模型的训练过程中,在前向传播中,权重先被量化再进行计算得到输出,反向传播根据输出的损失差异调整权重的数值与分布,降低量化误差与精度损失。qat的优点是精度损失小,缺点是训练代价大。ptq方法指在llm训练后对权重进行量化,不需要修改llm结构或需要重新训练。ptq的主要优点是它在实现简单和快速的模型量化。

4、现有技术中的量化方法存在以下问题:

5、(1)2比特量化llm的精度损失大的挑战。现有这些工作在llm(llama-2模型家族)实现了2比特权重量化,例如gptq和greenbit。在llama-2-7b中,以gptq与greenbit采用2比特量化的模型精度损失分别为5.6%和3.2%。使用单一精度量化技术使某些量化组在量化后存在较大量化误差,最终导致模型精度损失严重。

6、(2)2比特解量化时间占比高导致计算效率低的挑战。现行2比特llm推理计算流程需要先对量化后的scale做二阶解量化,再对2比特权重进行一阶解量化,再执行后续计算。实验表明2比特的解量化时间占比超过整体解量化和计算时间的50%,导致降低llm推理的计算效率低。


技术实现思路

1、本专利技术主要目的在于克服现有技术的不足和缺陷,提出一种混合精度量化方法、机器学习方法、计算系统及存储介质。

2、为实现上述目的,本专利技术提供了一种混合精度量化方法用于对权重矩阵进行混合精度量化,其特征在于,将权重矩阵划分为多个量化块,统计各量化块中的权重的数值范围,对数值范围大于精度阈值的量化块采用4比特量化,对于数值范围小于或等于精度阈值的采用2比特量化。

3、本专利技术的进一步改进在于,2比特量化过程包括:

4、一阶量化过程:每个量化块沿着输入通道方向被量化成g1×g2个2比特整型权重,g2个2比特整型零点和g2个16比特浮点缩放系数,其中2比特整型权重以及2比特整型零点作为一阶量化数据;

5、二阶量化过程:沿着输出通道方向,g2个16比特浮点缩放系数被二阶量化为g2个4比特整型缩放系数,一个4比特整型零点和一个16比特浮点缩放系数,作为二阶量化数据;其中g1、g2均为大于1的整数。

6、本专利技术的进一步改进在于,4比特量化过程中,对连续输入的k个形式为g1×g2的量化块统一进行量化,该过程包括:各量化块沿着输入通道方向被量化成k×g1×g2个4比特整型权重,g2个4比特整型零点和g2个16比特浮点缩放系数;4比特量化后的各量化块共用4比特整型零点以及16比特浮点缩放系数;其中g1、g2均为大于1的整数。

7、本专利技术还提供一种机器学习方法,将机器学习模型的权重矩阵采用上述的混合精度量化方法进行混合精度量化之后存储在片外存储器中;在计算过程中,将混合精度量化之后的权重矩阵的量化块进行解量化并恢复成16比特浮点的数据格式后,再进行计算。

8、本专利技术的进一步改进在于,对2比特量化的量化块进行解量化的过程包括:

9、读入二阶量化数据;

10、对二阶量化数据进行解量化,得到各16比特浮点缩放系数,同时读入一阶量化数据;

11、进行一阶解量化计算,根据各16比特浮点缩放系数以及一阶量化数据计算得到量化块的各权重的16比特浮点格式的数据。

12、本专利技术的进一步改进在于,对4比特量化的量化块进行解量化的过程中,读入该量化块对应的4比特整型零点以及16比特浮点缩放系数,并读入该量化块的各4比特整型权重,通过计算得到该量化块的各权重的16比特浮点格式的数据。

13、本专利技术还提供一种计算系统,所述计算系统包括:

14、存储器,所述存储器用于存储计算机可执行指令;和

15、处理器,所述处理器用于执行所述计算机可执行指令,以实现上述的机器学习方法。

16、本专利技术还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有可执行指令,计算机执行所述可执行指令时能够实现上述的机器学习方法。

17、本专利技术提供的方案具有以下技术效果:该量化方法可以既保证精度又能满足硬件友好性。解量化过程中数据流可采用并行设计,对二阶解量化中解量化计算与一阶解量化中数据载入做并行处理,使得两者在硬件上可独立并行执行,加速解量化过程。

18、以下将结合附图对本专利技术的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本专利技术的目的、特征和效果。

本文档来自技高网...

【技术保护点】

1.一种混合精度量化方法,用于对权重矩阵进行混合精度量化,其特征在于,将权重矩阵划分为多个量化块,统计各量化块中的权重的数值范围,对数值范围大于精度阈值的量化块采用4比特量化,对于数值范围小于或等于精度阈值的采用2比特量化。

2.根据权利要求1所述的一种混合精度量化方法,其特征在于,2比特量化过程包括:

3.根据权利要求1所述的一种混合精度量化方法,其特征在于,4比特量化过程中,对连续输入的k个形式为g1×g2的量化块统一进行量化,该过程包括:各量化块沿着输入通道方向被量化成k×g1×g2个4比特整型权重,g2个4比特整型零点和g2个16比特浮点缩放系数;4比特量化后的各量化块共用4比特整型零点以及16比特浮点缩放系数;其中g1、g2均为大于1的整数。

4.一种机器学习方法,其特征在于,将机器学习模型的权重矩阵采用权利要求1至3中任一所述的混合精度量化方法进行混合精度量化之后存储在片外存储器中;在计算过程中,将混合精度量化之后的权重矩阵的量化块进行解量化并恢复成16比特浮点的数据格式后,再进行计算。

5.根据权利要求4所述的一种机器学习方法,其特征在于,对2比特量化的量化块进行解量化的过程包括:

6.根据权利要求4所述的一种机器学习方法,其特征在于,对4比特量化的量化块进行解量化的过程中,读入该量化块对应的4比特整型零点以及16比特浮点缩放系数,并读入该量化块的各4比特整型权重,通过计算得到该量化块的各权重的16比特浮点格式的数据。

7.一种计算系统,其特征在于,所述计算系统包括:

8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有可执行指令,计算机执行所述可执行指令时能够实现根据权利要求4-6中任一项所述的机器学习方法。

...

【技术特征摘要】

1.一种混合精度量化方法,用于对权重矩阵进行混合精度量化,其特征在于,将权重矩阵划分为多个量化块,统计各量化块中的权重的数值范围,对数值范围大于精度阈值的量化块采用4比特量化,对于数值范围小于或等于精度阈值的采用2比特量化。

2.根据权利要求1所述的一种混合精度量化方法,其特征在于,2比特量化过程包括:

3.根据权利要求1所述的一种混合精度量化方法,其特征在于,4比特量化过程中,对连续输入的k个形式为g1×g2的量化块统一进行量化,该过程包括:各量化块沿着输入通道方向被量化成k×g1×g2个4比特整型权重,g2个4比特整型零点和g2个16比特浮点缩放系数;4比特量化后的各量化块共用4比特整型零点以及16比特浮点缩放系数;其中g1、g2均为大于1的整数。

4.一种机器学习方法,其特征在于,将机器学习模型的权重矩阵采用权利要求1至3...

【专利技术属性】
技术研发人员:戴国浩
申请(专利权)人:上海交通大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1