一种基于自适应对比知识蒸馏的网络压缩方法和装置制造方法及图纸

技术编号:38348763 阅读:10 留言:0更新日期:2023-08-02 09:28
本发明专利技术公开了一种基于自适应对比知识蒸馏的网络压缩方法及装置。该网络压缩方法包括如下步骤:引入对比性蒸馏损失作为显式监督,以最大化特征负样本对的距离;利用神经网络作为预测器,根据每个样本的学习特征来预测其辨别能力;然后,根据预测的辨别能力对不同样本的损失进行重新加权,以实现样本适应性重加权策略;将样本适应性重加权策略融入到对比性蒸馏损失中,构建自适应对比性蒸馏损失;基于自适应对比性蒸馏损失构建自适应对比知识蒸馏框架,用于实现自然语言处理过程中的神经网络压缩。压缩。压缩。

【技术实现步骤摘要】
一种基于自适应对比知识蒸馏的网络压缩方法和装置


[0001]本专利技术涉及一种基于自适应对比知识蒸馏的网络压缩方法,同时也涉及相应的网络压缩装置,属于计算机系统


技术介绍

[0002]知识蒸馏(Knowledge Distillation,简写为KD)是一种经典的神经网络压缩方法,其通过引导轻量化的学生网络“模仿”性能更好、结构更复杂的教师网络,在不改变学生网络的情况下提高其性能。在现有技术中,自然语言处理领域常用的BERT模型,其采用的知识蒸馏方法隐含地学习了学生网络的鉴别性特征,也就是说,需要把来自不同类别的样本(负对)的特征推得很远,而把来自相同类别的样本(正对)的特征保持得很近。假设教师网络是经过良好学习的(即在教师网络中,负对的特征是相互远离的),通过最小化教师网络和学生网络之间每个样本的特征距离,使学生网络的特征具有鉴别性,如图1中左侧所示,学生网络中的负对的特征就可以被拉得很远。但是,当常用词出现在具有不同含义的句子中时,会导致教师网络中的负对的特征相互接近,如图1中右侧所示,在这种情况下,使用现有的知识蒸馏范式训练学生网络,将导致学生网络中的负对的特征也是相互接近的。
[0003]在自然语言处理(简写为NLP)任务中,现有的知识蒸馏方法在蒸馏过程中没有充分注意到困难样本,类似的句子可能有完全不同的含义。例如,对于语言可接受性任务,虽然句子“我们把自己喊哑了”和“我们把哈里喊哑了”是相似的,因为二者只有一个不同的词,但是,第一个句子在语言上是可接受的,而后一个句子则不是,使二者属于不同类别。由于这类句子的特征是相似的,使得这类句子难以区分,因此辨别能力较差。因此,对困难样本给予更多关注以加强其辨别能力也是亟待解决的一个问题。
[0004]在申请号为202210540113.5的中国专利技术专利申请中,公开了一种基于不确定性估计知识蒸馏的语言模型压缩方法。该方法包括如下步骤:1)对原始语言模型进行对半压缩得到压缩后的神经网络;2)利用原始语言模型合理初始化压缩后神经网络的参数;3)添加前馈网络结构的参数蒸馏损失函数,设计不确定性估计损失函数及自然语言处理任务的交叉熵损失函数;4)利用所设计的损失函数训练压缩后的神经网络模型。该技术方案降低了网络压缩训练过程的计算量,提高了网络压缩率。

技术实现思路

