基于知识蒸馏的问答模型压缩方法、装置及相关设备制造方法及图纸

技术编号:35271239 阅读:24 留言:0更新日期:2022-10-19 10:43
本发明专利技术公开了基于知识蒸馏的问答模型压缩方法、装置及相关设备。该方法包括获取预训练好的语言模型作为教师模型;将样本数据输入教师模型进行答案在文本起止位置的预测,得到预测向量;根据微调方法对预测向量中每一答案在文本起止位置的预测值进行微调,得到调整向量;基于预置损失函数计算调整向量和预测向量的特征损失,并根据特征损失优化教师模型的模型参数,得到目标教师模型;根据目标教师模型的模型参数和每一transformer层进行模型自蒸馏,构建得到对应的学生模型,并基于目标教师模型的输出结果对所有学生模型进行压缩训练,得到目标问答模型。该方法减少学生模型复杂度,节省计算开销。节省计算开销。节省计算开销。

【技术实现步骤摘要】
基于知识蒸馏的问答模型压缩方法、装置及相关设备


[0001]本专利技术涉及智能问答
,尤其涉及一种基于知识蒸馏的问答模型压缩方法、装置及相关设备。

技术介绍

[0002]近年来,基于深度神经网络的预训练语言模型在自然语言处理领域中的许多细分任务上(例如文本分类、机器阅读、机器翻译等)都取得了重大突破,但随之而来的是模型容量越来越大(以自然语言处理领域为例,参数超过千亿的模型已层出不穷,且都基于transformer模型的网络结构,拥有多个transformer 层),从而带来了训练和部署模型的巨大挑战。尤其是在部署方面,巨大的单个模型难以在显存容量较小的边缘端、移动端设备上部署,从而限制了模型的实际使用价值。为了解决以上难题,知识蒸馏技术应运而生,其利用拥有更多参数的(教师)模型来指导训练较少参数的(学生)模型,让学生模型学到教师模型的知识;通俗说,就是让学生模型的输出接近教师模型的输出。但传统模型蒸馏技术需要单独设置教师模型和学生模型,增加了模型的复杂度和计算开销。

技术实现思路

