掌桥专利:专业的专利平台
掌桥专利
首页

一种针对问答任务模型的输入剪枝加速方法

文献发布时间:2023-06-19 13:26:15


一种针对问答任务模型的输入剪枝加速方法

技术领域

本发明涉及神经网络模型算法加速技术领域,尤其涉及一种针对问答任务模型的输入剪枝加速方法。

背景技术

随着近两年以来新神经网络架构的快速发展,尤其是以极大规模的Transformer模型在自然语言领域的出现,使得诸多自然语言处理的下游任务算法表现都得到了极为显著的提升,计算机人工智能算法在许多对人类语言进行理解,推理的任务上都取得了快速的发展,在一些任务中甚至取得了接近乃至超过人类的水平。然而在此之中,问答任务仍然是难度最大,复杂度最高的下游任务之一。另一方面,问答任务也在实际生产生活中有着广泛的应用,例如搜索引擎内容召回,智能助手对话理解,在线客服自动回复等。为了使神经网络模型在问答任务上取得良好的表现,其采用的模型尺寸以及运算复杂度也产生了快速的增长,即使使用最为先进的硬件计算机设备,运算这些超大规模的模型也是一件困难的事情。

对于神经网络模型算法进行加速的研究工作在最近时间是一个热门的研究领域,其中算法层面的模型压缩算法也发展出了包括对模型权重进行剪枝或者低精度量化,对模型组件进行参数共享或者通过全尺寸的大模型进行模型蒸馏等方法。另一方面,则是对模型的正向传播过程进行动态的调整调度,从而根据输入特征进行运算复杂度的调节,例如模型处理的提前退出机制以及多尺度模型的动态路由派发机制等。

现有的模型压缩方法在传统模型上取得了良好的效果,同样,在Transformer模型上应用这些方法也可以取得一定的压缩和加速效果,但是由于没有考虑Transformer模型本身以及问答任务特有的运算特点,这些方法并不能最大程度的利用Transformer模型以及输入中的冗余性。而基于模型输入动态性的调度加速算法目前在问答任务上还鲜有研究,如何将这些方法与问答任务本身的特征良好结合起来是一个难点和问题。

因此,本领域的技术人员致力于开发一种针对问答任务模型的输入剪枝加速方法,以减少模型的复杂度及推理运算量。

发明内容

有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何减小问答任务神经网络算法的运算复杂度,提升模型的推理运算速度。

为实现上述目的,本发明提供了一种针对问答任务模型的输入剪枝加速方法,包括以下步骤:

步骤1、注意力信息抽取;

步骤2、基于所述注意力信息的语义信息分析;

步骤3、骨干模型中间结果剪枝;

其中,所述步骤1包括,给定骨干模型一定的预测输入后,在所述骨干模型运行时过程中,动态地抽取所述骨干模型中每层中的注意力模块的注意力关注信息矩阵,并且将所述注意力信息矩阵传输给动态输入剪枝模块进行后续的分析处理;

所述步骤2包括,所述动态输入剪枝模块基于所述注意力信息矩阵中所蕴含的关注信息,分析其中的语义信息,寻找出对所述预测输入进行动态剪枝的部分,得到与所述动态剪枝的部分对应的掩码输出。

进一步地,所述步骤3包括,在所述骨干模型的相邻两层之间,根据所述动态输入剪枝模块产生的所述掩码输出,对所述骨干模型处理过程中的中间结果进行输入维度的动态剪枝。

进一步地,所述动态输入剪枝模块独立于所述骨干模型,并行执行各自的处理工作。

进一步地,所述动态输入剪枝模块包括剪枝预测分类器。

进一步地,所述剪枝预测分类器采用了以卷积神经网络为特征提取器的基本结构。

进一步地,所述剪枝预测分类器的优化目标是由每一输入区域的剪枝预测值以及其是否包含答案的实际值的交叉熵构成。

进一步地,在所述方法中,配置剪枝系数和样本系数来调节对问答模型的正则化程度,以免过度剪枝引起推理信息缺失和回答准确率下降。

进一步地,通过经验值或者网格化搜索的方式得到所述剪枝系数和所述样本系数。

本发明还提供一种用于问答任务的信息处理装置,包括存储器、处理器以及存储在所述存储器中并能够在所述处理器上运行的计算机程序,其特征在于,所述处理器被配置为能够在执行所述计算机程序时实现上述针对问答任务模型的输入剪枝加速方法的步骤。

本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时能够实现上述针对问答任务模型的输入剪枝加速方法的步骤。

与现有技术方案相比,本发明的有益技术效果在于:该方法减少了模型的复杂度以及推理运算量,达到加速运算的目的。还能聚焦于正确的文本区块和存在逻辑关系的内容上,达到对模型进行正则化的效果,提升模型的精确度。

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

附图说明

图1是本发明的一个较佳实施例的动态输入剪枝模块及问答任务模型网络结构图;

图2是动态输入剪枝模块以及模型训练流程图;

图3是输入文本经过剪枝处理的结果。

具体实施方式

以下参考说明书附图介绍本发明的多个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。

在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本发明并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件的厚度。

本发明提供一种针对问答任务模型的输入剪枝加速方法,包括以下步骤:

步骤1、注意力信息抽取;

步骤2、基于所述注意力信息的语义信息分析;

步骤3、骨干模型中间结果剪枝。

其中,步骤1包括,给定骨干模型一定的预测输入后,在所述骨干模型运行时过程中,动态地抽取所述骨干模型中每层中的注意力模块的注意力关注信息矩阵,并且将所述注意力信息矩阵传输给动态输入剪枝模块进行后续的分析处理;

步骤2包括,所述动态输入剪枝模块基于所述注意力信息矩阵中所蕴含的关注信息,分析其中的语义信息,寻找出对所述预测输入进行动态剪枝的部分,得到与所述动态剪枝的部分对应的掩码输出。

步骤3包括,在所述骨干模型的相邻两层之间,根据所述动态输入剪枝模块产生的所述掩码输出,对所述骨干模型处理过程中的中间结果进行输入维度的动态剪枝。

在本发明的一个实施例中,Transformer模块为原生的骨干模型。利用Transformer模型中的多头自注意力模块在运行过程中的运算特征,以其为动态输入剪枝模块的预测特征,从而判断出神经网络模型在进行正向推理的过程中,其进行上下文语义信息理解的过程中,对文本不同区域的关注程度,从而预测出更具重要性的区域和可以略读加以舍弃的区域,从而对这一部分进行剪枝并达到加速的目的。

如图1所示,在网络结构上,注意力权重特征提取器是一种注意力关系提取和预测模块,可以将其视为对Transformer模型或其变种模型添加的附加模块。动态输入剪枝模块包括动态剪枝预测分类器。注意力关系提取和预测模块对核心的网络处理模块没有进行修改,而是从中抽取出运行中的注意力关系权重作为动态剪枝预测分类器的输入特征。动态剪枝预测分类器预测到的判断结果作为之后Transformer模块输入的掩码。因此,在该方法中,无论是注意力关系提取和预测模块还是动态输入剪枝,对每一原生Transformer模块的运算过程都没有影响,而是在输入张量的序列长度维度进行的结构化剪枝。也就是说,动态输入剪枝模块独立于骨干模型,并行执行各自的处理工作。

在剪枝预测分类器的设计上,本发明采用了以卷积神经网络为特征提取器的基本结构。这是因为注意力关系的权重张量具有很强的局部性,在序列中位置相近的权重倾向于具有相似的信息聚合和传递方向,因此,使用卷积神经网络可以良好的利用这一局部性别判断出输入序列自注意力的特征。在细节上,为了进一步提升预测判别器的性能且减少额外引入的运算复杂度,本发明同时加入了批正则化和池化操作层。

图2中描述了本发明所提方法中涉及的联合优化算法示意图,可以看到,这一联合优化算法的优化目标主要由两部分组成,分别是原生问答任务的损失函数以及各层剪枝预测分类器的损失函数。其中,问答任务的损失函数由真实答案以及模型预测答案的交叉熵构成,这与多数问答任务的设定保持一致。另一方面,附加的剪枝预测分类器的优化目标则是由每一输入区域的剪枝预测值以及其是否包含答案的实际值的交叉熵构成的。通过这样的设计可以端到端的完成对原生模型参数集以及附加剪枝判别模块的联合优化,同时,本发明引入的附加模块的优化误差梯度可以反向传播至原生Transformer模型中,从而为其优化提供额外的误差信号以及优化信息,达到多头自注意力机制进行正则化的目的,在对其推理运算进行加速的同时也达到了增强其模型泛化能力和准确率的作用。

另一方面,在优化的过程中,为了平衡两部分损失函数以及正负样本对优化梯度的影响,本发明分别引入了剪枝系数和样本系数两个系数作为超参数,从而调节动态剪枝方法对问答模型的正则化程度,避免过度剪枝引起的推理信息缺失和回答准确率下降。在实际应用本发明的过程中,这两个系数可以通过经验值或者网格化搜索的方式得到。

在上述优化过程中,因为要保证所有输入的信息都能被优化器所利用,在反向传播的过程中,输入剪枝不会影响优化梯度的传递,因此在优化过程中并未进行实际意义上的剪枝,只是独立的训练了剪枝预测分类器,并联合其作为正则化优化目标优化原生Transformer模型。而在推理的过程中,可以将剪枝预测分类器的结果作为掩码加入到Transformer模块的输出张量上,从而减少后续的运算量。

在此过程中,为了保持同一批处理数据的不同输入样本之间的输入维度能够统一,可以以最长的输入为剪枝量的上界加以限制,对同一批中的其他输入长度样本的动态剪枝量进行限制,从而保证输入张量维度的一致性。在这种剪枝范式下,很容易理解的是,随着输入文本和问答任务上下文输入长度的增加,整个模型处理过程的冗余度与之呈正相关,因此,对于长文本的问答任务将能够取得更好的加速效果。

例如在实际部署的问答模型中,接受用户的输入提问和可能包含答案的文段作为阅读理解的语料,骨干模型一般不加处理的接受这两部分所有输出并不加区分的进行相同运算量的计算。

在加入动态输入剪枝模块后,将在骨干模型处理的过程中,动态的判断可能包含答案的文段中无关的语料部分,并对文段对应的中间处理结果加以动态剪枝,从而减少进一步处理的运算量,达到加速的效果。例如在图3的例子中,在骨干模型处理的过程中动态剪枝的部分被删除线标识,而实际答案的部分通过下划线表示,可以看到90%的运算可以通过输入维度的剪枝得到了加速。

综上,本发明旨在提出一种根据Transformer模型运算中注意力机制的运行特征,动态的对问答任务的文本输入序列进行渐进式动态剪枝的模型压缩优化方法。从而使模型在运算的过程中能够动态的选择并减少输入序列的范围和内容,从而减少模型的复杂度以及推理运算量,达到加速运算的目的。另一方面,借由减少无关输入文本的内容,模型同样可以减少回答问题的上下文范围,聚焦于正确的文本区块和存在逻辑关系的内容上,达到对模型进行正则化的效果,从而提升模型的精确度。

以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

相关技术
  • 一种针对问答任务模型的输入剪枝加速方法
  • 一种针对卷积层的神经网络结构化剪枝压缩优化方法
技术分类

06120113678373