[0005]本专利技术所要解决的首要技术问题在于提供一种基于自适应对比知识蒸馏的网络压缩方法。
[0006]本专利技术所要解决的另一技术问题在于提供一种基于自适应对比知识蒸馏的网络压缩装置。
[0007]为了实现上述目的,本专利技术采用以下的技术方案:
[0008]根据本专利技术实施例的第一方面,提供一种基于自适应对比知识蒸馏的网络压缩方法,用在自然语言处理任务中,包括如下步骤:
[0009](1)引入对比性蒸馏损失作为显式监督,以最大化特征负样本对的距离;
[0010](2)利用一个神经网络作为预测器,根据每个样本的学习特征来预测其辨别能力;然后,根据预测的辨别能力对不同样本的损失进行重新加权,以实现样本适应性重加权策略;
[0011](3)将所述样本适应性重加权策略融入到所述对比性蒸馏损失中,构建自适应对比性蒸馏损失;
[0012](4)基于所述自适应对比性蒸馏损失构建自适应对比知识蒸馏框架,用于实现自然语言处理过程中的神经网络压缩。
[0013]其中较优地,所述步骤(1)中,对于每个样本,利用所述对比性蒸馏损失最大化学生网络中样本的特征与教师网络中样本的特征之间的相似性,并最小化学生网络中样本的特征与教师网络中样本的负样本对特征之间的相似性。
[0014]其中较优地,所述步骤(3)中,在自适应对比性蒸馏损失的训练过程中,增加分子项,以使教师网络和学生网络中来自同一样本的特征相互接近,同时减少分母项,以使学生网络中来自不同类别的第个样本的特征远离教师网络中第个样本的特征,其中为正整数。
[0015]其中较优地,所述步骤(3)中,给具有较少鉴别特征的样本分配更高的权重,以形成自适应对比性蒸馏损失。
[0016]其中较优地,所述步骤(4)中,在每个批次的计算结束后,将所述批次的特征保存到动态特征存储器中,同时将样本的标签也保存到所述动态特征存储器中,用于识别样本。
[0017]其中较优地,所述动态特征存储器中只存储插入自适应对比性蒸馏损失的所在层的特征;在存储空间满了之后,根据先入先出的策略更新存储空间。
[0018]根据本专利技术实施例的第二方面,提供一种基于自适应对比知识蒸馏的网络压缩装置,用在自然语言处理任务中,包括处理器和动态特征存储器,所述处理器和所述动态特征存储器耦接;其中,
[0019]所述动态特征存储器用于存储计算机程序;
[0020]所述处理器用于运行存储在所述动态特征存储器中的计算机程序,执行上述基于自适应对比知识蒸馏的网络压缩方法。
[0021]与现有技术相比较,首先,本专利技术实施例将对比学习的概念引入到知识蒸馏中,提出一个对比性蒸馏损失作为显式监督,以最大化特征负样本对的距离。特别地,对于每个样本,对比性蒸馏损失旨在最大化学生网络中样本的特征与教师网络中样本的特征之间的相似性,并最小化学生网络中样本的特征与教师网络中样本的负样本对特征之间的相似性。
[0022]其次,本专利技术实施例针对较少鉴别性特征的困难样本,提出样本适应性重加权策略,以适应性地对这些困难样本给予更多的关注,并加强其识别能力。具体地说,利用一个神经网络作为预测器,根据每个样本的学习特征来预测其辨别能力。然后,根据预测的鉴别能力对不同样本的损失进行重新加权。由于这个过程中的所有操作都是可微分的,预测器的参数可以与学生网络共同学习。
[0023]最后,本专利技术实施例将样本适应性重加权策略无缝地融入前述对比性蒸馏损失中,形成自适应对比性蒸馏损失。将自适应对比性蒸馏损失与现有技术中的患者知识蒸馏方法相结合,构建了自适应对比知识蒸馏框架,可以用于BERT压缩。通过在多个自然语言处
理任务上的广泛实验,证明了该自适应对比知识蒸馏框架对BERT压缩的有效性。
附图说明
[0024]图1为现有技术中,教师网络和学生网络之间负对样本的特征距离示意图;
[0025]图2为本专利技术实施例中,基于自适应对比知识蒸馏的网络压缩方法的逻辑框架图;
[0026]图3为本专利技术实施例中,多项消融实验的测试结果的示意图;
[0027]图4为本专利技术实施例中,教师网络和学生网络之间负对样本的特征距离示意图;
[0028]图5为本专利技术实施例中,基于自适应对比知识蒸馏的网络压缩装置的结构示意图。
具体实施方式
[0029]下面结合附图和具体实施例对本专利技术的
技术实现思路
进行详细具体的说明。
[0030]在将知识蒸馏应用于BERT模型的过程中,有一些方法被提出来压缩BERT模型,但这些方法缺乏对学习判别学生网络特征的显式监督。同时,虽然有些工作也使用了BERT模型的对比损失,但本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于自适应对比知识蒸馏的网络压缩方法,用在自然语言处理任务中,其特征在于包括如下步骤:(1)引入对比性蒸馏损失作为显式监督,以最大化特征负样本对的距离;(2)利用一个神经网络作为预测器,根据每个样本的学习特征来预测其辨别能力;然后,根据预测的辨别能力对不同样本的损失进行重新加权,以实现样本适应性重加权策略;(3)将所述样本适应性重加权策略融入到所述对比性蒸馏损失中,构建自适应对比性蒸馏损失;(4)基于所述自适应对比性蒸馏损失构建自适应对比知识蒸馏框架,用于实现自然语言处理过程中的神经网络压缩。2.如权利要求1所述的网络压缩方法,其特征在于:所述步骤(1)中,对于每个样本,利用所述对比性蒸馏损失最大化学生网络中样本的特征与教师网络中样本的特征之间的相似性,并最小化学生网络中样本的特征与教师网络中样本的负样本对特征之间的相似性。3.如权利要求1所述的网络压缩方法,其特征在于:所述步骤(3)中,在自适应对比性蒸馏损失的训练过程中,增加分子项,以使教师网络和学生网络中来自同一样本的特征相互接近,同时减少分母项,以使学生网络中来自不同类别的第个样本的特征远离教师网络中第个样本的特征,其中为正整数。4.如权利要求3所述的网络压缩方法,其特征在于:所述步骤(3)中,给具有较少鉴别特征的样本分配更高的权重,以形成自适应对比性蒸馏损失。5.如权利要求2或3所述的网络压缩方法,其特征在于:所述教师网络为BERT

Base模型,所述学生网络...

【专利技术属性】
技术研发人员:郭晋阳刘佳恒王梓宁刘祥龙
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

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

1