CN118095209A - 针对大语言模型的动态猜测解码方法、装置、设备及介质 - Google Patents

针对大语言模型的动态猜测解码方法、装置、设备及介质 Download PDF

Info

Publication number
CN118095209A
CN118095209A CN202410437756.6A CN202410437756A CN118095209A CN 118095209 A CN118095209 A CN 118095209A CN 202410437756 A CN202410437756 A CN 202410437756A CN 118095209 A CN118095209 A CN 118095209A
Authority
CN
China
Prior art keywords
model
text
substructure
acceleration ratio
draft
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.)
Granted
Application number
CN202410437756.6A
Other languages
English (en)
Other versions
CN118095209B (zh
Inventor
汪玉
宁雪妃
周紫轩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN202410437756.6A priority Critical patent/CN118095209B/zh
Publication of CN118095209A publication Critical patent/CN118095209A/zh
Application granted granted Critical
Publication of CN118095209B publication Critical patent/CN118095209B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Machine Translation (AREA)

Abstract

本公开涉及人工智能技术领域,尤其涉及针对大语言模型的动态猜测解码方法、装置、设备及介质,该方法包括:响应于获取到待处理的输入文本,从预设结构集中采样不同的多个模型子结构;基于输入文本,确定每个模型子结构的加速比;根据每个模型子结构对应的加速比,从多个模型子结构中选取加速比最大的模型子结构作为输入文本的目标草稿模型;利用目标草稿模型对输入文本进行预测,得到目标草稿模型预测出的草稿词块,并使用大语言模型对草稿词块进行验证,以得到输入文本对应的解码结果。由此,能够为不同的输入文本,使用合适的目标草稿模型进行猜测解码,同时减小额外的计算开销,以提高接收率和加速推理效果,有利于提高猜测解码的效率和性能。

Description

针对大语言模型的动态猜测解码方法、装置、设备及介质
技术领域
本公开涉及人工智能技术领域,尤其涉及一种针对大语言模型的动态猜测解码方法、装置、设备及介质。
背景技术
目前,大语言模型(Large Language Model,LLM)在推理过程中通常采用自回归解码(Autoregressive Decoding)的方式,即按顺序依次生成每个词块(token,又称为词元),且每一步仅完成1个token的解码。因此,为了计算和生成仅仅1个token,自回归解码过程需要将整个LLM的权重都加载到GPU(Graphic Processing Unit,图形处理单元)的计算单元中去,这就导致了推理过程中非常大的访存开销和极不均衡的计算-访存比,从而导致GPU利用率非常低下。而猜测解码正是一种缓解上述问题,提升GPU的计算利用率,来加速LLM的推理过程的方法。
猜测解码是指在解码过程中引入“猜测”这一步骤。具体来说,猜测解码可以大致分为两个阶段:猜测阶段和验证阶段。在猜测阶段,对于当前的输入文本,猜测解码方法首先利用一个“便宜”的草稿模型(Draft Model)生成连续的若干个草稿词块(draft token),值得注意的是,该草稿模型往往具有相比于LLM小得多的参数量和计算量,因此这一过程带来的开销非常小。接着,在验证阶段,猜测编码使用LLM对draft token进行并行验证,并接收通过验证的draft token作为解码结果。由于验证阶段是通过增加批(batch)维度并行进行的,因此除了会增加一些存储开销外,验证过程的延时和LLM做单步解码的延时是一样的。简单分析可知,若忽略草稿模型的生成代价,当接收阶段的平均接收token个数大于1时,猜测解码能获得更高的加速推理效果,例如,假设当每次验证后能平均接收2个token,即LLM做1步推理可以产生2个token,相比于自回归编码过程中1步推理仅能产生1个token,在生成token数量相同的情况下,猜测编码能获得2倍的加速推理效果。
猜测编码的加速效果与草稿模型的接收率和模型规模有关,现有大多研究工作关注于如何提升其接收率,以及如何尽可能减小草稿模型的规模,而猜测解码的核心在于利用一个规模较小的草稿模型,尽可能猜对LLM的输出结果,从而减小LLM的计算次数。而如何设计一个准确的草稿模型,是目前研究猜测解码的关键。现有的研究技术大多设计一种通用的草稿模型来应用于各种不同难度的输入文本上。但这些现有技术大多忽略了一个问题,即不同难度的文本,草稿模型预测回答的难度不同,对于简单的文本,仅使用规模较小的草稿模型就能获得较高的接收率,而对于复杂的文本,则可能需要规模更大的草稿模型才能猜对。因此,使用通用的草稿模型并不能很好地满足不同难度的输入文本的预测需求。此外,大部分研究工作还需要针对通用草稿模型微调出一个用于预测的草稿模型,这会导致额外的计算开销。
发明内容
有鉴于此,本公开提出了一种针对大语言模型的动态猜测解码方法、装置、设备及介质,能够为不同的输入文本,使用合适的草稿模型,同时尽可能地减小额外的计算开销,以达到尽可能高的接收率和加速推理效果。
根据本公开的一方面,提供了一种针对大语言模型的动态猜测解码方法,包括:响应于获取到待处理的输入文本,从预设结构集中采样不同的多个模型子结构,所述模型子结构包括所述大语言模型的部分结构,不同模型子结构所包括的所述大语言模型的部分结构不同;基于所述输入文本,确定每个模型子结构的加速比,任一模型子结构的加速比表征对同一输入文本利用模型子结构作为草稿模型进行猜测解码与利用所述大语言模型进行自回归解码,分别生成相同长度的词块所消耗的时间比;根据每个模型子结构对应的加速比,从所述多个模型子结构中选取加速比最大的模型子结构作为所述输入文本的目标草稿模型;利用所述目标草稿模型对所述输入文本进行预测,得到所述目标草稿模型预测出的草稿词块,并使用所述大语言模型对所述草稿词块进行验证,以得到所述输入文本对应的解码结果。
在一种可能的实现方式中,所述基于所述输入文本,确定每个模型子结构的加速比,包括:将所述多个模型子结构中的每个模型子结构与所述输入文本输入至加速比预测器,得到所述加速比预测器对每个模型子结构所预测的加速比。
在一种可能的实现方式中,所述加速比预测器包括:结构编码器、文本编码器以及预测器头;其中,所述将每个模型子结构与所述输入文本输入至加速比预测器,得到所述加速比预测器对每个模型子结构所预测的加速比,包括:将所述输入文本输入至所述文本编码器,得到所述文本编码器输出的文本特征向量;将每个模型子结构的表示分别输入至所述结构编码器,得到所述结构编码器输出的每个模型子结构的结构特征向量;将每个模型子结构的结构特征向量与所述文本特征向量拼接后输入至所述预测器头中,得到所述预测器头输出的每个模型子结果的加速比。
在一种可能的实现方式中,所述加速比预测器的训练过程包括:获取文本数据集以及样本结构集,所述文本数据集中包括多个文本数据,所述样本结构集中包括大语言模型的多个样本子结构;将所述多个文本数据与所述多个样本子结构组合成多个架构-文本对,并计算各个架构-文本对的标注加速比,每个架构-文本对中包括一个文本数据与一个样本子结构的表示;将每个架构-文本对分别输入至初始预测器中,得到所述初始预测器输出的每个架构-文本对的预测加速比;根据多个架构-文本对的标注加速比与预测加速比,基于损失函数确定加速比损失,并通过最小化所述加速比损失训练所述初始预测器,以得到训练后的所述加速比预测器。
在一种可能的实现方式中,所述结构编码器与所述预测器头使用多层感知机模型,所述文本编码器使用对比语言图像预训练模型。
在一种可能的实现方式中,所述大语言模型具有多层,每层包括注意力模块与前馈神经网络,任一模型子结构包括所述大语言模型的至少一层中的注意力模块和/或前馈神经网络。
根据本公开的另一方面,提供了一种针对大语言模型的动态猜测解码装置,包括:采样模块,用于响应于获取到待处理的输入文本,从预设结构集中采样不同的多个模型子结构,所述模型子结构包括所述大语言模型的部分结构,不同模型子结构所包括的所述大语言模型的部分结构不同;加速比确定模块,用于基于所述输入文本,确定每个模型子结构的加速比,任一模型子结构的加速比表征对同一输入文本利用模型子结构作为草稿模型进行猜测解码与利用所述大语言模型进行自回归解码,分别生成相同长度的词块所消耗的时间比;选取模块,用于根据每个模型子结构对应的加速比,从所述多个模型子结构中选取加速比最大的模型子结构作为所述输入文本的目标草稿模型;解码模块,用于利用所述目标草稿模型对所述输入文本进行预测,得到所述草稿模型预测出的草稿词块,并使用所述大语言模型对所述草稿词块进行验证,以得到所述输入文本对应的解码结果。
根据本公开的另一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
根据本公开的各方面,通过针对不同的输入文本,选取大语言模型的一个加速比最高的模型子结构,并用该模型子结构作为该输入文本所使用的目标草稿模型进行猜测解码,能够实现为不同输入文本确定出一个适配不同输入文本的目标草稿模型,同时可以尽可能降低猜测解码过程中额外的计算开销,以达到尽可能高的接收率和加速推理效果,有利于提高猜测解码的效率和性能。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开实施例的一种针对大语言模型的动态猜测解码方法的流程图。
图2示出根据本公开实施例的Transformer架构中的单层结构的示意图。
图3示出根据本公开实施例的一种加速比预测器的模型结构的示意图。
图4示出根据本公开实施例的一种针对大语言模型的动态猜测解码装置的框图。
图5示出根据本公开实施例示出的一种电子设备的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
如上所述,使用通用的草稿模型并不能很好地满足不同难度的输入文本的预测需求,由此,本公开实施例提出一种针对大语言模型的动态猜测解码方法,该方法的核心是:对于不同的输入文本,快速决定大语言模型中一个最优的模型子结构,并用该模型子结构作为草稿模型进行猜测解码。该方法的难点在于,如何针对不同的输入文本都能快速、准确地决定一个最优的模型子结构,由此,本公开实施例还提出一种将最优模型子结构的选取转化成一个优化问题,并采用一类基于预测器(Predictor)的搜索方法进行求解,来实现针对不同输入文本得到一个最优的模型子结构。
在实际应用中,本公开实施例的动态猜测解码方法可以通过软件或硬件改造部署在各种终端设备上,本申请涉及的终端设备可以是指具有无线连接功能的设备,无线连接的功能是指可以通过wifi、蓝牙等无线连接方式与其他终端设备进行连接,本申请的终端设备也可以具有有线连接进行通信的功能。本申请的终端设备可以是触屏的、也可以是非触屏的、也可以是没有屏幕的,触屏的可以通过手指、触控笔等在显示屏幕上点击、滑动等方式对终端设备进行控制,非触屏的设备可以连接鼠标、键盘、触控面板等输入设备,通过输入设备对终端设备进行控制,没有屏幕的设备比如说可以是没有屏幕的蓝牙音箱等。举例来说,本公开的终端设备可以是计算机、智能手机、上网本、平板电脑、笔记本电脑、可穿戴电子设备(如智能手环、智能手表等)、TV、虚拟现实设备等。
本公开实施例的动态猜测方法也可以部署于服务器上,该服务器可以位于云端或本地,可以是实体设备,也可以是虚拟设备,如虚拟机、容器等,具有无线通信功能,其中,无线通信功能可设置于该服务器的芯片(***)或其他部件或组件。可以是指具有无线连接功能的设备,无线连接的功能是指可以通过Wi-Fi、蓝牙等无线连接方式与其他服务器或终端设备进行连接,本公开的服务器也可以具有有线连接进行通信的功能。例如,本公开的服务器可位于云端,与终端设备进行通信,接收终端设备发送的输入文本,并利用部署于服务器的动态猜测解码方法对输入文本进行动态猜测解码,得到解码结果并返回给终端设备。
以下通过图1至图4对本公开实施例提出的针对大语言模型的动态猜测解码方法进行详细介绍。
图1示出根据本公开实施例的一种针对大语言模型的动态猜测解码方法的流程图。该方法可以由上述终端设备或服务器执行,如图1所示,该方法包括:步骤S11至步骤S14。
在步骤S11中,响应于获取到待处理的输入文本,从预设结构集中采样不同的多个模型子结构,模型子结构包括大语言模型的部分结构,不同模型子结构所包括的大语言模型的部分结构不同。
可知晓,大语言模型可以以Transformer架构为核心,Transformer架构通常由多层组成,每一个层的结构是重复相同的,而单层结构如图2所示,其主要包含注意力模块(Attention Block)、前馈神经网络(Feed Forward Network)和归一化层(LayerNorm)。由此,本公开实施例定义大语言模型的模型子结构包括至少一个不同层中的注意力模块和/或前馈神经网络的组合,也即大语言模型具有多层,每层包括注意力模块与前馈神经网络,任一模型子结构包括大语言模型的至少一层中的注意力模块和/或前馈神经网络。在实际应用中,可以预先基于大语言模型的模型架构生成大量模型子结构,也即生成预设结构集。应理解,大语言模型还可以包括除了模型子结构之外的通用部分,例如,嵌入层、位置编码模块等。
示例性地,假设大语言模型共有层,使用表示一个 模型子结构,其中的取值集合均为表示第层中的注意力模块不在/在 模型子结构中,表示第个层中的前馈神经网络不在/在模型子结构中,例如,若大 语言模型具有两层,代表该模型子结构中包括大语言模型的 第2层中的注意力模块和第1层中的前馈神经网络,代表该模 型子结构中包括大语言模型的第1层中的注意力模块、第2层中的注意力模型以及第1层中 的前馈神经网络,以此类推。经过组合数学计算可知,针对共有个层的大语言模型,模型子 结构的设计空间的规模为,也即预设结构集中可以包括个模型子结构,例如,若大语 言模型包含32层,则模型子结构的设计空间的规模达到,则该大语言模型 对应的预设结构集中可以包括个模型子结构。
在实际应用中,任一模型子结构中不同注意力模块与前馈神经网络之间也可以设置大语言模型中的归一化层,对此本公开实施例不作限制。
考虑到,预设结构集中所包含的模型子结构数量较多,从预设结构集中全部模型 子结构中选取某一模型子结构来作为输入文本对应的草稿模型所需消耗的时间较长,因 此,可以从预设结构集采样个模型子结构。应理解,可以根据具体应用场景和实际需求, 采用不同大小的,也即可以采样不同数量的模型子结构,以从采样出的多个模型子结构 中选取一个最优的模型子结构作为草稿模型。
在步骤S12中,基于输入文本,确定每个模型子结构的加速比,任一模型子结构的加速比表征对同一输入文本利用模型子结构作为草稿模型进行猜测解码与利用大语言模型进行自回归解码,分别生成相同长度的词块所消耗的时间比。
基于上述预设结构集中采样出的多个模型子结构,可以设置草稿模型的选取目标 为:对于一个具体的输入文本,期望得到一个最优的模型子结构,使得采用该模型子结构作为草稿模型的情况下,对输入文本的猜测解码的加速比尽可能高。由此,在一种可能的 实现方式中,可以遍历多个模型子结构中的每一个模型子结构,基于每一个模型子结构实 际做一遍猜测解码,以及利用大语言模型执行一遍自回归解码,并测量每一个模型子结构 与大语言模型分别生成相同长度的词块所消耗的时间比,来得到每个模型子结构对应的加 速比,进而可以从所有模型子结构中挑选加速比最高的模型子结构作为该输入文本所使用 的目标草稿模型。
考虑到由于预设结构集的规模可能非常庞大,采样出的模型子结构的数量也较多,对每个模型子结构分别做一次猜测解码需要耗费分钟量级的时间,这就导致仅针对一个输入文本,可能就需要耗费天量级的时间开销,无法满足实际应用中的交互场景下对输入文本进行快速解码的实时性要求。由此,本公开实施例提出一种基于加速比预测器的搜索方式,能够快速地为每个输入文本选出合适的模型子结构,在一种可能的实现方式中,上述基于输入文本,确定每个模型子结构的加速比,包括:
将每个模型子结构与输入文本输入至加速比预测器,得到加速比预测器对每个模 型子结构所预测的加速比。该加速比预测器以模型子结构的表示和输入文本为输 入,输出对应的加速比,也即,
其中,加速比预测器可以是采用本领域已知的神经网络模型进行构建,本公开 实施例对于该加速比预测器的模型结构不作限制,在一种可能的实现方式中,图3示出本公 开实施例提供的一种加速比预测器的模型结构,如图3所示,加速比预测器包括:结构编码 器、文本编码器以及预测器头。
基于上述图3示出的加速比预测器,上述将每个模型子结构与输入文本输入至加速比预测器,得到加速比预测器对每个模型子结构所预测的加速比,包括:
将输入文本输入至文本编码器,得到文本编码器输出的文本特征向量;
将每个模型子结构的表示分别输入至结构编码器,得到结构编码器输出的每个模型子结构的结构特征向量;
将每个模型子结构的结构特征向量与文本特征向量拼接后输入至预测器头中,得到预测器头输出的每个模型子结果的加速比。
示例性地,假设结构编码器表示为和文本编码器表示为。其中,结构编 码器以模型子结构的表示作为输入,输出对应的结构特征向量,即,; 而文本编码器则以输入文本作为输入,输出对应的文本特性向量,即; 然后将结构特征向量与文本特征向量进行拼接后输入到预测器头中,得到对应的加速 比,即。应理解,利用结构编码器可以提取每个模型子结 构的结构特征向量,进而每个模型子结构的结构特征向量可以分别与文本特征向量进行拼 接并输入至预测器头中。其中,结构特征向量与文本特征向量可以理解为隐空间表征,表达 模型子结构的结构特征以及输入文本的文本特征。
可选地,结构编码器与预测器头可以使用多层感知机(Multi-Layer Perceptron,MLP)模型,文本编码器可以使用对比语言图像预训练(Contrastive Language-Image Pre-training,CLIP)模型。应理解,上述利用MLP模型与CLIP模型来构建加速比预测器的方式是本公开实施例提供的一种可能的实现方式,实际上,在本公开实施例的启示下,本领域技术人员也可以采用本领域其它的神经网络模型来构建加速比预测器,例如,还可以使用长短时记忆(Long short-term memory,LSTM)模型来作为结构编码器和文本编码器,因此,只要使用加速比预测器是基于输入文本与模型子结构来预测加速比的方式均应在本公开的保护范围内。
在实际应用中,可以基于现有的神经网络模型构建出一个初始预测器后,对初始预测器进行训练,来得到能够预测加速比的加速比预测器,在一种可能的实现方式中,加速比预测器的训练过程包括:
获取文本数据集以及样本结构集,文本数据集中包括多个文本数据,样本结构集中包括大语言模型的多个样本子结构;
将多个文本数据与多个样本子结构组合成多个架构-文本对,并计算各个架构-文本对的标注加速比,每个架构-文本对中包括一个文本数据与一个样本子结构的表示;
将每个架构-文本对分别输入至初始预测器中,得到初始预测器输出的每个架构-文本对的预测加速比;
根据多个架构-文本对的标注加速比与预测加速比,基于损失函数确定加速比损失,并通过最小化加速比损失训练初始预测器,以得到训练后的加速比预测器。
其中,文本数据集可以采用本领域开源的数据集,例如,可以使用Vicuna-80数据集来构造训练数据对初始预测器进行训练,Vicuna-80是一个包含8个不同种类、80个问题的文本数据集。样本结构集可以采用上述预设结构集,或者也可以从上述预设结构集中选取部分模型子结构作为样本子结构,来构成样本结构集,对此本公开实施例不作限制。
其中,可以将文本数据集中的多个文本数据与样本结构集中的多个样本子结构进行组对,来得到多个架构-文本对,进而可以基于每一个架构-文本对中的样本子结构的表示和文本数据让样本子结构实际做一遍猜测解码,以及利用大语言模型对文本数据执行一遍自回归解码,并测量每一个样本子结构与大语言模型分别生成相同长度的词块所消耗的时间比,来得到每个样本子结构对应的加速比,作为每个架构-文本对的标注加速比。
在训练过程中,可以将每个架构-文本对分别输入至初始预测器中,得到初始预测器输出的每个架构-文本对的预测加速比,然后基于损失函数计算多个架构-文本对的标注加速比与预测加速比之间的加速比损失,并通过最小化加速比损失来训练初始预测器,例如,基于加速比损失通过反向传播和梯度下降等方式调整初始预测器的模型参数,以迭代减小加速比损失,至加速比损失收敛至最小,得到训练好的加速比预测器。
示例性,使用Vicuna-80作为文本数据集,以及从预设结构集中采样100个模型子 架构作为样本结构集,让每个模型子架构搭配Vicuna-80上的每个问题,可以构成8000个架 构-文本对,j∈[1,8000],进而计算这8000个架构-文本对各自的加速比,从而得到 训练集,并使用公式(1)示出的L2损失函数来确定加速比损失,进而利用 该加速比损失对初始预测器进行训练,以得到上述加速比预测器
应理解,还可以采用任何其他损失函数(例如,均方误差(MSE)、交叉熵损失 (Cross-Entropy Loss)等),对此本公开实施例不作限制。应理解,尽管在构建训练集的过 程中需要消耗一定的计算资源进行加速比的计算,但该过程为离线进行的,即训练好加速 比预测器后,在后续的使用过程中将不再消耗这些资源。并且利用本公开实施例提出的上 述加速比预测器来预测模型子结构的加速比所产生的单次推理开销非常小,仅需要毫秒量 级的时间,因此可以在后续使用加速比预测器来选取模型子结构的搜索过程可以在秒量级 到分钟量级之间完成,从而能满足实际应用中的交互场景下对输入文本进行快速解码的实 时性要求,并且不产生大量的计算开销。
在步骤S13中,根据每个模型子结构对应的加速比,从多个模型子结构中选取加速比最大的模型子结构作为输入文本的目标草稿模型。
应理解,通过上述步骤S12可以得到从预设结构集中采样出的多个模型子结构中每个模型子结构对应的加速比,进而可以从多个模型子结构中选取一个加速比最大的模型子结构作为输入文本的目标草稿模型,来执行后续步骤S14中的猜测解码。
在实际应用中,还可以采用多轮迭代的搜索策略,也即上述步骤S11至步骤S13可以迭代执行至少两轮,来确定至少两次采样出的每个模型子结构的加速比,以能够选出加速比最优的模型子结构,对此本公开实施例不作限制。
在步骤S14中,利用目标草稿模型对输入文本进行预测,得到目标草稿模型预测出的草稿词块,并使用大语言模型对草稿词块进行验证,以得到输入文本对应的解码结果。
在实际应用中,在利用上述步骤S11至步骤S13得到输入文本对应的目标草稿模型后,可以将输入文本输入至目标草稿模型中,得到目标草稿模型输出的至少两个草稿词块,应理解,本领域技术人员可以设置目标草稿模型所能输出的草稿词块的数量,对此本公开实施例不作限制。
进而可以将目标草稿模型输出的至少两个草稿词块输入至大语言模型中,以使用大语言模型对目标草稿模型输出的至少两个草稿词块进行并行验证,并接收通过验证的草稿词块作为解码结果。其中,输入文本的解码结果可以理解为利用目标草稿模型与大语言模型对输入文本所预测出的答案,应理解,本公开实施例对于步骤S14中利用目标草稿模型以及大语言模型进行猜测解码过程不作限制。
根据本公开实施例,通过针对不同的输入文本,选取大语言模型的一个加速比最高的模型子结构,并用该模型子结构作为该输入文本所使用的目标草稿模型进行猜测解码,能够实现为不同输入文本确定出一个适配不同输入文本的目标草稿模型,同时可以尽可能降低猜测解码过程中额外的计算开销,以达到尽可能高的接收率和加速推理效果,有利于提高猜测解码的效率和性能。
图4示出根据本公开实施例的一种针对大语言模型的动态猜测解码装置的框图,如图4所示,该装置包括:
采样模块401,用于响应于获取到待处理的输入文本,从预设结构集中采样不同的多个模型子结构,所述模型子结构包括所述大语言模型的部分结构,不同模型子结构所包括的所述大语言模型的部分结构不同;
加速比确定模块402,用于基于所述输入文本,确定每个模型子结构的加速比,任一模型子结构的加速比表征对同一输入文本利用模型子结构作为草稿模型进行猜测解码与利用所述大语言模型进行自回归解码,分别生成相同长度的词块所消耗的时间比;
选取模块403,用于根据每个模型子结构对应的加速比,从所述多个模型子结构中选取加速比最大的模型子结构作为所述输入文本的目标草稿模型;
解码模块404,用于利用所述目标草稿模型对所述输入文本进行预测,得到所述草稿模型预测出的草稿词块,并使用所述大语言模型对所述草稿词块进行验证,以得到所述输入文本对应的解码结果。
在一种可能的实现方式中,所述基于所述输入文本,确定每个模型子结构的加速比,包括:将所述多个模型子结构中的每个模型子结构与所述输入文本输入至加速比预测器,得到所述加速比预测器对每个模型子结构所预测的加速比。
在一种可能的实现方式中,所述加速比预测器包括:结构编码器、文本编码器以及预测器头;其中,所述将每个模型子结构与所述输入文本输入至加速比预测器,得到所述加速比预测器对每个模型子结构所预测的加速比,包括:将所述输入文本输入至所述文本编码器,得到所述文本编码器输出的文本特征向量;将每个模型子结构的表示分别输入至所述结构编码器,得到所述结构编码器输出的每个模型子结构的结构特征向量;将每个模型子结构的结构特征向量与所述文本特征向量拼接后输入至所述预测器头中,得到所述预测器头输出的每个模型子结果的加速比。
在一种可能的实现方式中,所述加速比预测器的训练过程包括:获取文本数据集以及样本结构集,所述文本数据集中包括多个文本数据,所述样本结构集中包括大语言模型的多个样本子结构;将所述多个文本数据与所述多个样本子结构组合成多个架构-文本对,并计算各个架构-文本对的标注加速比,每个架构-文本对中包括一个文本数据与一个样本子结构的表示;将每个架构-文本对分别输入至初始预测器中,得到所述初始预测器输出的每个架构-文本对的预测加速比;根据多个架构-文本对的标注加速比与预测加速比,基于损失函数确定加速比损失,并通过最小化所述加速比损失训练所述初始预测器,以得到训练后的所述加速比预测器。
在一种可能的实现方式中,所述结构编码器与所述预测器头使用多层感知机模型,所述文本编码器使用对比语言图像预训练模型。
在一种可能的实现方式中,所述大语言模型具有多层,每层包括注意力模块与前馈神经网络,任一模型子结构包括所述大语言模型的至少一层中的注意力模块和/或前馈神经网络。
根据本公开实施例,通过针对不同的输入文本,选取大语言模型的一个加速比最高的模型子结构,并用该模型子结构作为该输入文本所使用的目标草稿模型进行猜测解码,能够实现为不同输入文本确定出一个适配不同输入文本的目标草稿模型,同时可以尽可能降低猜测解码过程中额外的计算开销,以达到尽可能高的接收率和加速推理效果,有利于提高猜测解码的效率和性能。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
图5示出根据本公开实施例示出的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器或终端设备。参照图5,电子设备1900包括处理组件1912,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1912的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1912被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出接口1958(I/O接口)。电子设备1900可以操作基于存储在存储器1932的操作***,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1912执行以完成上述方法。
本公开可以是***、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种针对大语言模型的动态猜测解码方法,其特征在于,包括:
响应于获取到待处理的输入文本,从预设结构集中采样不同的多个模型子结构,所述模型子结构包括所述大语言模型的部分结构,不同模型子结构所包括的所述大语言模型的部分结构不同;
基于所述输入文本,确定每个模型子结构的加速比,任一模型子结构的加速比表征对同一输入文本利用模型子结构作为草稿模型进行猜测解码与利用所述大语言模型进行自回归解码,分别生成相同长度的词块所消耗的时间比;
根据每个模型子结构对应的加速比,从所述多个模型子结构中选取加速比最大的模型子结构作为所述输入文本的目标草稿模型;
利用所述目标草稿模型对所述输入文本进行预测,得到所述目标草稿模型预测出的草稿词块,并使用所述大语言模型对所述草稿词块进行验证,以得到所述输入文本对应的解码结果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述输入文本,确定每个模型子结构的加速比,包括:
将所述多个模型子结构中的每个模型子结构与所述输入文本输入至加速比预测器,得到所述加速比预测器对每个模型子结构所预测的加速比。
3.根据权利要求2所述的方法,其特征在于,所述加速比预测器包括:结构编码器、文本编码器以及预测器头;
其中,所述将每个模型子结构与所述输入文本输入至加速比预测器,得到所述加速比预测器对每个模型子结构所预测的加速比,包括:
将所述输入文本输入至所述文本编码器,得到所述文本编码器输出的文本特征向量;
将每个模型子结构的表示分别输入至所述结构编码器,得到所述结构编码器输出的每个模型子结构的结构特征向量;
将每个模型子结构的结构特征向量与所述文本特征向量拼接后输入至所述预测器头中,得到所述预测器头输出的每个模型子结果的加速比。
4.根据权利要求2或3所述的方法,其特征在于,所述加速比预测器的训练过程包括:
获取文本数据集以及样本结构集,所述文本数据集中包括多个文本数据,所述样本结构集中包括大语言模型的多个样本子结构;
将所述多个文本数据与所述多个样本子结构组合成多个架构-文本对,并计算各个架构-文本对的标注加速比,每个架构-文本对中包括一个文本数据与一个样本子结构的表示;
将每个架构-文本对分别输入至初始预测器中,得到所述初始预测器输出的每个架构-文本对的预测加速比;
根据多个架构-文本对的标注加速比与预测加速比,基于损失函数确定加速比损失,并通过最小化所述加速比损失训练所述初始预测器,以得到训练后的所述加速比预测器。
5.根据权利要求3所述的方法,其特征在于,所述结构编码器与所述预测器头使用多层感知机模型,所述文本编码器使用对比语言图像预训练模型。
6.根据权利要求1至3任一项所述的方法,其特征在于,所述大语言模型具有多层,每层包括注意力模块与前馈神经网络,任一模型子结构包括所述大语言模型的至少一层中的注意力模块和/或前馈神经网络。
7.一种针对大语言模型的动态猜测解码装置,其特征在于,包括:
采样模块,用于响应于获取到待处理的输入文本,从预设结构集中采样不同的多个模型子结构,所述模型子结构包括所述大语言模型的部分结构,不同模型子结构所包括的所述大语言模型的部分结构不同;
加速比确定模块,用于基于所述输入文本,确定每个模型子结构的加速比,任一模型子结构的加速比表征对同一输入文本利用模型子结构作为草稿模型进行猜测解码与利用所述大语言模型进行自回归解码,分别生成相同长度的词块所消耗的时间比;
选取模块,用于根据每个模型子结构对应的加速比,从所述多个模型子结构中选取加速比最大的模型子结构作为所述输入文本的目标草稿模型;
解码模块,用于利用所述目标草稿模型对所述输入文本进行预测,得到所述草稿模型预测出的草稿词块,并使用所述大语言模型对所述草稿词块进行验证,以得到所述输入文本对应的解码结果。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为在执行所述存储器存储的指令时,实现权利要求1至6中任意一项所述的方法。
9.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至6中任意一项所述的方法。
10.一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行权利要求1至6中任意一项所述的方法。
CN202410437756.6A 2024-04-12 2024-04-12 针对大语言模型的动态猜测解码方法、装置、设备及介质 Active CN118095209B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410437756.6A CN118095209B (zh) 2024-04-12 2024-04-12 针对大语言模型的动态猜测解码方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410437756.6A CN118095209B (zh) 2024-04-12 2024-04-12 针对大语言模型的动态猜测解码方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN118095209A true CN118095209A (zh) 2024-05-28
CN118095209B CN118095209B (zh) 2024-07-02

Family

ID=91147750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410437756.6A Active CN118095209B (zh) 2024-04-12 2024-04-12 针对大语言模型的动态猜测解码方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN118095209B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170301346A1 (en) * 2016-04-18 2017-10-19 Interactions Llc Hierarchical speech recognition decoder
US20190279072A1 (en) * 2018-03-09 2019-09-12 Canon Kabushiki Kaisha Method and apparatus for optimizing and applying multilayer neural network model, and storage medium
CN110851987A (zh) * 2019-11-14 2020-02-28 上汽通用五菱汽车股份有限公司 基于加速比预测计算时长的方法、装置和存储介质
CN114819088A (zh) * 2022-04-29 2022-07-29 北京地平线信息技术有限公司 网络结构搜索方法、装置、可读存储介质及电子设备
US11516158B1 (en) * 2022-04-20 2022-11-29 LeadIQ, Inc. Neural network-facilitated linguistically complex message generation systems and methods
CN117576534A (zh) * 2023-11-24 2024-02-20 华南理工大学 一种两阶段图像描述生成方法、***、装置及存储介质
US20240061998A1 (en) * 2022-08-21 2024-02-22 Nec Laboratories America, Inc. Concept-conditioned and pretrained language models based on time series to free-form text description generation
WO2024045475A1 (zh) * 2022-09-01 2024-03-07 北京百度网讯科技有限公司 语音识别方法、装置、设备和介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170301346A1 (en) * 2016-04-18 2017-10-19 Interactions Llc Hierarchical speech recognition decoder
US20190279072A1 (en) * 2018-03-09 2019-09-12 Canon Kabushiki Kaisha Method and apparatus for optimizing and applying multilayer neural network model, and storage medium
CN110851987A (zh) * 2019-11-14 2020-02-28 上汽通用五菱汽车股份有限公司 基于加速比预测计算时长的方法、装置和存储介质
US11516158B1 (en) * 2022-04-20 2022-11-29 LeadIQ, Inc. Neural network-facilitated linguistically complex message generation systems and methods
CN114819088A (zh) * 2022-04-29 2022-07-29 北京地平线信息技术有限公司 网络结构搜索方法、装置、可读存储介质及电子设备
US20240061998A1 (en) * 2022-08-21 2024-02-22 Nec Laboratories America, Inc. Concept-conditioned and pretrained language models based on time series to free-form text description generation
WO2024045475A1 (zh) * 2022-09-01 2024-03-07 北京百度网讯科技有限公司 语音识别方法、装置、设备和介质
CN117576534A (zh) * 2023-11-24 2024-02-20 华南理工大学 一种两阶段图像描述生成方法、***、装置及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TAO XIAO 等: ""Compressed LSTM using balanced sparsity"", 2021 NINTH INTERNATIONAL CONFERENCE ON ADVANCED CLOUD AND BIG DATA (CBD), 11 July 2022 (2022-07-11) *

Also Published As

Publication number Publication date
CN118095209B (zh) 2024-07-02

Similar Documents

Publication Publication Date Title
JP7166322B2 (ja) モデルを訓練するための方法、装置、電子機器、記憶媒体およびコンピュータプログラム
US10043512B2 (en) Generating target sequences from input sequences using partial conditioning
JP6666457B2 (ja) リカレントニューラルネットワークモデルの圧縮
US10656909B2 (en) Learning intended user actions
US11151324B2 (en) Generating completed responses via primal networks trained with dual networks
WO2017166449A1 (zh) 机器学习模型生成方法和装置
JP2022058915A (ja) 画像認識モデルをトレーニングするための方法および装置、画像を認識するための方法および装置、電子機器、記憶媒体、並びにコンピュータプログラム
KR102524766B1 (ko) 자연어 및 지식 그래프 기반 표현 학습 방법 및 장치
CN111666416B (zh) 用于生成语义匹配模型的方法和装置
KR20190117713A (ko) 신경망 아키텍처 최적화
JP2019509539A (ja) リカレントニューラルネットワークモデルの圧縮
CN111340221B (zh) 神经网络结构的采样方法和装置
CN111667056B (zh) 用于搜索模型结构的方法和装置
US20230042221A1 (en) Modifying digital images utilizing a language guided image editing model
CN111582479A (zh) 神经网络模型的蒸馏方法和装置
KR20210105976A (ko) 신경망을 위한 복합 모델 스케일링
CN111340220A (zh) 用于训练预测模型的方法和装置
WO2022112895A1 (en) Automated deep learning architecture selection for time series prediction with user interaction
KR20220094564A (ko) 딥러닝 모델 서빙 최적화를 위한 모델 자동 경량화 방법 및 장치, 이를 이용한 클라우드 추론 서비스 제공 방법
CN111353601A (zh) 用于预测模型结构的延时的方法和装置
US11281867B2 (en) Performing multi-objective tasks via primal networks trained with dual networks
CN117121016A (zh) 在低级基元上的粒度神经网络架构搜索
EP3855341A1 (en) Language generation method and apparatus, electronic device and storage medium
CN113657468A (zh) 预训练模型的生成方法、装置、电子设备和存储介质
CN118095209B (zh) 针对大语言模型的动态猜测解码方法、装置、设备及介质

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
GR01 Patent grant