CN117973469A - 基于文本生成模型的优化器量化方法、装置以及控制器 - Google Patents
基于文本生成模型的优化器量化方法、装置以及控制器 Download PDFInfo
- Publication number
- CN117973469A CN117973469A CN202410053158.9A CN202410053158A CN117973469A CN 117973469 A CN117973469 A CN 117973469A CN 202410053158 A CN202410053158 A CN 202410053158A CN 117973469 A CN117973469 A CN 117973469A
- Authority
- CN
- China
- Prior art keywords
- quantization
- optimizer
- bit
- text
- generation model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013139 quantization Methods 0.000 title claims abstract description 271
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000012545 processing Methods 0.000 claims abstract description 54
- 238000010606 normalization Methods 0.000 claims abstract description 46
- 238000007667 floating Methods 0.000 claims abstract description 14
- 238000007781 pre-processing Methods 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims description 38
- 230000008569 process Effects 0.000 claims description 30
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000009826 distribution Methods 0.000 claims description 10
- 238000005457 optimization Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 4
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 230000002159 abnormal effect Effects 0.000 description 15
- 238000012549 training Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 11
- 238000009828 non-uniform distribution Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000003062 neural network model Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 241000271935 Bitis Species 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Neurology (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请涉及人工智能技术领域,特别涉及基于文本生成模型的优化器量化方法、装置以及控制器。优化器量化方法包括读取优化器的文本输入张量,文本输入张量为第一位宽的浮点数据;确定文本输入张量的梯度信息并对梯度信息分块处理,得到多个独立块,根据归一化常数对独立块进行量化处理,得到独立块的量化结果,量化结果为第二位宽的整数数据;将量化结果进行优化预处理,得到优化量化结果,将优化量化结果作为第一优化器状态;对第一优化器状态进行反量化处理,得到第二优化器状态,并更新优化器;对第二优化器状态进行量化处理以回到第一优化器状态,存储独立块的优化量化结果,有利于降低文本生成模型中优化器的显存占用,提高显卡的利用率。
Description
技术领域
本申请涉及人工智能技术领域,特别涉及一种基于文本生成模型的优化器量化方法、装置以及控制器。
背景技术
随着人工智能技术的迅速发展,大型深度神经网络模型在聊天机器人、图像生成、视频理解和文本生成等众多领域得到了广泛应用。当前大型深度神经网络模型的应用指数级增长,其中,文本生成模型在对话系统、推荐系统、搜索引擎中都是必不可少的,因此对文本生成模型的显存要求和量化要求也越来越高。当前在训练文本生成模型,通常需要将模型参数、模型梯度、优化器状态都存储在固定数量的可用内存中,状态优化器随着时间的推移维护梯度统计,使用了可以分配给模型参数的内存,占了整体显存的很大一部分,这极大限制了训练的大型深度神经网络模型的最大尺寸。
相关技术中,为了缓解文本生成模型训练过程中的显存压力,通过减少或有效分配文本生成模型参数所需的内存来实现更大的模型训练。例如,将模型参数、模型梯度、优化器状态等信息切碎然后分散到不同的显卡上,让每张显卡的显存占用被均摊,使得相同数量的卡可以训练更大的文本生成模型,这种将优化器分布在多个卡的方法虽然有效,但它只能在多张显卡情况下可用,且需要在使用数据并行性的情况下使用,另外优化器分片还可能产生大量通信开销,从而使得训练速度变慢。另外,虽然目前部分量化方法可以减少文本生成模型的内存占用,但是在量化过程中会导致文本生成模型的性能下降,使得文本生成模型的收敛度低从而导致精度降低。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请实施例提供了一种基于文本生成模型的优化器量化方法、装置以及控制器,有利于降低文本生成模型中优化器的显存占用,提高显卡的利用率,从而提高了文本生成模型的性能。
第一方面,本申请实施例提供了一种基于文本生成模型的优化器量化方法,包括:
读取优化器的文本输入张量,所述文本输入张量为第一位宽的浮点数据;
确定所述文本输入张量的梯度信息;
对将所述梯度信息进行分块处理,得到多个独立块,并对所述独立块进行归一化处理,得到所述独立块的归一化常数,并根据所述归一化常数对所述独立块进行量化处理,得到所述独立块的量化结果,所述量化结果为第二位宽的整数数据,其中,所述第二位宽小于第一位宽;
对所述量化结果进行优化预处理,得到优化量化结果,并将所述优化量化结果作为第一优化器状态;
对所述第一优化器状态进行反量化处理,得到第二优化器状态,并根据所述第二优化器状更新所述优化器;
对所述第二优化器状态进行量化处理,以回到所述第一优化器状态,并存储所述独立块的优化量化结果。
根据本申请的一些实施例,所述第二位宽的整数数据由以下数据结构定义:
符号位,为所述数据结构的第一位;
指数位,用于由连续为零的位数指示所述整数数据的指数位的大小;
指示位,设置为1;
线性量化位,用于指示所述整数数据的线性量化值。
根据本申请的一些实施例,所述第二位宽的整数数据由以下数据结构定义:
分数的固定位,为所述数据结构的第一位;
指数位,用于由连续为零的位数指示所述整数数据的指数位的大小;
指示位,设置为1;
线性量化位,用于指示所述整数数据的线性量化值。
根据本申请的一些实施例,所述得到所述独立块的量化结果包括:
将所述文本输入张量转换成一维元素序列,并将所述一维元素序列分成预设区间大小的多个独立块;
确定所述独立块的归一化常数,并根据所述归一化常数将所述文本输入张量转换为目标量化数据类型的域的范围;
确定所述一维元素序列的每个元素在所述目标量化数据类型的域中的对应值;
存储与所述对应值所对应的索引;
根据所述索引得到所述独立块的量化结果。
根据本申请的一些实施例,在所述存储与所述对应值所对应的索引之后,还包括:
对所述索引执行反规范化处理;
确定所述一维元素序列的最大值;
根据经反规范化处理的索引和所述一维元素序列的最大值,通过二分法确定与所述索引对应的量化输出数据;
将所述通过二分法确定与所述索引对应的量化输出数据确定为所述独立块的量化结果。
根据本申请的一些实施例,将所述文本输入张量输入至嵌入层模块,得到嵌入向量;
将所述嵌入向量输入至Transformer模型,并执行向前运算,以获得所述优化器的损失函数;
将所述损失函数执行反向传播计算,以优化所述损失函数值;
确定所述优化器的梯度,并根据所述损失函数和所述梯度得到所述损失函数对于所述文本生成模型的梯度;
对所述梯度进行量化处理。
根据本申请的一些实施例,在所述将所述文本输入张量输入至所述嵌入层模块之前,还包括:
对输入的高度不均匀分布的所述文本输入张量进行归一化处理。
第二方面,本申请实施例提供了一种基于文本生成模型的优化器量化装置,包括:
读取模块,用于读取优化器的文本输入张量,所述文本输入张量为第一位宽的浮点数据;
梯度计算模块,用于确定所述文本输入张量的梯度信息;
逐块量化模块,用于对所述梯度信息进行分块处理,得到多个独立块,还用于对所述独立块进行归一化处理,得到所述独立块的归一化常数,并根据所述归一化常数对所述独立块进行量化处理,得到所述独立块的量化结果,所述量化结果为第二位宽的整数数据,其中,所述第二位宽小于第一位宽;
动态量化模块,用于对所述量化结果进行优化预处理,得到优化量化结果;
嵌入层模块,用于对所述优化量化结果进行预处理,得到第一优化器状态;
反量化模块,用于对所述第一优化器状态进行反量化处理,得到第二优化器状态,并将所述第二优化器状更新为所述优化器状态;对所述第二优化器状态进行量化处理,以回到所述第一优化器状态,并存储所述独立块的量化结果。
第三方面,本申请实施例提供了一种控制器,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如上述第一方面的技术方案中所述的基于文本生成模型的优化器量化方法。
第三方面,本申请实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如第一方面的技术方案中所述的基于文本生成模型的优化器量化方法。
本申请实施例提供的基于文本生成模型的优化器量化方法、装置以及控制器至少具备如下的优点或有益效果之一:读取优化器的文本输入张量,其中,文本输入张量为第一位宽的浮点数据;然后,计算文本输入张量的梯度信息,并对梯度信息进行分块处理,得到多个独立块;分别对各个独立块进行归一化处理,以求解每个独立块的归一化常数。对梯度信息分块处理成多个独立块,能够单独对每个独立块进行归一化处理,不需要中央处理器核心之间同步求解输入文本的梯度信息,每个独立块都跨中央处理器核心并行处理,提高了量化精度。根据独立块的归一化常数对独立块进行量化处理,得到独立块的量化结果,其中,量化结果为第二位宽的整数数据。由于每个独立块都有对应的归一化常数,使得各个独立块能够独立量化,因此各个独立块之间的异常值之间不会相互影响,独立块能够隔离其他不同独立块的异常值,从而使得量化过程更加精准,另外,通过对独立块的梯度信息进行量化处理还能够使得异常值能够更平均地分布于多个不同独立块,对于非均匀分布具有更小的绝对量化误差和相对量化误差。对独立块的量化结果进行优化预处理,能够避免量化过程中数据表示范围变窄而导致数据溢出问题,提高独立块量化结果的精准性;通过将第一优化器状态反量化为第二优化器状态并执行更新,能够保持使用第二优化器状态的性能水平,然后将第二优化器状态量化回第一优化器状态以进行存储,能够降低文本生成模型中优化器的显存占用,提高显卡的利用率。对寄存器中的各个独立块的梯度信息的量化结果执行第一优化器状态到第二优化器状态的转换,不需要将多个独立块的量化结果慢速复制到显卡内存或额外的临时内存来执行量化和反量化,进一步降低文本生成模型中优化器的显存占用,使得显卡资源利用率更高。另外,在读取优化器的输入张量之后,将输入的高度不均匀分布的文本输入张量进行归一化处理,以支持更积极的量化,避免避免极端的梯度变化,从而提高文本生成模型优化过程中的稳定性。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
图1是本申请实施例提供的一种基于文本生成模型的优化器量化方法的流程图;
图2是本申请实施例提供的一种第二位宽的整数数据的数据结构的示意图;
图3是本申请实施例提供的一种得到独立块的量化结果的方法的流程图;
图4是本申请实施例提供的另一种基于文本生成模型的优化器量化方法的流程图;
图5是本申请实施例提供的另一种基于文本生成模型的优化器量化方法的流程图;
图6是本申请实施例提供的另一种基于文本生成模型的优化器量化方法的流程图;
图7是本申请实施例提供的一种基于文本生成模型的优化器量化装置的结构示意图;
图8是本申请实施例提供的一种控制器的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
在本申请的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
随着人工智能技术的迅速发展,大型深度神经网络模型在聊天机器人、图像生成、视频理解和文本生成等众多领域得到了广泛应用。当前大型深度神经网络模型的应用指数级增长,其中,文本生成模型在对话系统、推荐系统、搜索引擎中都是必不可少的,因此对文本生成模型的显存要求和量化要求也越来越高。当前在训练文本生成模型,通常需要将模型参数、模型梯度、优化器状态都存储在固定数量的可用内存中,状态优化器随着时间的推移维护梯度统计,如,优化器对过去梯度值的指数平滑和或平方和进行维护统计,但会使用用于分配给模型参数的内存,使得优化器维护梯度统计占了整体显存的很大一部分,这极大限制了训练的大型深度神经网络模型的最大尺寸。
相关技术中,为了缓解文本生成模型训练过程中的显存压力,通过减少或有效分配文本生成模型参数所需的内存来实现更大的模型训练。例如,将模型参数、模型梯度、优化器状态等信息切碎然后分散到不同的显卡上,让每张显卡的显存占用被均摊,使得相同数量的卡可以训练更大的文本生成模型,这种将优化器分布在多个卡的方法虽然有效,但它只能在多张显卡情况下可用,且需要在使用数据并行性的情况下使用,优化器分片还可能产生大量通信开销,从而使得训练速度变慢。另外,虽然目前部分量化方法可以减少文本生成模型的内存占用,但是在量化过程中会导致文本生成模型的性能下降,使得文本生成模型的收敛度低从而导致精度降低。如,使用16Bit优化器,在参数超过1B的大型文本生成模型很难收敛和达到与32Bit优化器同样的模型精度。因此,上述量化方法虽然减少了内存使用,但是导致模型的性能下降,通常需要在训练后进一步调整量化。
基于此,本申请实施例提供了一种基于文本生成模型的优化器量化方法、装置以及控制器,有利于降低文本生成模型中优化器的显存占用,提高显卡的利用率,从而提高了文本生成模型的性能。
下面结合附图,对本申请实施例作进一步阐述。
参照图1,图1是本申请实施例提供的一种基于文本生成模型的优化器量化方法的流程图,包括步骤S100至步骤S600,具体地,
步骤S100:读取优化器的文本输入张量,文本输入张量为第一位宽的浮点数据;
步骤S200:确定文本输入张量的梯度信息;
步骤S300:对梯度信息进行分块处理,得到多个独立块,并对独立块进行归一化处理,得到独立块的归一化常数,并根据归一化常数对独立块进行量化处理,得到独立块的量化结果,量化结果为第二位宽的整数数据,其中,第二位宽小于第一位宽;
步骤S400:对量化结果进行优化预处理,得到优化量化结果,并将所述优化量化结果作为第一优化器状态;
步骤S500:对第一优化器状态进行反量化处理,得到第二优化器状态,并根据第二优化器状更新优化器;
步骤S600:对第二优化器状态进行量化处理,以回到第一优化器状态,并存储独立块的优化量化结果。
为了降低文本生成模型中优化器的显存占用,提高显卡的利用率,在本申请实施例提出了一种基于文本生成模型的优化器量化方法。基于文本生成模型的优化器量化方法包括读取优化器的文本输入张量,其中,文本输入张量为第一位宽的浮点数据;然后,计算文本输入张量的梯度信息,并对梯度信息进行分块处理,得到多个独立块;分别对各个独立块进行归一化处理,以求解每个独立块的归一化常数。对梯度信息分块处理成多个独立块,能够单独对每个独立块进行归一化处理,不需要中央处理器(Central Processing Unit,CPU)核心之间同步求解输入文本的梯度信息,每个独立块都跨CPU核心并行处理,提高了量化精度,同时能够提高优化器接收的输入文本的吞吐量,产生更快的优化。根据独立块的归一化常数对独立块进行量化处理,得到独立块的量化结果,其中,量化结果为第二位宽的整数数据。由于每个独立块都有对应的归一化常数,使得各个独立块能够独立量化,因此各个独立块之间的异常值之间不会相互影响,使得独立块能够隔离其他不同独立块的异常值,从而使得量化过程更加精准,另外,还能够使得异常值能够更平均地分布于多个不同独立块,对于非均匀分布具有更小的绝对量化误差和相对量化误差。
在本申请的一些实施例中,文本输入张量为32位的浮点数据,独立块的量化结果为8位的整数数据,对独立块的量化结果进行优化预处理,能够避免量化过程中数据表示范围由32位变成8位使得数据变窄而导致数据溢出问题,提高独立块量化结果的精准性;独立块的量化结果经过优化处理后得到优化量化结果,并将优化量化结果作为第一优化器状态。对第一优化器状态进行反量化处理,得到第二优化器状态,并根据第二优化器状更新优化器。对第二优化器状态进行量化处理,以回到第一优化器状态,并存储独立块的优化量化结果。其中,第一优化器状态为8Bit的优化器状态,第二优化器状态为32Bit的优化器状态。
通过将第一优化器状态反量化为第二优化器状态并执行更新,能够保持使用第二优化器状态的性能水平,然后将第二优化器状态量化回第一优化器状态以进行存储,能够降低文本生成模型中优化器的显存占用,提高显卡的利用率。对寄存器中的各个独立块的梯度信息的量化结果执行第一优化器状态到第二优化器状态的转换,不需要将多个独立块的量化结果慢速复制到显卡内存或额外的临时内存来执行量化和反量化,进一步降低文本生成模型中优化器的显存占用,使得显卡资源利用率更高。
在本申请一些实施例中,梯度信息包括梯度的指数平均值和梯度的平方和,通过将梯度的指数平均值和梯度的平方和分块量化为8位整数。然后,将8Bit的优化器状态反量化为32Bit的优化器状态执行更新,能够保持使用32Bit的优化器状态性能水平,再将32Bit的优化器状态量化回8Bit的优化器状态以进行存储,能够降低文本生成模型中优化器的显存占用,提高显卡的利用率,在寄存器中对独立块的逐个元素地执行这种8Bit到32Bit的转换,不需要慢速复制到显卡内存或额外的临时内存来执行量化和反量化,进一步降低文本生成模型中优化器的显存占用。
在本申请的一些实施例中,为了解决独立块的梯度信息在量化过程中的数据表示范围变窄而导致数据溢出问题,对独立块的量化结果进行优化预处理。通过预定义量化结果的数据结构,使得量化结果的数据结构动态量化。本申请中,量化结果为第二位宽的整数数据,因此定义第二位宽的整数数据的数据结构,第二位宽的整数数据的数据结构包括符号位、指数位、指示位和线性量化位,具体地,第二位宽的整数数据由以下数据结构定义:
符号位,为数据结构的第一位;
指数位,用于由连续为零的位数指示整数数据的指数位的大小;
指示位,设置为1;
线性量化位,用于指示整数数据的线性量化值。
通过定义第二位宽的整数数据结构,能够解决独立块的梯度信息在量化过程中的数据表示范围变窄而导致数据溢出问题,提高了量化精度。通过将指示位设置为1以使得将指示位以下的数据结构都保留给线性量化位,通过移动指示位,整数数据的线性量化值可以有10-7数量级的指数或高达的精度。通过定义第二位宽的整数数据的数据结构,独立块的量化结果实现动态量化,使得整数数据的线性量化值的小值和大值都进行高精度量化,从而降低量化过程中产生的量化误差。与线性量化相比,动态量化对于非均匀分布具有更好的绝对量化误差和相对量化误差。通过定义第二位宽的整数数据的数据结构,独立块的量化结果实现动态量化从而实现对独立块的量化结果进行优化预处理,得到优化量化结果。
相关技术中,在很多自然语言模型以及文本生成模型的训练过程中,通常通过删除符号位来增大数据的变化范围。本申请的一些实施例中,第二位宽的整数数据的数据结构能够根据优化器状态灵活调整,另一个实施例中,第二位宽的整数数据的数据结构包括分数的固定位、指数位、指示位和线性量化位,具体地,第二位宽的整数数据由以下数据结构定义:
分数的固定位,为数据结构的第一位;
指数位,用于由连续为零的位数指示整数数据的指数位的大小;
指示位,设置为1;
线性量化位,用于指示整数数据的线性量化值。
通过重新调整第二位宽的整数数据的数据结构来扩展对独立块的量化结果进行动态量化。由于Adam优化器执行第二项计算时,方差严格为正,因此量化结果也同样严格为正,因此第二位宽的整数数据不需要符号位。本实施例中而不是仅仅删除符号位,而是使用分数的固定位替代符号位,将分数的固定位设置为第二位宽的整数数据的第一位,通过分数的固定位来扩展动态量化,能够非常有效的覆盖量化结果的数据的变化范围。
通过定义第二位宽的整数数据结构,能够解决Adam优化器执行第二项计算时独立块的方差梯度信息在量化过程中的数据表示范围变窄而导致数据溢出问题,提高了量化精度。通过将指示位设置为1以使得将指示位以下的数据结构都保留给线性量化位,通过移动指示位,整数数据的线性量化值可以有10-7数量级的指数或高达的精度。通过定义第二位宽的整数数据的数据结构,独立块的量化结果实现动态量化,使得整数数据的线性量化值的小值和大值都进行高精度量化,从而降低量化过程中产生的量化误差。与线性量化相比,动态量化对于非均匀分布具有更好的绝对量化误差和相对量化误差。通过灵活调整第二位宽的整数数据的数据结构,使得Adam优化器执行第二项计算时独立块的方差信息的量化结果实现动态量化从而实现对独立块的量化结果进行优化预处理,得到优化量化结果。
参照图2,图2是本申请实施例提供的一种第二位宽的整数数据的数据结构的示意图,第二位宽的整数数据的数据结构包括符号位、指数位、指示位和线性量化位置。符号位为1,表示负数,指数位的零位的位数为2,因此指数位的数量级为2,指示位为1,通过指示位1指示在指示位以后的所有值保留给线性量化位,因此1001均为线性量化位的表示整数数据的的线性量化值。通过移动指示位,能够灵活改变线性量化位表示整数数据的的线性量化值的大小,从而使得整数数据的线性量化值可以有10-7数量级的指数或高达的精度,非常有效地覆盖数据的变化范围。
参照图3,图3是本申请实施例提供的一种得到独立块的量化结果的方法的流程图,包括步骤S310至步骤S350,具体地,
步骤S310:将文本输入张量转换成一维元素序列,并将一维元素序列分成预设区间大小的多个独立块;
步骤S320:确定独立块的归一化常数,并根据归一化常数将文本输入张量转换为目标量化数据类型的域的范围;
步骤S330:确定一维元素序列的每个元素在目标量化数据类型的域中的对应值;
步骤S340:存储与对应值所对应的索引;
步骤S350:根据索引得到独立块的量化结果。
在本申的一些实施例中,通过对输入张量进行分块处理,得到多个独立块,能够使得对输入张量进行量化处理。
对梯度信息进行分块处理,得到多个独立块;分别对各个独立块进行量化处理,得到各个独立块的量化结果。量化过程是将梯度信息从第一位宽的浮点数据转变成第二位宽的整数数据,量化方法通过压缩数字表示以节省空间,但是量化代价是精度损失。在本申请的一些实施例中,通过如下方法解决量化过程中数据的精确性问题,包括:接收优化器的文本输入张量,并将文本输入张量转换成一维元素序列T,然后将一维元素序列T分成大小为B的独立块,因此对于具备n个元素的一维元素序T拥有个独立块。逐一确定/>个独立块的归一化常数,并并根据归一化常数将文本输入张量转换为目标量化数据类型的域的范围。确定一维元素序列T的n个元素在目标量化数据类型的域中的对应值,存储存储与对应值所对应的索引,并通过索引得到独立块的量化结果。
在本申请的一些实施例中,独立块的归一化常数通过如下方式计算得到:
Nb=max(|Tb|);
其中,b是独立块的索引,T是一维元素序列,Nb是归一化常数。。
通过计算每个独立块的归一化常数,并根据独立块的归一化常数对独立块进行独立量化处理,由于每个独立块都有对应的归一化常数,使得各个独立块能够独立量化,因此各个独立块之间的异常值之间不会相互影响,使得独立块能够隔离其他不同独立块的异常值,从而使得量化过程更加精准,另外,还能够使得异常值能够更平均地分布于多个不同独立块,对于非均匀分布具有更小的绝对量化误差和相对量化误差。
参照图4,图4是本申请实施例提供的另一种基于文本生成模型的优化器量化方法的流程图,包括步骤S341至步骤S344,具体地,
步骤S341:对索引执行反规范化处理;
步骤S342:确定一维元素序列的最大值;
步骤S343:根据经反规范化处理的索引和一维元素序列的最大值,通过二分法确定与索引对应的量化输出数据;
步骤S344:将通过二分法确定与索引对应的量化输出数据确定为独立块的量化结果。
在本申请的一些实施例中,独立块的量化方法中,为了接收反量化的一维元素序列,需要查找索引并反规范化。因此,本实施例中,在确定一维元素序列的每个元素在目标量化数据类型的域中的对应值,并存储与对应值所对应的索引之后,独立块的量化方法还包括对索引执行反规范化处理,然后确定每个独立块对应的一维元素序列的最大值,在对独立块执行动态量化过程中,需要除以独立块对应的一维元素序列的最大值,来标准化目标量化数据类型的域的范围为[-1,1]。根据经反规范化处理的索引和一维元素序列的最大值,并通过二分查找目标量化数据类型的域中与索引最接近的值,并将该最接近的值作为与索引对应的量化输出数据。将通过二分法确定与索引对应的量化输出数据确定为独立块的量化结果。
下面通过一个示例对求解得到独立块的量化结果的方法步骤进行进阐述。
量化方法通过压缩数字表示以节省空间,但是量化代价是精度损失。量化是将k位整数映射到D维中的实数元素。例如,IEEE 32位浮点数据类型将索引0,1,2,3...2{32}-1映射到域[-3.4e38,+3.4e38]。
量化转换过程通过如下公式表示:
其中,Qmap为目标量化数据类型,i为索引,q_i为独立块的元素在域D中的对应值。
要执行从32位的浮点数据到8位整数数据的一般量化,,通过步骤S1至S3实现,具体地:
步骤S1:计算独立块的归一化常数Nb,将文本输入张量转换成一维元素序列T,并将一维元素序列T转换为目标量化数据类型Qmap的域D的范围,
步骤S2:确定一维元素序列的每个元素在域D中对应值q_i;
步骤S3:存储与对应值所对应的索引,查找索引并引对索引进行反规范化处理,根据经反规范化处理的索引确定量化输出数据,并存储与q_i对应的索引i的量化输出数据TD。
量化输出数据TD通过如下公式得到:
为了执行动态量化的过程,首先通过除以绝对最大值N=max(|Tb|)来标准化动态量化范围[-1,1],其中,绝对最大值为所有独立块中最大值,通过除以绝对最大值,保证了最大的优化器状态,同时对小值和大值都产生低量化误差。
然后,通过二分法查找找到最接近的值,将该值确定为与索引对应的量化输出数据,并将通过二分法确定与索引对应的量化输出数据确定为独立块的量化结果。
通过二分法确定与索引对应的量化输出数据确定为独立块的量化结果通过如下公式实现:
通过计算每个独立块的归一化常数,并根据独立块的归一化常数对独立块进行独立量化处理,由于每个独立块都有对应的归一化常数,使得各个独立块能够独立量化,从而各个独立块之间的异常值之间不会相互影响,因此独立块能够隔离其他不同独立块的异常值,使得量化过程更加精准,另外,还能够使得异常值能够更平均地分布于多个不同独立块,对于非均匀分布具有更小的绝对量化误差和相对量化误差。
参照图5,图5是本申请实施例提供的另一种基于文本生成模型的优化器量化方法的流程图,包括步骤S800至步骤S840,具体地,
步骤S800:将文本输入张量输入至嵌入层模块,得到嵌入向量;
步骤S810:将嵌入向量输入至Transformer模型,并执行向前运算,以获得优化器的损失函数;
步骤S820:将损失函数执行反向传播计算,以优化损失函数值;
步骤S830:确定优化器的梯度,并根据损失函数和梯度得到损失函数对于文本生成模型的梯度;
步骤S840:对梯度进行量化处理。
在本申请的一些实施例中,为了解决文本生成模型训练过程的稳定性问题,对应用层规范化。因此,在读取优化器的输入张量之后,将文本输入张量输入至优化器的嵌入层,文本输入张量对应的每个元素输出对应的嵌入向量,将嵌入向量输入至Transformer模型,并执行向前运算,以获得优化器的损失函数。文本生成模型训练过程中,损失函数值通常被用来监控模型的训练进程,当损失函数值足够小或者趋于稳定时,认为模型已经收敛。通过将损失函数执行反向传播计算,使损失函数值逐渐减小,以优化损失函数值。通过优化损失函数值使得文本生成模型对文本输入张量的数据的拟合效果较好。确定优化器的梯度,并根据损失函数和梯度得到损失函数对于文本生成模型的梯度;并对梯度进行量化处理。
在读取优化器的输入张量之后,将文本输入张量输入至优化器的嵌入层进行上述预处理,使得文本生成模型在初始化和训练期间都保持大约为1的方差,从而减小了最大梯度大小,提高了文本生成模型的量化精度和数据数据的稳定性和可靠性。
参照图6,图6是本申请实施例提供的另一种基于文本生成模型的优化器量化方法的流程图,包括步骤S900至步骤S950,具体地,
步骤S900:对输入的高度不均匀分布的文本输入张量进行归一化处理;
步骤S910:将经归一化处理的文本输入张量输入至嵌入层模块,得到嵌入向量;
步骤S920:将嵌入向量输入至Transformer模型,并执行向前运算,以获得优化器的损失函数;
步骤S930:将损失函数执行反向传播计算,以优化损失函数值;
步骤S940:确定优化器的梯度,并根据损失函数和梯度得到损失函数对于文本生成模型的梯度;
步骤S950:对梯度进行量化处理。
在本申请的一些实施例中,为了避免输入张量存在高度不均匀分布,将输入的高度不均匀分布进行归一化,提高文本生成模型优化过程中的稳定性。因此,本申请中,基于文本生成模型的优化器量化方法还包括:在将经归一化处理的文本输入张量输入至嵌入层模块之前,先对输入的高度不均匀分布的文本输入张量进行归一化处理,以支持更积极的量化,从而避免避免极端的梯度变化。将经归一化处理的文本输入张量输入至嵌入层模块,得到嵌入向量。
使用Xavier统一初始化初始化稳定嵌入层,并在添加位置嵌入之前应用层归一化,使得文本生成模型在初始化和训练期间都保持大约为1的方差,从而减小了最大梯度大小,提高了文本生成模型的量化精度和数据数据的稳定性和可靠性。此外,将输入的高度不均匀分布进行归一化使得输入张量均匀分布初始化具有比正态分布更少的极值,进一步减小了最大梯度大小。
在本申请的一些实施例中,确定优化器的梯度,并根据损失函数和梯度得到损失函数对于文本生成模型的梯度包括:
设损失函数为L,文本生成模型参数为W,其中W包含了所有的权重和偏置。要计算损失函数对于文本生成模型参数W的梯度,可以使用链式法则来进行求导。具体而言,对于每个参数Wi,梯度的计算可以通过以下步骤进行:
首先,根据文本生成模型的预测输出张量和实际输出张量标签计算损失函数的值L;
求损失函数L对于预测输出张量的梯度,具体地,计算损失函数L对于文本生成模型的预测输出张量的梯度,通常称为误差项。误差项表示损失函数L在当前预测输出张量处的斜率,是链式法则的起始点。
求文本生成模型内部变量对于文本生成模型参数W的梯度,具体通过矩阵乘法和逐元素乘法求解。
将上述步骤得到的各个梯度相乘,得到损失函数L对于文本生成模型参数Wi的梯度。
参照图7,图7是本申请实施例提供的一种基于文本生成模型的优化器量化装置的结构示意图。基于文本生成模型的优化器量化装置包括读取模块、梯度计算模块、动态量化模块、嵌入层模块和反量化模块。
读取模块,用于读取优化器的文本输入张量,其中,文本输入张量为第一位宽的浮点数据;
梯度计算模块,用于确定文本输入张量的梯度信息;
逐块量化模块,用于对梯度信息进行分块处理,得到多个独立块,还用于对独立块进行归一化处理,得到独立块的归一化常数,并根据归一化常数对独立块进行量化处理,得到独立块的量化结果,其中,量化结果为第二位宽的整数数据。
动态量化模块,用于对量化结果进行优化预处理,得到优化量化结果,并将优化量化结果作为第一优化器;
反量化模块,用于对第一优化器状态进行反量化处理,得到第二优化器状态,并将第二优化器状更新为优化器状态;对第二优化器状态进行量化处理,以回到第一优化器状态,并存储独立块的量化结果。
逐块量化模块将对梯度信息分块处理成多个独立块,能够单独对每个独立块进行归一化处理,不需要CPU核心之间同步求解输入文本的梯度信息,每个独立块都跨CPU核心并行处理,提高了量化精度。根据独立块的归一化常数对独立块进行量化处理,得到独立块的量化结果,由于每个独立块都有对应的归一化常数,使得各个独立块能够独立量化,因此各个独立块之间的异常值之间不会相互影响,因此独立块能够隔离其他不同独立块的异常值,从而使得量化过程更加精准,另外,还能够使得异常值能够更平均地分布于多个不同独立块,对于非均匀分布具有更小的绝对量化误差和相对量化误差。
动态量化模块对量化结果进行优化处理,能够有效避免独立块的梯度信息在量化过程中的数据表示范围变窄而导致数据溢出问题,提高了量化精度。通过定义量化结果的数据结构,使得整数数据的线性量化值的小值和大值都进行高精度量化,从而降低量化过程中产生的量化误差。与线性量化相比,动态量化对于非均匀分布具有更好的绝对量化误差和相对量化误差。通过定义第二位宽的整数数据的数据结构,独立块的量化结果实现动态量化从而实现对独立块的量化结果进行优化预处理,得到优化量化结果。
反量化模块通过将第一优化器状态反量化为第二优化器状态并执行更新,能够保持使用第二优化器状态的性能水平,然后将第二优化器状态量化回第一优化器状态以进行存储,能够降低文本生成模型中优化器的显存占用,提高显卡的利用率。对寄存器中的各个独立块的梯度信息的量化结果执行第一优化器状态到第二优化器状态的转换,不需要将多个独立块的量化结果慢速复制到显卡内存或额外的临时内存来执行量化和反量化,进一步降低文本生成模型中优化器的显存占用,使得显卡资源利用率更高。
为了避免输入张量存在高度不均匀分布,将输入的高度不均匀分布进行归一化,提高文本生成模型优化过程中的稳定性。本申请实施例中,设置基于文本生成模型的优化器量化装置还包括嵌入层模块,在读取优化器的输入张量之后,将文本输入张量输入至优化器量化装置的嵌入层,嵌入层用于对输入的高度不均匀分布的文本输入张量进行归一化处理,以支持更积极的量化,从而避免避免极端的梯度变化。将经归一化处理的文本输入张量输入至嵌入层模块,得到嵌入向量。使用Xavier统一初始化初始化稳定嵌入层,并在添加位置嵌入之前应用层归一化,使得文本生成模型在初始化和训练期间都保持大约为1的方差,从而减小了最大梯度大小,提高了文本生成模型的量化精度和数据数据的稳定性和可靠性。
在本申请的一些实施例中,基于文本生成模型的优化器量化装置中,读取模块接收32位浮点数据类型的文本输入张量,将文本输入张量输入至嵌入层对输入的高度不均匀分布的文本输入张量进行归一化处理,以支持更积极的量化,从而避免避免极端的梯度变化。梯度计算模块计算文本输入张量的梯度的指数平均值和梯度的平方和信息,逐块量化模块将这些信息分块量化为8位整数数据;然后,反量化模块将8Bit优化器状态反量化为32Bit优化器状态,执行更新,能够保持使用第二优化器状态的性能水平,再将优化器状态量化回8Bit以进行存储,能够降低文本生成模型中优化器的显存占用,提高显卡的利用率。对寄存器中的各个独立块的梯度信息的量化结果执行8Bit优化器状态到32Bit优化器的转换,不需要将多个独立块的量化结果慢速复制到显卡内存或额外的临时内存来执行量化和反量化,进一步降低文本生成模型中优化器的显存占用,使得显卡资源利用率更高。
参照图8,图8是本申请实施例提供的一种控制器1000的结构示意图,包括处理器1001,可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的基于文本生成模型的优化器量化方法;存储器1002,可以采用只读存储器1002(Read Only Memory,ROM)、静态存储设备、动态存储设备或者随机存取存储器1002(Random Access Memory,RAM)等形式实现。存储器1002可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1002中,并由处理器1001来调用执行本申请实施例的;输入/输出接口1003,用于实现信息输入及输出;通信接口1004,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;总线,在设备的各个组件(例如处理器1001、存储器1002、输入/输出接口1003和通信接口1004)之间传输信息;其中处理器1001、存储器1002、输入/输出接口1003和通信接口1004通过总线实现彼此之间在设备内部的通信连接。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机可读存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上是对本申请的较佳实施进行了具体说明,但本申请并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (10)
1.一种基于文本生成模型的优化器量化方法,其特征在于,包括:
读取优化器的文本输入张量,所述文本输入张量为第一位宽的浮点数据;
确定所述文本输入张量的梯度信息;
将所述梯度信息进行分块处理,得到多个独立块,并对所述独立块进行归一化处理,得到所述独立块的归一化常数,并根据所述归一化常数对所述独立块进行量化处理,得到所述独立块的量化结果,所述量化结果为第二位宽的整数数据,其中,所述第二位宽小于第一位宽;
将所述量化结果进行优化预处理,得到优化量化结果,并将所述优化量化结果作为第一优化器状态;
对所述第一优化器状态进行反量化处理,得到第二优化器状态,并根据所述第二优化器状更新所述优化器;
对所述第二优化器状态进行量化处理,以回到所述第一优化器状态,并存储所述独立块的优化量化结果。
2.根据权利要求1所述的基于文本生成模型的优化器量化方法,其特征在于,所述第二位宽的整数数据由以下数据结构定义:
符号位,为所述数据结构的第一位;
指数位,用于由连续为零的位数指示所述整数数据的指数位的大小;
指示位,设置为1;
线性量化位,用于指示所述整数数据的线性量化值。
3.根据权利要求1所述的基于文本生成模型的优化器量化方法,其特征在于,所述第二位宽的整数数据由以下数据结构定义:
分数的固定位,为所述数据结构的第一位;
指数位,用于由连续为零的位数指示所述整数数据的指数位的大小;
指示位,设置为1;
线性量化位,用于指示所述整数数据的线性量化值。
4.根据权利要求1所述的基于文本生成模型的优化器量化方法,其特征在于,所述得到所述独立块的量化结果包括:
将所述文本输入张量转换成一维元素序列,并将所述一维元素序列分成预设区间大小的多个独立块;
确定所述独立块的归一化常数,并根据所述归一化常数将所述文本输入张量转换为目标量化数据类型的域的范围;
确定所述一维元素序列的每个元素在所述目标量化数据类型的域中的对应值;
存储与所述对应值所对应的索引;
根据所述索引得到所述独立块的量化结果。
5.根据权利要求4所述的基于文本生成模型的优化器量化方法,其特征在于,在所述存储与所述对应值所对应的索引之后,还包括:
对所述索引执行反规范化处理;
确定所述一维元素序列的最大值;
根据经反规范化处理的索引和所述一维元素序列的最大值,通过二分法确定与所述索引对应的量化输出数据;
将所述通过二分法确定与所述索引对应的量化输出数据确定为所述独立块的量化结果。
6.根据权利要求1所述的基于文本生成模型的优化器量化方法,其特征在于,还包括:
将所述文本输入张量输入至嵌入层模块,得到嵌入向量;
将所述嵌入向量输入至Transformer模型,并执行向前运算,以获得所述优化器的损失函数;
将所述损失函数执行反向传播计算,以优化所述损失函数值;
确定所述优化器的梯度,并根据所述损失函数和所述梯度得到所述损失函数对于所述文本生成模型的梯度;
对所述梯度进行量化处理。
7.根据权利要求6所述的基于文本生成模型的优化器量化方法,其特征在于,在所述将所述文本输入张量输入至所述嵌入层模块之前,还包括:
对输入的高度不均匀分布的所述文本输入张量进行归一化处理。
8.一种基于文本生成模型的优化器量化装置,其特征在于,包括:
读取模块,用于读取优化器的文本输入张量,所述文本输入张量为第一位宽的浮点数据;
梯度计算模块,用于确定所述文本输入张量的梯度信息;
逐块量化模块,用于对所述梯度信息进行分块处理,得到多个独立块,还用于对所述独立块进行归一化处理,得到所述独立块的归一化常数,并根据所述归一化常数对所述独立块进行量化处理,得到所述独立块的量化结果,所述量化结果为第二位宽的整数数据,其中,所述第二位宽小于第一位宽;
动态量化模块,用于对所述量化结果进行优化预处理,得到优化量化结果;
嵌入层模块,用于对所述优化量化结果进行预处理,得到第一优化器状态;
反量化模块,用于对所述第一优化器状态进行反量化处理,得到第二优化器状态,并将所述第二优化器状更新为所述优化器状态;对所述第二优化器状态进行量化处理,以回到所述第一优化器状态,并存储所述独立块的量化结果。
9.一种控制器,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如权利要求1至7任意一项所述的基于文本生成模型的优化器量化方法。
10.一种计算机可读存储介质,其特征在于:存储有计算机可执行指令,所述计算机可执行指令用于执行如权利要求1至7中任意一项所述的基于文本生成模型的优化器量化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410053158.9A CN117973469A (zh) | 2024-01-12 | 2024-01-12 | 基于文本生成模型的优化器量化方法、装置以及控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410053158.9A CN117973469A (zh) | 2024-01-12 | 2024-01-12 | 基于文本生成模型的优化器量化方法、装置以及控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117973469A true CN117973469A (zh) | 2024-05-03 |
Family
ID=90852515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410053158.9A Pending CN117973469A (zh) | 2024-01-12 | 2024-01-12 | 基于文本生成模型的优化器量化方法、装置以及控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117973469A (zh) |
-
2024
- 2024-01-12 CN CN202410053158.9A patent/CN117973469A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110413255B (zh) | 人工神经网络调整方法和装置 | |
US20220207361A1 (en) | Neural network model quantization method and apparatus | |
CN114118384A (zh) | 神经网络模型的量化方法、可读介质和电子设备 | |
CN114049162B (zh) | 模型训练方法、需求量预测方法、装置、设备和存储介质 | |
CN118410849A (zh) | 确定量化截断值的方法、设备和介质 | |
JP2023063944A (ja) | 機械学習プログラム、機械学習方法、及び、情報処理装置 | |
US11514320B2 (en) | Arithmetic processing apparatus, control method, and non-transitory computer-readable recording medium having stored therein control program | |
CN117973469A (zh) | 基于文本生成模型的优化器量化方法、装置以及控制器 | |
CN113408696A (zh) | 深度学习模型的定点量化方法及装置 | |
CN117973480A (zh) | 校准神经网络量化的方法、装置、设备、介质和程序产品 | |
US12100196B2 (en) | Method and machine learning system to perform quantization of neural network | |
US11410036B2 (en) | Arithmetic processing apparatus, control method, and non-transitory computer-readable recording medium having stored therein control program | |
CN115640840A (zh) | 神经网络数据的量化方法、装置、系统及可读存储介质 | |
CN113361701A (zh) | 神经网络模型的量化方法和装置 | |
CN112199072A (zh) | 一种基于神经网络层的数据处理方法、装置及设备 | |
CN111240606A (zh) | 一种基于安全内存的存储优化方法及系统 | |
US20230281440A1 (en) | Computer-readable recording medium having stored therein machine learning program, method for machine learning, and information processing apparatus | |
CN113159177B (zh) | 基于批归一化参数定点化的目标检测方法、系统、设备 | |
WO2023125815A1 (zh) | 一种数据处理方法、装置及边缘计算设备 | |
CN112308216B (zh) | 数据块的处理方法、装置及存储介质 | |
CN115550259B (zh) | 基于白名单的流量分配方法及相关设备 | |
US20230385600A1 (en) | Optimizing method and computing apparatus for deep learning network and computer-readable storage medium | |
KR102574489B1 (ko) | 심층신경망의 선형변환 파라미터를 이용한 가지치기 방법 및 장치 | |
CN116502028B (zh) | 基于浮点数压缩技术的大规模fft实现方法及装置 | |
US20230342613A1 (en) | System and method for integer only quantization aware training on edge devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |