CN113673254B - 基于相似度保持的知识蒸馏的立场检测方法 - Google Patents

基于相似度保持的知识蒸馏的立场检测方法 Download PDF

Info

Publication number
CN113673254B
CN113673254B CN202110970107.9A CN202110970107A CN113673254B CN 113673254 B CN113673254 B CN 113673254B CN 202110970107 A CN202110970107 A CN 202110970107A CN 113673254 B CN113673254 B CN 113673254B
Authority
CN
China
Prior art keywords
model
text
teacher
student
similarity
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.)
Active
Application number
CN202110970107.9A
Other languages
English (en)
Other versions
CN113673254A (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.)
Northeast Forestry University
Original Assignee
Northeast Forestry 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 Northeast Forestry University filed Critical Northeast Forestry University
Priority to CN202110970107.9A priority Critical patent/CN113673254B/zh
Publication of CN113673254A publication Critical patent/CN113673254A/zh
Application granted granted Critical
Publication of CN113673254B publication Critical patent/CN113673254B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

基于相似度保持的知识蒸馏的立场检测方法,属于文本情感检测技术领域。为了解决现有的立场检测方法存在计算资源和计算时间开销大的问题,以及现有的方法存在识别准确率有待于提高的问题。本发明利用Text‑CNN网络模型对待检测立场文本进行立场检测;基于知识蒸馏的方式确定Text‑CNN网络,即使用BERT模型作为教师模型,将从教师模型中学习到的隐性知识引入到学生模型文本中;并在传统的知识蒸馏方式的基础上提出了基于相似度保持的损失函数,进一步提高基于知识蒸馏方式得到学生模型的性能。主要用于文本的立场检测。

Description