[0003]本专利技术实施例提供了一种基于知识蒸馏的问答模型压缩方法、装置及相关设备,旨在解决现有技术中基于知识蒸馏的问答模型复杂度较高的问题。
[0004]第一方面,本专利技术实施例提供了一种基于知识蒸馏的问答模型压缩方法,其包括:
[0005]获取预训练好的语言模型作为教师模型,所述教师模型为基于多个 transformer层的模型;
[0006]将样本数据输入所述教师模型进行答案在文本起止位置的预测,得到预测向量,所述样本数据包括问题和问题对应答案所在的文本起止位置;
[0007]根据微调方法对所述预测向量中每一答案在文本起止位置的预测值进行微调,得到调整向量;
[0008]基于预置损失函数计算所述调整向量和预测向量的特征损失,并根据所述特征损失优化所述教师模型的模型参数,得到目标教师模型;
[0009]根据所述目标教师模型的模型参数和每一transformer层进行模型自蒸馏,构建得到对应的学生模型,并基于所述目标教师模型的输出结果对所有学生模型进行压缩训练,得到目标问答模型。
[0010]第二方面,本专利技术实施例提供了一种基于知识蒸馏的问答模型压缩装置,包括:
[0011]获取模块,用于获取预训练好的语言模型作为教师模型,所述教师模型为基于transformer层的模型;
[0012]预测模块,用于将样本数据输入所述教师模型进行答案在文本起止位置的预测,得到预测向量,所述样本数据包括问题和问题对应答案所在的文本起止位置;
[0013]调整模块,用于根据微调方法对所述预测向量中每一答案在文本起止位置的预测
值进行微调,得到调整向量;
[0014]第一训练模块,用于基于预置损失函数计算所述调整向量和预测向量的特征损失,并根据所述特征损失优化所述教师模型的模型参数,得到目标教师模型;
[0015]第二训练模块,用于根据所述目标教师模型的模型参数和每一transformer 层进行模型自蒸馏,构建得到对应的学生模型,并基于所述目标教师模型的输出结果对所有学生模型进行压缩训练,得到目标问答模型。
[0016]第三方面,本专利技术实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于知识蒸馏的问答模型压缩方法。
[0017]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于知识蒸馏的问答模型压缩方法。
[0018]本专利技术实施例提供了基于知识蒸馏的问答模型压缩方法、装置及相关设备。该方法包括获取预训练好的语言模型作为教师模型;将样本数据输入教师模型进行答案在文本起止位置的预测,得到预测向量;根据微调方法对预测向量中每一答案在文本起止位置的预测值进行微调,得到调整向量;基于预置损失函数计算调整向量和预测向量的特征损失,并根据特征损失优化教师模型的模型参数,得到目标教师模型;根据目标教师模型的模型参数和每一transformer层进行模型自蒸馏,构建得到对应的学生模型,并基于目标教师模型的输出结果对所有学生模型进行压缩训练,得到目标问答模型。该方法基于知识蒸馏训练出目标教师模型,以目标教师模型的模型参数和transformer层构建对应的学生模型,相比传统知识蒸馏技术需要单独设置教师模型和学生模型,本方案不再单独设计学生模型,而是使用教师模型进行自蒸馏得到,减少学生模型复杂度,节省计算开销。
附图说明
[0019]为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0020]图1为本专利技术提供的基于知识蒸馏的问答模型压缩方法一实施例的流程示意图;
[0021]图2为图1中步骤S130的子流程示意图;
[0022]图3为图1中步骤S150的子流程示意图;
[0023]图4为本专利技术实施例提供的基于知识蒸馏的问答模型压缩方法的另一实施例的流程示意图;
[0024]图5为本专利技术提供的基于知识蒸馏的问答模型压缩装置的示意性框图;
[0025]图6为本专利技术提供的基于知识蒸馏的问答模型压缩方法中教师模型和学生模型的结构示意图。
具体实施方式
[0026]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本发
明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0027]应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0028]还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0029]还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0030]请参阅图1所示,图1为本专利技术实施例提供的基于知识蒸馏的问答模型压缩方法的流程示意图,该方法包括步骤S110~S150。
[0031]步骤S110、获取预训练好的语言模型作为教师模型,所述教师模型为基于多个tr本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于知识蒸馏的问答模型压缩方法,其特征在于,包括:获取预训练好的语言模型作为教师模型,所述教师模型为基于多个transformer层的模型;将样本数据输入所述教师模型进行答案在文本起止位置的预测,得到预测向量,所述样本数据包括问题和问题对应答案所在的文本起止位置;根据微调方法对所述预测向量中每一答案在文本起止位置的预测值进行微调,得到调整向量;基于预置损失函数计算所述调整向量和预测向量的特征损失,并根据所述特征损失优化所述教师模型的模型参数,得到目标教师模型;根据所述目标教师模型的模型参数和每一transformer层进行模型自蒸馏,构建得到对应的学生模型,并基于所述目标教师模型的输出结果对所有学生模型进行压缩训练,得到目标问答模型。2.根据权利要求1所述的基于知识蒸馏的问答模型压缩方法,其特征在于,所述基于所述目标教师模型的输出结果对所有学生模型进行压缩训练,得到目标问答模型,包括:将第k

1个学生模型的输出作为第k个学生模型的输入对第k个学生模型进行训练;根据KL散度分别计算每一学生模型与所述目标教师模型的预测损失,并基于所有学生模型与所述目标教师模型的预测损失的和优化所有学生模型的模型参数,得到所述目标问答模型。3.根据权利要求2所述的基于知识蒸馏的问答模型压缩方法,其特征在于,所述根据KL散度分别计算每一学生模型与所述目标教师模型的预测损失,并基于所有学生模型与所述目标教师模型的预测损失的和优化所有学生模型的模型参数,得到所述目标问答模型,包括:按如下公式计算每一学生模型与所述教师模型的预测损失:其中,D
KL
表示KL散度,表示第k个学生模型的预测值,p
tea
表示目标教师模型的预测值,表示第k个学生模型预测的答案所在段落中第i个词成为起始位置的概率值,第k个学生模型预测的答案所在段落中第i个词成为终止位置的概率值;按如下公式计算所有学生模型与所述目标教师模型的预测损失的和:其中,表示第1、2、...、L

1个学生模型的预测值,L表示学生模型的数量。4.根据权利要求3所述的基于知识蒸馏的问答模型压缩方法,其特征在于,所述根据所述目标教师模型的模型参数和transformer层构建学生模型,并基于所述目标教师模型的输出结果对所有学生模型进行压缩训练,得到目标问答模型之后,包括:
在推理阶段,计算当前学生模型对应输出结果的不确定系数,并判断不确定系数是否小于预置系数阈值;若是,则以不确定系数对应的输出结果为最终预测结果;若否,则继续将当前学生模型的输出结果输入至下一个学生模型进行预测,并返回继续判断下...

【专利技术属性】
技术研发人员:王伟张黔陈焕坤钟焰涛
申请(专利权)人:润联软件系统深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1