本公开涉及计算机,特别涉及一种数据处理方法、数据处理装置、众核系统、电子设备及计算机可读存储介质。
背景技术:
1、大语言模型是自然语言处理领域的重要模型。当前较为主流的大语言模型都是基于transformer架构的,其主要由输入部分、编码器、解码器以及输出部分等组成。自注意力机制(self-attention,sa)机制是transformer架构的关键之一,通过自注意力机制可以捕捉输入序列的全局依赖关系,有助于对上下文信息进行准确处理。在基于自注意力机制进行数据处理时,需要一定的计算资源、带宽资源等作为资源支撑。
技术实现思路
1、本公开提供一种数据处理方法、数据处理装置、众核系统、电子设备及计算机可读存储介质。
2、第一方面,本公开提供了一种数据处理方法,应用于预设模型,所述预设模型包括至少一个注意力网络模块,该数据处理方法包括:根针对处于当前解码状态的任意一个注意力网络模块,根据所述注意力网络模块的输入隐藏状态序列确定所述注意力网络模块的目标查询向量、目标键向量和目标值向量;从预设空间获取所述注意力网络模块在前一解码状态的键值缓存压缩信息,并对所述前一解码状态的键值缓存压缩信息进行解压,得到前一解码状态的键值缓存信息;根据所述前一解码状态的键值缓存信息、所述目标查询向量、所述目标键向量和所述目标值向量进行处理,得到所述注意力网络模块的输出隐藏状态序列;根据所述目标键向量和所述目标值向量,得到增量键值缓存压缩信息,并将所述增量键值缓存压缩信息存储到所述预设空间,得到所述注意力网络模块在当前解码状态的键值缓存压缩信息。
3、第二方面,本公开提供了一种数据处理装置,应用于预设模型,所述预设模型包括至少一个注意力网络模块,该数据处理装置包括:确定模块,用于针对处于当前解码状态的任意一个注意力网络模块,根据所述注意力网络模块的输入隐藏状态序列确定所述注意力网络模块的目标查询向量、目标键向量和目标值向量;解压模块,用于从预设空间获取所述注意力网络模块在在前一解码状态的键值缓存压缩信息,并对所述前一解码状态的键值缓存压缩信息进行解压,得到前一解码状态的键值缓存信息;处理模块,用于根据所述前一解码状态的键值缓存信息、所述目标查询向量、所述目标键向量和所述目标值向量进行处理,得到所述注意力网络模块的输出隐藏状态序列;压缩模块,用于根据所述目标键向量和所述目标值向量,得到增量键值缓存压缩信息;存储模块,用于将所述增量键值缓存压缩信息存储到所述预设空间,得到所述注意力网络模块在当前解码状态的键值缓存压缩信息。
4、第三方面,本公开提供了一种众核系统,该众核系统包括:多个处理核;所述众核系统用于执行如本公开实施例任一项所述的数据处理方法。
5、第四方面,本公开提供了一种电子设备,该电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序,一个或多个所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开实施例任一项所述的数据处理方法。
6、第五方面,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序在被处理器/处理核执行时实现本公开实施例任一项所述的数据处理方法。
7、第六方面,本公开提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行本公开实施例任一项所述的数据处理方法。
8、本公开所提供的实施例,可以应用于预设模块,该预设模型包括至少一个注意力网络模块,针对处于当前解码状态的任意一个注意力网络模块,根据注意力网络模块的输入隐藏状态序列确定注意力网络模块的目标查询向量、目标键向量和目标值向量;从预设空间获取注意力网络模块在前一解码状态的键值缓存压缩信息,并对前一解码状态的键值缓存压缩信息进行解压,得到前一解码状态的键值缓存信息;根据前一解码状态的键值缓存信息、目标查询向量、目标键向量和目标值向量进行处理,得到注意力网络模块的输出隐藏状态序列;根据目标键向量和目标值向量,得到增量键值缓存压缩信息,并将增量键值缓存压缩信息存储到预设空间,得到注意力网络模块在当前解码状态的键值缓存压缩信息。
9、由此可知,在本公开实施例中,在执行预设模型的数据处理过程中,针对处于当前解码状态的任意一个注意力网络模块,将在之前处理过程中已经生成的键值信息压缩并存储到预设空间,得到了前一解码状态的键值缓存压缩信息,由于前一解码状态的键值缓存压缩信息是经过压缩的信息,数据量得以有效减少,因此可以减少对存储资源的占用量;另外,在当前解码过程中需要用到前一解码状态的键值缓存压缩信息时,再从该预设空间加载该注意力网络模块在前一解码状态的键值缓存压缩信息,进行解压得到解压后的键值缓存信息,并基于该解压后的键值缓存信息和相应的目标查询向量、目标键向量及目标值向量进行计算,得到该注意力网络模块的输出隐藏状态序列,然后根据目标键向量和目标值向量,得到增量键值缓存压缩信息,并将增量键值缓存压缩信息存储到预设空间,得到注意力网络模块在当前解码状态的键值缓存压缩信息,其中,由于向预设空间传输的当前迭代状态的键值缓存压缩信息仍然是压缩后的信息,因此对带宽要求也相应降低,可以减少对带宽资源的占用量。进一步地,由于可以并行地执行键值缓存压缩信息的加载、解压以及相应的计算,因此可以有效提升数据处理效率。
10、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种数据处理方法,其特征在于,应用于预设模型,所述预设模型包括至少一个注意力网络模块,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述从预设空间获取所述注意力网络模块在前一解码状态的键值缓存压缩信息,并对所述前一解码状态的键值缓存压缩信息进行解压,得到前一解码状态的键值缓存信息,包括:
4.根据权利要求3所述的方法,其特征在于,所述流式读取方式与所述流式解压方式采用并行执行方式。
5.根据权利要求3所述的方法,其特征在于,所述键值缓存压缩信息包括至少一个存储块;
6.根据权利要求5所述的方法,其特征在于,所述键值缓存压缩信息包括多个所述存储块,多个所述存储块的存储地址基于地址索引信息进行表征;
7.根据权利要求5所述的方法,其特征在于,所述存储块包括第一存储块,所述第一存储块中包括至少一个压缩历史键向量和至少一个压缩历史值向量;
8.根据权利要求1所述的方法,其特征在于,所述根据所述前一解码状态的键值缓存信息、所述目标查询向量、所述目标键向量和所述目标值向量进行处理,得到所述注意力网络模块的输出隐藏状态序列,包括:
9.根据权利要求1或8所述的方法,其特征在于,所述前一解码状态的键值缓存信息对应前一解码状态的历史键矩阵和前一解码状态的历史值矩阵;
10.根据权利要求1或8所述的方法,其特征在于,所述键值缓存压缩信息包括至少一个存储块,所述存储块包括至少一个压缩历史键向量和/或至少一个压缩历史值向量,所述键值缓存信息包括至少一个解压后的历史键向量和/或至少一个解压后的历史值向量,所述键值缓存压缩信息基于流式读取方式获取,并基于所述流式解压方式解压;
11.根据权利要求10所述的方法,其特征在于,所述基于所述目标查询向量与所述历史键向量进行计算,得到目标相似度子向量之前,所述方法还包括:
12.根据权利要求1或8所述的方法,其特征在于,所述注意力网络模块包括基于单头注意力机制的模块和基于多头注意力机制的模块;
13.根据权利要求12所述的方法,其特征在于,所述方法应用于众核系统,所述众核系统包括多个处理核,每个处理核对应至少一个注意力头的数据处理;
14.根据权利要求1所述的方法,其特征在于,所述根据所述目标键向量和所述目标值向量,得到增量键值缓存压缩信息,包括:
15.根据权利要求1或14所述的方法,其特征在于,所述根据所述目标键向量和所述目标值向量,得到增量键值缓存压缩信息,包括:
16.根据权利要求15所述的方法,其特征在于,所述压缩编码方式包括熵编码方式。
17.根据权利要求1或14所述的方法,其特征在于,所述键值缓存压缩信息包括至少一个存储块;
18.根据权利要求1或14所述的方法,其特征在于,所述键值缓存压缩信息包括至少一个存储块,所述存储块包括多个子块,且每个子块用于存储一个目标词元的增量键值缓存压缩信息;
19.根据权利要求18所述的方法,其特征在于,每个子块具有相同的存储容量;
20.根据权利要求1或14所述的方法,其特征在于,所述将所述增量键值缓存压缩信息存储到所述预设空间之前,所述方法还包括:
21.根据权利要求20所述的方法,其特征在于,所述键值缓存压缩信息对应的多个所述存储块的存储地址基于地址索引信息进行表征;
22.一种数据处理装置,其特征在于,应用于预设模型,所述预设模型包括至少一个注意力网络模块,所述装置包括:
23.一种众核系统,其特征在于,包括:多个处理核;
24.根据权利要求23所述的众核系统,其特征在于,所述众核系统还包括:至少一个解压器、至少一个压缩器以及通信接口;其中,
25.一种电子设备,其特征在于,包括:
26.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序在被处理器执行时实现如权利要求1-21中任一项所述的数据处理方法。