基于相似度保持的知识蒸馏的立场检测方法
技术领域
本发明涉及一种基于文本的立场检测方法,属于文本情感检测技术领域。
背景技术
随着主流社交媒体的日益普及,人们可以通过在线网站,以产品评论、博客、推特和微博的形式,随时表达自己对几乎一切事物的态度。近年来,自动立场检测因其广泛的应用而受到广泛关注,特别是在社交媒体分析、论据挖掘、真相发现和谣言检测等领域。立场检测是文本观点挖掘的一个基础研究,通常有两个关键输入:(1)目标,(2)作者的帖子或评论。给定两个输入,立场检测的目的是分析对文本中表达的特定目标的立场趋势,例如“赞成、反对或中立”。目标可以是事件、政策、社会现象或产品。
到目前为止,已经有大量立场检测相关的文献被发表,立场检测本质上是一项文本分类的任务,在传统的机器学习模型中,如逻辑回归、朴素贝叶斯、决策树和支持向量机,使用目标文本和用户文本中的信息作为特征。在一些先进的工作中,深度神经网络模型,如卷积神经网络(CNN)、递归神经网络、长短时记忆网络(LSTM)学习目标和文本的表征,然后根据表征进行文本分类。在过去的两年中,诸如BERT、GPT和XLNet等语言预训练模式取得了显著的进展。通过对未标记语料库的预训练和对标记语料库的微调,BERT类模型在许多自然语言处理任务中取得了最先进的性能。其中,BERT因其有效性和通用性而成为各种NLP模型的重要部分。但是,由于模型规模大,实际应用需要大量的计算资源,时间开销大。
发明内容
本发明是为了解决现有的立场检测方法存在计算资源和计算时间开销大的问题,以及现有的方法存在识别准确率有待于提高的问题。
基于相似度保持的知识蒸馏的立场检测方法,包括以下步骤:
获取待检测立场文本,利用Text-CNN网络模型进行立场检测;所述Text-CNN网络模型的确定过程包括以下步骤:
基于知识蒸馏的方式确定Text-CNN网络,知识蒸馏中的“Teacher”模型为BERT模型,“Student”模型为Text-CNN网络模型;
同时将实例数据集中实例对应的目标和文本输入到“Teacher”模型,使用BERT模型来获得soft label,并将其传递给Text-CNN;
所述知识蒸馏的方式中使用的损失函数如下:
LKD=γLClassic_KD+(1-γ)LSP_KD(GT,GS)
其中,LClassic-KD为现有的知识蒸馏的方式中的蒸馏损失,LSP_KD(GT,GS)为相似保持损失函数,γ为超参数;
所述相似度保持损失函数的确定过程如下:
在知识蒸馏的过程中,给定一个输入的mini-batch,定义
Figure BDA0003225349780000021
为“Teacher”模型在l层上产生的激活映射,
Figure BDA0003225349780000022
为“Student”模型在l层上产生的激活映射,其中b为batch大小,h为空间维数;
给定b个文本的输入的mini-batch,“Teacher”模型和“Student”模型模型各取mini-batch,一个计算b*h的激活映射,一个计算b*h’的激活映射,进行reshape后得到
Figure BDA0003225349780000023
Figure BDA0003225349780000024
从两个模型中输出的激活映射中计算相似度矩阵:
对于“Teacher”模型:
Figure BDA0003225349780000025
其中,
Figure BDA0003225349780000026
为b×b矩阵;
Figure BDA0003225349780000027
Figure BDA0003225349780000028
的L2范数,
Figure BDA0003225349780000029
为应用L2规范化的结果;
对于“Student”模型:
Figure BDA00032253497800000210
相似度保持损失函数为:
Figure BDA00032253497800000211
其中||·||F表示Frobenius范数;
进一步地,在进行知识蒸馏前,还包括构建实例数据集的过程;
进一步地,S1所述实例数据集
Figure BDA00032253497800000212
表示有N个实例的数据集,每个实例xi包含一个文本si,目标ti和一个立场标签yi;每条文本由单词序列组成,si={wi0,wi1,...,win},每个目标也由单词序列组成,ti={ti0,ti1,...,tim},n和m分别是si、ti中单词的数量;
进一步地,如果“Student”模型和“Teacher”模型具有相同的深度,“Student”模型的l′层与“Teacher”模型l层为相同depth的层;如果“Student”模型和“Teacher”模型具有不同的深度,“Student”模型的l′层是与“Teacher”模型位于相同区块末端的层,即两个模型池化层前的最后一层隐藏层;
进一步地,所述“Teacher”模型为BERT模型中的BERT-Base模型;
进一步地,所述的“Teacher”模型在预训练过程中,BERT-Base模型的输入向量由Token embedding、Segment embedding、Position embedding三部分组成;
进一步地,所述经典蒸馏损失如下:
LClassic_KD=α·H(y,σ(zS))+(1-α)·T2H((σ(zT/T),σ(zS/T))
其中,y为标签,H(.)为交叉熵损失函数,σ(.)为softmax函数,T为温度参数,y为表示地面真值类的单热向量,zS和zT分别为学生网络和教师网络的输出logits;α是加权超参数。
进一步地,加权超参数α为0.5。
进一步地,超参数γ为0.5。
进一步地,温度参数T为60。
有益效果:
本发明通过提取预训练模型BERT作为教师模型学到的知识引入到学生模型文本中,然后利用学生模型进行检测,可以在很大程度上降低计算资源和计算时间的开销,同时还能够取得与计算资源和计算时间开销非常大的BERT模型相当的效果,同时本发明还在传统的知识蒸馏方式的基础上提出了基于相似度保持的损失函数,可以进一步提高基于知识蒸馏方式得到学生模型的性能。
附图说明
图1为本发明的网络结构示意图;
图2为本发明超参数α和T的影响效果图。
具体实施方式
具体实施方式一:结合图1说明本实施方式,
本实施方式为基于相似度保持的知识蒸馏的立场检测方法,包括以下步骤:
获取待检测立场文本,利用Text-CNN网络模型进行立场检测;所述Text-CNN网络模型的确定过程包括以下步骤:
S1、获取已知立场的实例并构建实例数据集:
Figure BDA0003225349780000031
表示有N个实例的数据集,每个实例xi包含一个文本si,目标ti和一个立场标签yi;每条文本由单词序列组成,si={wi0,wi1,...,win},每个目标也由单词序列组成,ti={ti0,ti1,...,tim},n和m分别是si、ti中单词的数量。
S2、基于知识蒸馏得到“Student”模型,即Text-CNN网络,具体过程包括以下步骤:
同时将目标和文本输入到“Teacher”模型,所述的“Teacher”模型为BERT-Base模型,BERT-Base模型训练过程中,保存了模型最后一层的输出,并进一步“soft”了模型输出以获得“soft label”;然后根据BERT-Base模型蒸馏的知识对作为“Student”模型的Text-CNN进行训练,得到训练好的Text-CNN网络模型,利用训练好的Text-CNN网络模型进行立场检测。
所述的“Teacher”模型如下:
在预训练过程中,BERT-Base模型的输入向量由三部分组成:
Token embedding:用于将单词转换为一组有限的sub-word单元。在这一部分中,通过WordPiece(word segmentation)将单词转换成有限的公共sub-word单元。
Segment embedding:用于区分两个输入句子,如多文本分类中的多个输入文本。立场检测任务模拟为一个句子对(文本和目标)任务,因此需要进行Segment embedding。
Position embedding:将单词的位置编码为特征向量。在每个文本的开头,需要使用[CLS]符号,目标和文本之间用[SEP]符号隔开。
在Fine-tuning阶段,有必要对具体任务进行微调,BERT的微调方法是根据[CLS]标志生成一组特征向量C,并通过一层全连接层进行微调。
所述的“Student”模型如下:
使用BERT-Base模型来获得“soft label”,并将其传递给Text-CNN。与“Teacher”模型类似,将文本和目标中的每个词转换为一维向量,输出为每个输入词wi的向量表示ei∈Rd。卷积滤波器是具有共享参数的线性层列表。线性层的输入是固定长度窗口大小ls中词嵌入的级联,记为
Figure BDA0003225349780000041
d是单词维度;使用核
Figure BDA0003225349780000042
与输入Is进行卷积运算,生成一个特征ci
ci=f(Ws·Is+bs)
其中,bs为偏置参数,f为非线性函数。
然后,将它们级联得到特征映射c作为线性层的输出:c=[c1;c2;...;cn-l+1].。为了捕获文本的全局语义,将卷积滤波器的输出馈送给一个max-pooling层,从而产生一个固定长度的输出向量。最后,将其作为softmax层的输入,得到立场的概率分布,称为“softprediction”。
知识蒸馏的过程如下:
为了“Student”模型能从“Teacher”模型学习知识,现在只需要在给定的输入下将“Student”模型的softmax分布与“Teacher”模型进行匹配,而不是将“Student”模型的softmax分布与真实的标签分布进行匹配。“Teacher”模型提供概率logits和估计标签,“Student”模型从教师的输出中学习知识。
现有的知识蒸馏中的蒸馏损失如下:
通常,知识蒸馏是在输出层进行的。“Student”模型试图模仿给定任何数据点的“Teacher”模型的行为。使用“Teacher”模型的logits作为标签来训练学生模型,它包含的信息比“hard label”更多。
给定“Teacher”模型中输出层的logits z,zi为第i类的logits,输入对应的离散概率输出pi可以用softmax函数估计:
Figure BDA0003225349780000051
在softmax层采用特征匹配策略的实质是以softmax的输出作为监督。为了使评分向量“softer”,在softmax层中加入蒸馏温度T,以控制每个“soft label”的重要性:
Figure BDA0003225349780000052
通过增加T,可以平滑原始概率分布,更好地揭示数据之间的相似性。不执行知识蒸馏时,对“Student”模型的输入从ground-truth变成了one-hot,称为“hard target”。“Teacher”模型的“soft label”和ground-truth标签对提高“Student”模型的性能至关重要,分别用于提取distill loss和student loss。
利用现有的知识蒸馏的方式中获得蒸馏损失LClassic_KD;本实施方式中采用现有的知识蒸馏的方式(《Distilling the Knowledge in a Neural Network》)中经典的蒸馏损失:
LClassic_KD=α·H(y,σ(zS))+(1-α)·T2H((σ(zT/T),σ(zS/T))
其中,y为标签,H(.)为交叉熵损失函数,σ(.)为softmax函数,T为温度参数,y为表示地面真值类的单热向量,zS和zT分别为学生网络和教师网络的输出logits。此外,α是平衡distill loss和student loss的加权超参数。
如果两个输入在“Teacher”模型中产生高度相似的激活,将有助于指导“Student”模型的训练,同时导致两个输入在“Student”模型中产生高度相似的激活。本发明提出了相似度保持损失函数(Similarity-Preserving Loss),具体如下:
给定一个输入的mini-batch,定义
Figure BDA0003225349780000053
为“Teacher”模型在特定层l上产生的激活映射,
Figure BDA0003225349780000061
为“Student”模型在l′上产生的激活映射,其中b为batch大小,h为空间维数。
如果“Student”模型和“Teacher”模型具有相同的深度,“Student”模型的l′层与l相同depth的层,如果学生和老师具有不同的深度,“Student”模型的l′层是与“Teacher”模型位于相同区块末端的层,即两个模型池化层前的最后一层隐藏层。
给定b个文本的输入的mini-batch,两个模型各取mini-batch,一个计算b*h的激活映射,一个计算b*h’的激活映射,进行reshape后得到
Figure BDA0003225349780000062
Figure BDA0003225349780000063
从两个模型中输出的激活映射中计算相似度矩阵:
对于“Teacher”模型:
Figure BDA0003225349780000064
其中,
Figure BDA0003225349780000065
为b×b矩阵。直观地,可以应用L2规范化来获得
Figure BDA0003225349780000066
b×b矩阵编码了min-batch大小的文本所构成的网络激活的相似性(小批量中第i和第j个字段引发的教师层激活的相似性)。
同样,对于“Student”模型有
Figure BDA0003225349780000067
相似保持损失函数为:
Figure BDA0003225349780000068
其中||·||F表示Frobenius范数;
实际上损失函数是
Figure BDA0003225349780000069
Figure BDA00032253497800000610
矩阵的元素在(l,l’)对上均方差值的总和。
student不用去mimic teacher的特征空间,而只用在自己的特征空间保持成对的相似度就好,本发明可以很好的保持成对相似性,进而进一步提升效果。
本发明总目标函数由两部分组成:经典蒸馏损失和相似性保持损失,并使用超参数γ来平衡这两部分。目标函数可以定义如下:
LKD=γLClassic_KD+(1-γ)LSP_KD(GT,GS)
在模型的训练过程中,利用Adam优化器使目标函数最小化。
实施例
实施例1:本发明与基线方法实验:
(一)数据集
使用两个文本立场检测数据集来执行实验。一个是SemEval-2016任务6twitter立场检测数据集,另一个是NLPCC-ICCPOL-2016任务4中文微博立场检测数据集。数据集中的每个数据都以三元组(“立场”、“目标”、“文本”)的格式表示,其中“立场”标签包括Favor、Against和None。
对于英文数据集,训练集包含2914个带有立场标签的英文推文,测试集包含1249个推文。有5个目标:“Atheism”,“Climate Change is Concern(CC)”,“Feminist Movement(FM)”,“Hillary Clinton(HC)”和“Legalization of Abortion(LA)”.
中文数据集包含4000条带有立场标签的中文微博,其中3000条用于训练,1000条用于测试。也有5个目标:“IPhone SE”,“Set off firecrackers in the Spring Festival(SF)”,“Russian anti-terrorism operations in Syria(RA)”,“Two child policy(TP)”和“Prohibition of motorcycles and restrictions on electric vehicles inShenzhen(PM)”.
(二)评价指标
使用Precision(p)、Recall(r)和F-score作为评价指标,这与之前的工作类似,Precision(p)是分类器预测的正确分类的阳性样本占阳性样本的比例,Recall(r)是正确分类的阳性样本占真实阳性样本的比例。F-score为p和r的harmonic平均值。
Figure BDA0003225349780000071
Figure BDA0003225349780000072
分别计算FFavor和FAgainst t后,将两者求平均,得到FAvg作为最终结果。
Figure BDA0003225349780000073
按照以下步骤进行立场检测实验。首先对训练数据进行模型训练,保存效果最好的模型。采用Google发布的中文BERT预训练模型″BERT-Base,Chinese″和英文BERT预训练模型″BERT-Base,Uncased″作为“Teacher”模型。学习速率设置为1e-5,批量大小设置为8。对于超参数α,γ和T,分别选取0.5,0.5和60。对模型进行多次迭代直到收敛。
基线方法:
英文数据集
MIRTE:该模型使用两个递归神经网络(RNN)分类器。第一个RNN用于在初始化期间通过对两个大的未标记数据集的远程监控来学习特征。第二个RNN是分类器。它使用word2vec模型来训练单词和短语的嵌入,然后使用这些特征来学习用于立场检测的句子表示。
DC-BLSTM:该方法提出了一种用于目标特定立场检测的两阶段深度注意神经网络(TDAN)。该模型采用密集连接的Bi-LSTM编码推特token,采用传统的双向LSTM编码目标token。将三分类问题分解成两个二分类问题,以减轻标签的不平衡分布。
中文数据集
RUC MMC:使用五个人工选择的特征作为随机森林和SVM模型的输入。在NLPCC-ICCPOL 2016任务4中取得了最好的成绩。
ATA:该方法提出两阶段注意模型,首先将注意力机制应用于模型目标,然后将上下文与目标表示进行匹配,得到注意力信号,最后形成用于立场分类的目标特定文本表示。
对于所有其他基线方法,直接得到论文中报告的结果,基于相同的数据集和相同的设置进行实验。
(三)实验结果
在这一部分,本发明模型与基线的F-score进行比较。
表1基线方法和本发明的性能
Figure BDA0003225349780000081
为了与其他方法进行比较,其他方法是在没有数据增强(EDA)的情况下进行的,所以本实施例中的本发明的实验结果也在没有数据增强(EDA)的情况下得到的,进而容易体现本发明的效果。
(1)在两种立场检测任务中,通过FAvg可以看出本发明的模型BERTtoCNN均显著优于三种基线方法。汉语任务的改进更加明显。
(2)与其他基线(包括传统的机器学习方法和深度神经网络模型)相比,BERT在学习语义方面是有效的,取得了最好的效果。
本发明的模型BERTtoCNN从BERT-Base模型中转移知识,利用学生网络得到的效果与本发明中教师网络“BERT”相比,得到与BERT相当的结果,在运行速度上比BERT快得多(准确率差不多,而速度快很多)。
(3)通过与TextCNN比较,BERTtoCNN的平均F-score高于TextCNN。结果表明,BERTtoCNN可以从“Teacher”模型中学习有用的信息,有助于提高“Student”模型的性能。
实施例2:参数敏感性实验
为了分析超参数的影响,我们在英文推特立场检测数据集上进行了两个参数敏感性实验。
更进一步地,在知识蒸馏方法中,一个小的数据集可能不足以让“Teacher”模型完整地表达其知识。为了弥补英文Twitter语料中数据的不足,获得更大的数据集,使用EDA:Easy Data Augment方法对数据集进行扩充。使用同义词替换、随机插入、随机交换和随机删除四种方法来处理twitter文本。
同义词替换(SR):指从句子中随机选取n个非停止词的单词,用随机选取的一个同义词替换其中的每个单词。
随机插入(RI):在句子中随机选择一个非停止词的单词,并将其一个同义词插入句子中的任何位置。重复n次。
随机互换(RS):互换句子中两个随机词的位置。重复n次。
随机删除(RD):以p的概率随机删除句子中的每个单词。
EDA主要定义了三个参数:n表示句子修改的词数,β表示句子修改的词数,n_aug表示句子生成的新句子数。对于SR,RI和RS,根据句子长度l,利用公式n=β×l来改变n的值;对于随机删除(RD),p=β×n_aug。
(1)超参数α和T的效果
在BERTtoCNN中,超参数α控制着“soft label”和“hard label”的比例。我们将α设置为0.25、0.5和0.75。从图2中,我们发现随着α的增加,F值也相应增加。当α为0.5时,F值达到最高点,当α大于0.5时,F值下降。结果表明,α的增加可以提高立场检测的结果。一方面,较大的α可以促使学生模型从教师模型中学习更多的知识。另一方面,实验表明soft label起到了正则化的作用,使得学生模型的收敛性更加稳定。
超参数T主要控制预测分布的平滑度。在这个实验中,我们将T的调节空间设置为{10,30,60,90}。图2显示,当T从10增加到60时,F分数的性能得到改善。当T等于60时,BERTtoCNN达到最佳性能。图2中的整体结果表明,T的增加可以提高立场检测的结果,这反映了教师模型更强的泛化能力。然而,过度泛化也会对分类结果产生负面影响。
(2)超参数γ的效果
值得注意的是,γ是平衡经典蒸馏损失与相似性保持损失知识蒸馏损失函数的权重参数。换句话说,γ越大,越多的学生网络会从教师网络中的类似激活学习。也就是说,γ越大,相似性保持损失知识蒸馏损失函数的影响越大。我们将γ设置为1、0.5、0.1、0.01和0。从表2中,我们发现当γ为0.5时,模型达到最佳性能。我们发现相似性保持损失使我们的模型的F值提高了4.1%(γ=0,没有相似性保持损失)。当γ从0.5逐渐减小到0时,分类结果的改善越来越小。这证明引入相似度保持损失,可以学习学生之间有用的特征信息,从而提高分类结果。
表2超参数γ对应的F-score
Figure BDA0003225349780000101
数据增强的效果:
最初的英文推特立场检测数据集在训练集中仅包含2914条推文,在测试集中仅包含1249条推文。因此,分类效果受到了限制。
本发明采用EDA数据增强方法(EDA)来扩充数据集,以提高分类结果。注意,参数n代表一个句子中修改的单词数,β代表每个句子中增强单词的百分比,n aug是一个句子生成的新句子数。为了比较结果,本发明让n aug为16、8和4,β为0.05和1。如上所述,当T为60,α为0.5时,BERTtoCNN的结果最好,所以本发明在本实验中也取这两个值。
实验结果如表3所示。可以看到,当n aug为16,β为0.1时,效果最好,学生模型的F-score为68.9%。因此,可以得出结论,随着数据集的增加,BERTtoCNN的性能得到了提高。
表3实验结果
Figure BDA0003225349780000102
本发明提出了一种基于相似度保持知识蒸馏的文本立场检测模型BERTtoCNN。除了蒸馏损失外,模型还引入了相似性保持损失函数来进一步优化。本发明是第一个将经典的蒸馏损失和相似性保持损失结合在一个联合知识蒸馏框架中的工作。通过对不同设置的BERTtoCNN进行测试,发现经典的蒸馏损失和相似性保持损失都有助于立场检测任务,BERTtoCNN将两者结合起来进一步提高了性能:模型参数减少为1/20,预测速度提高了3倍。具体来说,通过比较BERTtoCNN和其他有竞争力的基线方法,BERT预先训练的语言模型在这项任务中是非常有效的,而且通过提取预训练模型BERT的知识,BERTtoCNN取得了相当的效果,但在很大程度上提高了运行时间,对英文twitter立场检测数据集进行了数据扩充,证明了数据集越大,更有利于提高结果。
本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (9)

1.基于相似度保持的知识蒸馏的立场检测方法,包括以下步骤:
获取待检测立场文本,利用Text-CNN网络模型进行立场检测;所述Text-CNN网络模型的确定过程包括以下步骤:
基于知识蒸馏的方式确定Text-CNN网络,知识蒸馏中的“Teacher”模型为BERT模型,“Student”模型为Text-CNN网络模型;
同时将实例数据集中实例对应的目标和文本输入到“Teacher”模型,使用BERT模型来获得soft label,并将其传递给Text-CNN;
其特征在于,所述知识蒸馏的方式中使用的损失函数如下:
LKD=γLClassic_KD+(1-γ)LSP_KD(GT,GS)
其中,LClassic_KD为现有的知识蒸馏的方式中的蒸馏损失,LSP_KD(GT,GS)为相似度保持损失函数,γ为超参数;
经典蒸馏损失如下:
LClassic_KD=α·H(y,σ(zS))+(1-α)·T2H((σ(zT/T),σ(zS/T))
其中,y为标签,H(.)为交叉熵损失函数,σ(.)为softmax函数,T为温度参数,y为表示地面真值类的单热向量,zS和zT分别为学生网络和教师网络的输出logits;α是加权超参数;
所述相似度保持损失函数的确定过程如下:
在知识蒸馏的过程中,给定一个输入的mini-batch,定义
Figure FDA0003567804010000011
为“Teacher”模型在l层上产生的激活映射,
Figure FDA0003567804010000012
为“Student”模型在l'层上产生的激活映射,其中b为batch大小,h为空间维数;
给定b个文本的输入的mini-batch,“Teacher”模型和“Student”模型模型各取mini-batch,一个计算b*h的激活映射,一个计算b*h’的激活映射,进行reshape后得到
Figure FDA0003567804010000013
Figure FDA0003567804010000014
从两个模型中输出的激活映射中计算相似度矩阵:
对于“Teacher”模型:
Figure FDA0003567804010000015
其中,
Figure FDA0003567804010000021
为b×b矩阵;
Figure FDA0003567804010000022
Figure FDA0003567804010000023
的L2范数,
Figure FDA0003567804010000024
为应用L2规范化的结果;
对于“Student”模型:
Figure FDA0003567804010000025
相似度保持损失函数为:
Figure FDA0003567804010000026
其中||·||F表示Frobenius范数。
2.根据权利要求1所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,在进行知识蒸馏前,还包括构建实例数据集的过程。
3.根据权利要求2所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,S1所述实例数据集
Figure FDA0003567804010000027
表示有N个实例的数据集,每个实例xi包含一个文本si,目标ti和一个立场标签yi;每条文本由单词序列组成,si={wi0,wi1,...,win},每个目标也由单词序列组成,ti={ti0,ti1,...,tim},n和m分别是si、ti中单词的数量。
4.根据权利要求1、2或3所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,如果“Student”模型和“Teacher”模型具有相同的深度,“Student”模型的l'层与“Teacher”模型l层为相同depth的层;如果“Student”模型和“Teacher”模型具有不同的深度,“Student”模型的l'层是与“Teacher”模型位于相同区块末端的层,即两个模型池化层前的最后一层隐藏层。
5.根据权利要求4所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,所述“Teacher”模型为BERT模型中的BERT-Base模型。
6.根据权利要求5所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,所述的“Teacher”模型在预训练过程中,BERT-Base模型的输入向量由Token embedding、Segment embedding、Position embedding三部分组成。
7.根据权利要求1所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,加权超参数α为0.5。
8.根据权利要求1所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,超参数γ为0.5。
9.根据权利要求1所述的基于相似度保持的知识蒸馏的立场检测方法,其特征在于,温度参数T为60。
CN202110970107.9A 2021-08-23 2021-08-23 基于相似度保持的知识蒸馏的立场检测方法 Active CN113673254B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110970107.9A CN113673254B (zh) 2021-08-23 2021-08-23 基于相似度保持的知识蒸馏的立场检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110970107.9A CN113673254B (zh) 2021-08-23 2021-08-23 基于相似度保持的知识蒸馏的立场检测方法

Publications (2)

Publication Number Publication Date
CN113673254A CN113673254A (zh) 2021-11-19
CN113673254B true CN113673254B (zh) 2022-06-07

Family

ID=78545176

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110970107.9A Active CN113673254B (zh) 2021-08-23 2021-08-23 基于相似度保持的知识蒸馏的立场检测方法

Country Status (1)

Country Link
CN (1) CN113673254B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114168709B (zh) * 2021-12-03 2022-06-03 中国人民解放军国防科技大学 一种基于轻量化预训练语言模型的文本分类方法
CN114581946B (zh) * 2022-02-25 2023-06-13 江西师范大学 人群计数方法、装置、存储介质及电子设备
CN114817742B (zh) * 2022-05-18 2022-09-13 平安科技(深圳)有限公司 基于知识蒸馏的推荐模型配置方法、装置、设备、介质
CN115761654B (zh) * 2022-11-11 2023-11-24 中南大学 一种车辆重识别方法
CN117725960A (zh) * 2024-02-18 2024-03-19 智慧眼科技股份有限公司 基于知识蒸馏的语言模型训练方法、文本分类方法及设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110852426A (zh) * 2019-11-19 2020-02-28 成都晓多科技有限公司 基于知识蒸馏的预训练模型集成加速方法及装置
CN111611377A (zh) * 2020-04-22 2020-09-01 淮阴工学院 基于知识蒸馏的多层神经网络语言模型训练方法与装置
CN112001278A (zh) * 2020-08-11 2020-11-27 中山大学 一种基于结构化知识蒸馏的人群计数模型及其方法
CN112365385A (zh) * 2021-01-18 2021-02-12 深圳市友杰智新科技有限公司 基于自注意力的知识蒸馏方法、装置和计算机设备
CN112529180A (zh) * 2020-12-15 2021-03-19 北京百度网讯科技有限公司 模型蒸馏的方法和装置
CN112560631A (zh) * 2020-12-09 2021-03-26 昆明理工大学 一种基于知识蒸馏的行人重识别方法
WO2021060899A1 (ko) * 2019-09-26 2021-04-01 주식회사 루닛 인공지능 모델을 사용 기관에 특화시키는 학습 방법, 이를 수행하는 장치
CN112990296A (zh) * 2021-03-10 2021-06-18 中科人工智能创新技术研究院(青岛)有限公司 基于正交相似度蒸馏的图文匹配模型压缩与加速方法及系统
CN112988975A (zh) * 2021-04-09 2021-06-18 北京语言大学 一种基于albert和知识蒸馏的观点挖掘方法
CN113204633A (zh) * 2021-06-01 2021-08-03 吉林大学 一种语义匹配蒸馏方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062489B (zh) * 2019-12-11 2023-10-20 北京知道创宇信息技术股份有限公司 一种基于知识蒸馏的多语言模型压缩方法、装置
CN113159073B (zh) * 2021-04-23 2022-11-18 上海芯翌智能科技有限公司 知识蒸馏方法及装置、存储介质、终端

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021060899A1 (ko) * 2019-09-26 2021-04-01 주식회사 루닛 인공지능 모델을 사용 기관에 특화시키는 학습 방법, 이를 수행하는 장치
CN110852426A (zh) * 2019-11-19 2020-02-28 成都晓多科技有限公司 基于知识蒸馏的预训练模型集成加速方法及装置
CN111611377A (zh) * 2020-04-22 2020-09-01 淮阴工学院 基于知识蒸馏的多层神经网络语言模型训练方法与装置
CN112001278A (zh) * 2020-08-11 2020-11-27 中山大学 一种基于结构化知识蒸馏的人群计数模型及其方法
CN112560631A (zh) * 2020-12-09 2021-03-26 昆明理工大学 一种基于知识蒸馏的行人重识别方法
CN112529180A (zh) * 2020-12-15 2021-03-19 北京百度网讯科技有限公司 模型蒸馏的方法和装置
CN112365385A (zh) * 2021-01-18 2021-02-12 深圳市友杰智新科技有限公司 基于自注意力的知识蒸馏方法、装置和计算机设备
CN112990296A (zh) * 2021-03-10 2021-06-18 中科人工智能创新技术研究院(青岛)有限公司 基于正交相似度蒸馏的图文匹配模型压缩与加速方法及系统
CN112988975A (zh) * 2021-04-09 2021-06-18 北京语言大学 一种基于albert和知识蒸馏的观点挖掘方法
CN113204633A (zh) * 2021-06-01 2021-08-03 吉林大学 一种语义匹配蒸馏方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Similarity-Preserving Knowledge Distillation";Frederick Tung et al.;《arXiv.org,链接https://arxiv.org/pdf/1907.09682.pdf》;20190801;第1-10页 *
"基于BERT模型与知识蒸馏的意图分类方法";廖胜兰等;《计算机工程》;20210531;第47卷(第5期);第73-79页 *

Also Published As

Publication number Publication date
CN113673254A (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN110298037B (zh) 基于增强注意力机制的卷积神经网络匹配的文本识别方法
CN113673254B (zh) 基于相似度保持的知识蒸馏的立场检测方法
CN111241837B (zh) 基于对抗迁移学习的盗窃案件法律文书命名实体识别方法
CN110866117B (zh) 一种基于语义增强与多层次标签嵌入的短文本分类方法
CN111444726B (zh) 基于双向格子结构的长短时记忆网络的中文语义信息提取方法和装置
CN109800437A (zh) 一种基于特征融合的命名实体识别方法
CN111291556B (zh) 基于实体义项的字和词特征融合的中文实体关系抽取方法
Cai et al. Intelligent question answering in restricted domains using deep learning and question pair matching
CN106682089A (zh) 一种基于RNNs的短信自动安全审核的方法
CN112784041B (zh) 一种中文短文本情感倾向性分析方法
CN114239585A (zh) 一种生物医学嵌套命名实体识别方法
CN113515632A (zh) 基于图路径知识萃取的文本分类方法
CN115269860A (zh) 一种飞机维修领域的知识图谱构建方法
CN114417851A (zh) 一种基于关键词加权信息的情感分析方法
CN112732872A (zh) 面向生物医学文本的基于主题注意机制的多标签分类方法
CN113934835B (zh) 结合关键词和语义理解表征的检索式回复对话方法及系统
CN111914553A (zh) 一种基于机器学习的金融信息负面主体判定的方法
CN115238693A (zh) 一种基于多分词和多层双向长短期记忆的中文命名实体识别方法
CN115292490A (zh) 一种用于政策解读语义的分析算法
Pasad et al. On the contributions of visual and textual supervision in low-resource semantic speech retrieval
CN114048314A (zh) 一种自然语言隐写分析方法
CN111666375A (zh) 文本相似度的匹配方法、电子设备和计算机可读介质
CN114841148A (zh) 文本识别模型训练方法、模型训练装置、电子设备
CN114648029A (zh) 一种基于BiLSTM-CRF模型的电力领域命名实体识别方法
CN115169429A (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
GR01 Patent grant