注意力处理方法、设备、介质和计算机程序产品与流程

摘要: 本发明涉及计算机,特别涉及注意力处理方法、设备、介质和计算机程序产品。背景技术:1、随着transformer模型的规模以及输入序列长度不断增加,模型在自回归推...
注意力处理方法、设备、介质和计算机程序产品与流程

本发明涉及计算机,特别涉及注意力处理方法、设备、介质和计算机程序产品。

背景技术:

1、随着transformer模型的规模以及输入序列长度不断增加,模型在自回归推理过程中需要缓存历史词元对应的键和值,kv缓存所占用的存储空间以及由kv缓存访问产生的内存带宽开销逐渐成为影响模型推理效率的重要因素。

2、多头潜在注意力mla可以采用低维的潜在kv表示替代完整的键和值进行缓存,并通过将键侧的部分投影变换结合至查询侧,使注意力计算能够直接作用于所缓存的潜在kv表示,从而降低kv缓存占用以及解码过程中的数据访问开销。

3、然而,一些transformer模型还对查询和键分别采用查询归一化qnorm和键归一化knorm。knorm中的归一化因子取决于相应词元的键,并随词元变化,使键侧投影难以直接结合至固定的查询侧变换。若在自回归解码过程中精确保留该随词元变化的归一化处理,则可能需要针对历史词元显式生成重构键,或者针对各历史词元额外存储对应的归一化因子,从而增加kv缓存占用、存储访问量或注意力计算开销,不利于发挥mla的潜在kv缓存优势。

4、因此,需要一种能够适用于包括qnorm和knorm的transformer模型、并能够降低采用mla进行自回归解码时的缓存和数据访问开销的注意力处理方案。

技术实现思路

1、本发明的目的在于提供注意力处理方法、设备、介质和计算机程序产品,解决包括qnorm和knorm的transformer模型采用mla进行自回归解码时,knorm中随词元变化的键归一化因子阻碍键侧投影向查询侧结合,进而导致额外的kv缓存、存储访问或计算开销的问题。

2、本发明的第一方面公开了一种注意力处理方法,应用于包括查询归一化qnorm和键归一化knorm的transformer模型,所述transformer模型的注意力层采用多头潜在注意力mla,所述方法包括:

3、针对所述注意力层的kv头,获取基于校准样本中重构键的均方根幅值预先确定的、词元无关的键归一化校准因子;

4、基于所述键归一化校准因子和所述knorm的增益参数,对所述mla的nope键上投影进行处理,以使随词元变化的键归一化因子由所述键归一化校准因子近似,并使相应的键归一化尺度结合至所述nope键上投影;

5、在对输入序列进行自回归解码时,基于处理后的所述nope键上投影对当前词元的查询进行查询侧变换,并使经所述查询侧变换的查询与kv缓存中的潜在kv表示进行运算,以执行注意力计算。

6、根据本发明的第一方面,还包括对所述transformer模型进行性能恢复处理,所述性能恢复处理包括:

7、获取与所述transformer模型对应的、采用多头注意力mha或分组查询注意力gqa的转换前模型作为教师模型;

8、将相同的输入序列分别输入所述教师模型和所述transformer模型,根据所述教师模型的输出分布与所述transformer模型的输出分布之间的差异确定蒸馏损失;

9、基于所述蒸馏损失,仅更新所述注意力层中与查询、键和值对应的投影参数以及相应的qnorm和knorm参数,并保持注意力输出投影、词嵌入、语言模型头和前馈网络的参数不变。

10、根据本发明的第一方面,所述transformer模型还包括混合专家moe模块,所述moe模块包括路由器和多个专家;

11、所述性能恢复处理还包括:保持所述路由器和所述多个专家的参数不变,以保持预训练阶段形成的专家负载均衡行为,并基于所述蒸馏损失限制所述注意力层的表示变化引起的专家路由变化。

12、根据本发明的第一方面,所述性能恢复处理还包括:

13、以具有第一潜在kv维度的、经所述性能恢复处理的transformer模型作为当前模型;

14、减小所述当前模型的潜在kv维度,以获得具有第二潜在kv维度的transformer模型,其中,所述第二潜在kv维度小于所述第一潜在kv维度;

15、以减小潜在kv维度后的所述当前模型的模型参数作为恢复起点,对具有所述第二潜在kv维度的transformer模型继续执行所述性能恢复处理;

16、重复所述减小潜在kv维度和继续执行所述性能恢复处理,以获得不同潜在kv维度对应的transformer模型。

17、根据本发明的第一方面,所述键归一化校准因子按照以下步骤确定:针对所述注意力层的各层中的各kv头,根据所述校准样本中多个词元对应的重构键的均方根幅值确定平均值,并将所述平均值确定为对应kv头的所述键归一化校准因子。

18、根据本发明的第一方面,所述注意力处理方法还包括:在执行旋转位置编码之前,将由所述键归一化校准因子和所述knorm的增益参数确定的键归一化尺度的rope分量,结合至rope键投影。

19、根据本发明的第一方面,所述mla按照以下步骤构建:

20、根据不同旋转子空间对注意力分布的贡献,选择并保留用于旋转位置编码rope的旋转子空间,并将其余键维度作为nope子空间;

21、将所述nope子空间对应的键投影和值投影组合为联合kv投影,并基于校准激活,以降低所述联合kv投影作用于所述校准激活后的输出重构误差为目标,对所述联合kv投影进行低秩近似,以初始化所述潜在kv表示的下投影、nope键上投影和值上投影。

22、本发明的第二方面公开了一种电子设备,所述电子设备包括存储有计算机可执行指令的存储器和处理器,当所述指令被所述处理器执行时,使得所述电子设备实施根据本发明的第一方面的注意力处理方法。

23、本发明的第三方面公开了一种计算机存储介质,在所述计算机存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行根据本发明的第一方面的注意力处理方法。

24、本发明的第四方面公开了一种计算机程序产品,包括计算机可执行指令,所述指令被处理器执行以实施根据本发明的第一方面的注意力处理方法。

25、本发明与现有技术相比,主要区别及其效果在于:

26、在本发明中,针对注意力层的kv头,采用基于校准样本中重构键的均方根幅值预先确定的、词元无关的键归一化校准因子,对knorm中原本随词元变化的键归一化因子进行近似,并将由所述键归一化校准因子和knorm的增益参数确定的相应键归一化尺度结合至nope键上投影。由此,可以使处理后的nope键上投影结合至查询侧,在自回归解码过程中针对当前词元的查询执行查询侧变换,并使变换后的查询直接与kv缓存中的潜在kv表示进行运算。因此,无需针对各历史词元显式生成完整的重构键,也无需在kv缓存中针对各历史词元额外存储随词元变化的knorm归一化因子,即可按照mla的潜在kv缓存方式执行注意力计算,从而减少kv缓存占用以及解码过程中的存储访问和内存带宽开销,提高自回归推理效率。

1.一种注意力处理方法,应用于包括查询归一化qnorm和键归一化knorm的transformer模型,所述transformer模型的注意力层采用多头潜在注意力mla,其特征在于,所述方法包括:

2.根据权利要求1所述的注意力处理方法,其特征在于,还包括对所述transformer模型进行性能恢复处理,所述性能恢复处理包括:

3.根据权利要求2所述的注意力处理方法,其特征在于,所述transformer模型还包括混合专家moe模块,所述moe模块包括路由器和多个专家;

4.根据权利要求2所述的注意力处理方法,其特征在于,所述性能恢复处理还包括:

5.根据权利要求1所述的注意力处理方法,其特征在于,所述键归一化校准因子按照以下步骤确定:

6.根据权利要求5所述的注意力处理方法,所述注意力处理方法还包括:

7.根据权利要求1所述的注意力处理方法,其特征在于,所述mla按照以下步骤构建:

8.一种电子设备,其特征在于,所述电子设备包括存储有计算机可执行指令的存储器和处理器,当所述指令被所述处理器执行时,使得所述电子设备实施根据权利要求1-7中任一项所述的注意力处理方法。

9.一种计算机存储介质,其特征在于,在所述计算机存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行根据权利要求1-7中任一项所述的注意力处理方法。

10.一种计算机程序产品,其特征在于,包括计算机可执行指令,所述指令被处理器执行以实施根据权利要求1-7中任一项所述的注意力处理方法。