基于双三元组网络的易混淆文本情感分类方法

2024-03-26 02:52程世杰张海丰
中文信息学报 2024年1期
关键词:三元组类别分类

徐 瑞,曾 诚,程世杰,张海丰,何 鹏

(1.湖北大学 计算机与信息工程学院,湖北 武汉 430062;2.湖北大学 人工智能学院,湖北 武汉 430062;3.湖北大学 网络空间安全学院,湖北 武汉 430062;4.湖北大学 智慧感知系统与安全教育部重点实验室,湖北 武汉 430062)

0 引言

近年来,随着网络媒体的迅速普及,人们在诸多平台上留下了大量含有主观感情色彩的评论,对这些评论数据进行情感倾向分析,可以挖掘出用户有效的观点信息。

当前预训练技术使得情感分类任务取得了突破性进展[1],但由于语言的复杂性和多样性,情感分类数据集中包含着较多难以学习的易混淆文本。此类文本个性特征不鲜明,通常包含较多的混淆词,因与被混淆类别之间特征相似度较高而难以被准确区分。分类模型往往倾向于区分易分类文本,对易混淆文本的分类效果不佳,因此整体的训练效果受到了一定影响。易混淆文本示例如表1所示。

表1 易混淆文本示例

传统的文本向量化方法 Word2Vec和GloVe忽略了文本上下文语境信息,在面对易混淆文本时无法处理一词多义问题。预训练模型BERT通过捕获句子上下文信息可以消除词的多义性,但未能挖掘出易混淆文本的深层语义特征,下游任务想要准确识别出真实类别同样困难。

易混淆文本属于困难样本的研究范畴,困难样本目前的解决思路是从数据分布和模型结构两个方面进行优化[2]。Wang等[3]利用数据增强方法对困难样本进行扩充,平衡简单样本和困难样本之间的数据比例,但模型分类能力提升有限;Shrivastava等[4]提出困难样本挖掘算法,将筛选出的困难样本加入到新的训练批次进行训练,但此方法一般用于困难样本中困难负样本的挖掘。相较于数据层面的处理,Lin等[5]提出Focal Loss损失函数,对困难样本赋予更大权重,使得模型更加关注于难分类的样本,但也造成了模型容易受到噪声的影响。事实上,对于困难样本中的易混淆文本的处理,本质是希望其与同类别文本的距离尽可能相近,与被混淆类别文本的距离尽可能远。对此,Jiang等[6]利用有监督对比学习模式针对于困难负样本进行损失优化,增大不同类别之间的距离;而Cai等[7]在行人重识别领域利用三元组网络的特点,有效地拉近了同类别样本间的距离,又与混淆类别样本保持了区分度。

但是传统的三元组样本选择方式在同类别特征之间仍有明显的差异,有进一步提升的空间。鉴于此,本文提出一种针对易混淆文本的双三元组网络情感分类方法(Double Triplet Network for Sentiment Classification,DTN4SC),针对文本情感分类领域的语义特色,在数据层面和模型结构上同时进行优化。该方法在传统模型构建的分类器上,利用改进的双三元样本组构建方式,将得到的样本组合传入三元组网络进行针对训练,使模型深入挖掘混淆文本的深层语义信息;同时参考困难样本挖掘思路将筛选出的易混淆文本动态加入到下一批次训练中,以降低数据中易混淆文本产生的负面影响,提升模型的分类效果。本文的主要贡献包括两个方面:

(1) 提出了一种针对易混淆文本的双三元组网络情感分类方法,对模型训练过程中筛选出的易混淆文本进行针对训练,使用改进的双三元样本构建方式可有效降低数据中易混淆文本产生的负面影响,最大化地挖掘数据中潜在的情感信息,提升模型的分类性能。

(2) 本文设计的针对易混淆文本方法具备通用性,可兼容不同结构的深度语言模型,在多个分类模型上效果表现良好。

1 相关工作

1.1 情感分类

情感分类是指分析、总结和判断文本中情感信息并将其划分成各类情感倾向的研究方法,是对文本所表达的观点、态度的类别划分[8]。现有的文本情感分类方法主要分为3类: 基于词典和规则的方法、基于机器学习的方法和基于深度学习的方法[9]。

基于词典和规则的情感分类方法[10-11]利用构建的情感词典或者人工规则,提取文本中情绪相关的观点词进行情感计算。但由于情感词典构建难度较大,通用性较差,同时存在人工设计的知识库和判断规则无法解决不同领域的问题[12],使得基于情感词典和规则的方法鲁棒性较低,分类效果不理想。对此研究人员开展了基于机器学习的情感分类方法的研究,Pang等[13]使用支持向量机(Support Vector Machine,SVM)、最大熵算法(ME)、朴素贝叶斯算法(NB)和n-gram等算法分别实现对电影影评和旅游博客评论的分类,随后研究人员利用不同机器学习模型对情感数据展开了一系列实验。但基于机器学习的情感分类方法依赖于人工筛选的特征,并且难以学习到较深层的语义信息,因此泛化能力和迁移学习能力较差。

相较于基于机器学习的方法,基于深度学习的方法不需要人工提取特征,其会自动挖掘出文本表征中更加深层的语义特征。Blunsom等[14]利用卷积神经网络(Convolutional Neural Networks,CNN)对Twitter文本进行情感分析研究;Wang等[15]则利用长短时记忆(Long Short Term Memory,LSTM)网络存储长文本的特性,在Twitter文本上情感分类效果更好。此外,多种网络模型的融合结构也被相继提出,Lai 等[16]提出了结合CNN与BiGRU的网络模型,充分利用了两个模型各自的优势。为了捕捉数据特征的内部相关性,挖掘文本的关键特征,注意力机制[17]也被引入NLP领域,其与TextCNN、LSTM等模型融合后,有效降低了对外部信息的依赖程度,提升了模型的分类效果。随着预训练技术的快速发展,大量自然语言处理领域的研究人员逐渐采用BERT等预训练模型对文本进行向量表征来完成下游的情感分类任务。BERT模型采用双向Transformer结构,相较于传统Word2Vec等词向量方法,它突破了单向语言模型的局限,面对情感文本中的易混淆文本,可以更好地表示文本特征,因此本文采用BERT模型作为基准编码器来进行文本特征提取。

尽管上述深度学习方法在情感分类任务中有着不错的表现,但是部分文本存在个性特征不鲜明、情感倾向易混淆等问题,仍然制约模型的整体分类效果。这些易混淆的文本在经过词嵌入模型后,分类层无法有效地识别其真实类别,因此对于易混淆文本的进一步研究是不容忽视的。

1.2 易混淆文本

易混淆文本在一定程度上制约了现有模型的分类效果,如图1所示,易混淆文本大部分集中在分类决策线周围,模型对其特征差异性不敏感,无法有效识别出真实类别[18]。

图1 易混淆文本

在文本情感领域中,易混淆文本是由于情感倾向模糊或者包含较多的混淆词而导致类别被混淆的文本,如何有效地避免易混淆文本对模型的负面影响,是一个棘手的问题。宋等[19]在BERT模型中引入Focal loss损失函数,在一定程度上提高了对易混淆文本的分类能力,但没有充分利用易混淆文本;Xu等[20]通过图神经网络结合注意力机制的方式来学习易混淆法律文本间的特征差异,在法律文本中得到不错的效果,但其缺点是忽略了同类型法律词条之间的关联性。因此,如何在扩大混淆类别距离的同时,对同类别文本进一步聚类,是研究易混淆文本的重要思路。事实上,三元组网络可以很好地解决这个问题,其在行人重识别领域中处理行人重叠混淆问题时表现突出。因此,本文同样采用三元组网络对易混淆文本进行针对性训练,并根据文本情感数据的特性进行优化改进。

1.3 三元组网络

三元组网络由孪生网络发展而来,在人脸识别领域中,由于人脸结构相似导致模型对不同样本特征差异不敏感,对此,Chopra等[21]提出孪生网络,使用两个结构相同、参数共享的神经网络,向网络中输入一个正例人脸图片和负例人脸图片,经过计算得到两个样例的特征相似度,通过训练可以有效地增大不同类别间的距离。

但孪生网络对基准样例较为敏感,无法在区分不同类别之间距离的同时识别同类别中的样本。对此,Hoffer提出三元组网络[22]使用基准样例、正例和负例组成训练组,利用三个参数共享的神经网络模型提取输入特征,最后进行三元组损失计算,有效地解决了孪生网络中对同类别个体识别能力较差的问题。如图2所示的三元样本组,这样构建的目的是综合考虑同类样本和非同类样本,因此三元组网络在多个任务上效果比孪生网络表现出色。尤其是针对行人重识别[23],三元组网络可以很好地跟踪重叠行人的轨迹,同样可以利用三元组网络对易混淆文本的特征信息与其他文本进行特征相似度对比,挖掘出丰富的语义信息。

图2 三元样本组

同时Chen等[24]在构建三元组时,在传统三元训练准则上多加入一个负样本,发现能更好地实现类内差异的缩小以及类间差异的增加。受该工作启发,本文设计出双三元组网络,分别从易分类文本和普通文本中构建出两对三元样本组并赋予不同的权重,相较于传统随机挑选样本构造的三元组,在度量不同类别文本的同时,本文方法更加关注从易分类文本中挑选出的样本,以此深入挖掘出简单样本和易混淆样本的共性情感特征。

2 基于双三元组网络的情感分类方法

本节详细阐述所提出的基于双三元组网络的易混淆文本情感分类方法DTN4SC,其总体训练流程如图3所示。该流程包括3个部分: ①分类模型的构建; ②易混淆文本与易分类文本筛选; ③基于双三元组网络的易混淆文本针对性训练。

图3 DTN4SC方法训练流程图

首先,基于BERT模型构建分类器,对输入文本编码后经过非线性激活层得到文本的深层特征语义,再添加分类层对文本进行初步分类,得到每个类别的预测概率;然后,设计出文本特征筛选器,根据各类别预测情况过滤出易混淆文本和易分类文本的语义特征;随机从易分类文本中挑选正例样本和负例样本与易混淆文本,构建出第一个三元样本组。同样,随机在普通文本中挑选正例样本和负例样本与易混淆文本构建出第二个三元样本组,将两对易混淆三元样本组以不同权重分别送入三元组网络得到双三元组损失函数,并加入到交叉熵损失中来提高易混淆数据在模型中的影响程度;同时,将本批次筛选出的易混淆文本加入到下一批次继续进行训练,进一步学习同类数据间的相似性和易混淆数据的差异性。

2.1 基于BERT模型构建分类器

BERT模型采用双向Transformer编码器结构,利用大规模无标注语料库进行训练。在模型训练阶段,为了能够有效学习到双向编码的能力,BERT采用了掩码语言模型(Masked Language Model,MLM)和下句预测(Next Sentence Prediction,NSP)任务,使其能够充分学习到句子中上下文的语境信息,并尽量避免过拟合问题的产生。考虑到在情感分类任务中使用BERT模型作为编码器分类效果良好,因此本文采用BERT作为特征提取器得到输入文本的语义表示,然后进一步提取特征并进行分类,BERT模型结构如图4所示。

图4 BERT分类模型

输入文本si=<[CLS],e1,e2,…,et,[SEP]>,其中si表示该训练批次第i条样本,et表示为输入文本中的第t个字,[CLS]和[SEP]分别作为输入文本的开头和结尾标志。如式(1)所示,当文本序列经过BERT编码器后,hi∈d输出向量蕴含了整个句子的语义信息,如式(1)所示。

hi=fbert(si)[0]

(1)

其中,W1∈d×d和W2∈M×d为权重矩阵,W3∈M为参数矩阵,类别预测概率中最大值即为当前输入文本si的类别预测值。

2.2 易混淆文本和易分类文本的筛选

输入文本经过上述所构建的分类器得到不同类别的概率预测情况,此时设计出筛选函数过滤出易混淆文本和易分类文本。对于易混淆文本而言,由于分类器难以从当前文本序列中学习到正确类别的个性特征,导致与被混淆类别特征向量相似度较高,两者预测分数十分接近;而易分类文本是模型能够较快学习到特征的文本,预测标签与真实标签误差较小,此类文本也被定义为简单样本[5],普通文本则为上述两类文本以外的其他文本。从损失函数角度分析,训练过程中易混淆文本损失较大,易分类文本损失较小,为此,本文引入了针对这两种文本的筛选策略。

易混淆文本筛选策略如式(4)所示,λ为超参数表示混淆类别分数阈值。类别预测概率前二的差值在阈值λ之内的文本会被筛选器判别为易混淆文本,此时筛选出此文本的特征向量。

(4)

易分类文本的筛选策略类似,为了进一步挖掘易混淆文本中潜在的情感信息,筛选出易分类文本与易混淆文本特征,充分对比学习,提升分类器对易混淆文本的学习能力,筛选易分类文本规则如式(5)所示。

(5)

其中,μ为超参数,为易分类文本的分数阈值,本文设置策略为二分类数据集值为0.7,七分类值为0.3。在实际训练过程中,为了让模型进一步关注易混淆文本,对其施加更高的权重,本文将筛选出来的易混淆文本加入到下一批次继续训练,以达到扩充易混淆文本数据的目的。

2.3 基于双三元组网络的训练策略

针对易混淆文本训练策略,首先随机从易分类文本中挑选正例样本和负例样本与易混淆文本构建出第一个三元样本组,同样随机从普通文本中挑选正例样本和负例样本与易混淆文本构建出第二个三元样本组;接着,分别通过三元组网络得到双三元损失函数,同时赋予第一项损失函数更高的权重损失,以此使得训练目标拉近基准样例和正例的距离,同时使基准样例远离负例,设计如式(6)所示加权双三元组损失(Weighted Double Triplets Loss,WDTL)函数。

(6)

其中,[z]+=max(z,0),前一项称为强推动,由易分类文本中挑选构建;后一项为弱推动,为普通文本中挑选构建。为了让模型深入挖掘出易分类文本中的特征以供易混淆文本学习,设置前一项权重大于后一项,即β小于1。δ1和δ2是超参数,为训练过程中设置的阈值参数,a为基准样例,p+和n+分别为易分类文本中构建的正例样本和负例样本,p-和n-分别为普通文本中构建的正例样本和负例样本,d(a,p)和d(a,n)分别表示基准样例与正例的距离、基准样例与负例的距离。本文选用欧氏距离作为距离度量方式,将样本特征向量映射到欧氏距离空间以实现三元组学习的目标。

在训练微调阶段,本文设计使用了基于三元组损失函数优化过的目标函数。在对易混淆文本,针对训练的同时保证普通文本不受影响,目标函数如式(7)、式(8)所示。

Lwdtl为双三元组损失,Lce表示传统交叉熵(Cross Entropy,CE)损失。cm为预测类别属于类别m的概率;gm是指示变量,如果文本预测类别和真实类别相同则为1,否则为0,α为超参数,用于调节双三元组损失权重。

3 实验与分析

3.1 实验设置

3.1.1 实验数据集

为检验所提方法对易混淆文本的分类性能,本文使用微博情绪分类数据集nlpcc2014、外卖评论数据集waimai_10k以及谭松波博士整理的评论数据集ChnSentiCorp作为实验数据集。

数据集nlpcc2014来源于NLPCC2014任务中微博评论情绪识别,包含7种情感标注,其中happiness类别3 301条、like类别5 760条、anger类别2 086条、sadness类别2 712条、fear类别363条、disgust类别3 751条、surprise类别1 061条。数据集waimai_10k来源于百度外卖用户用餐评价,其中正向情感数据有4 001条,负向情感数据有7 987条。数据集ChnSentiCorp来源于谭松波收集关于酒店、笔记本和书籍相关的语料评论,其中,正向情感数据有5 322条,负向情感数据有2 444条。各数据集详情如表2所示,实验数据按照8∶1∶1的比例划分为训练集、测试集和验证集。

表2 数据集统计信息

3.1.2 实验参数设置

本文实验参数主要包括BERT模型参数、易混淆筛选器超参数和双三元组损失参数,具体模型参数配置如表3所示。

表3 模型参数配置

根据不同数据集的具体特征,对易混淆筛选器混淆类别阈值λ和三元组损失加权超参数α进行了参数敏感性分析,最终选取最优的参数作为实验参数,各数据集表现最优参数如表4所示。

表4 不同数据集参数

3.2 评价指标和对比实验

3.2.1 评价指标

本文采用准确率(Acc)和F1值对分类结果进行评价,计算如式(9)~式(12)所示。

其中,TP(True Positive)表示事实为正样本预测为正,FP(False Positive)表示事实为负样本预测为正,TN(True Negative)表示事实为正样本预测为负,FN(False Negative)表示事实为负样本预测为负。

3.2.2 对比实验

为评估所提方法针对易混淆文本的分类效果,本文以BERT作为基准编码器,并选取部分在困难样本领域和易混淆文本中表现较好的方法与之进行对比实验。

(1)EDA[3]: 通过对易混淆文本进行数据增强,平衡数据比例,提高模型对易混淆文本学习能力。

(2)Focal-Loss[19]: 构建困难样本损失函数,缓解了少量易混淆文本和大量普通文本对分类器学习贡献度不同的问题。

(3)OHEM[25]: 使用在线困难样本挖掘的Add模式,直接将筛选出的易混淆文本加入到训练数据,相较于Replace模式效果更好。

(4)Noisy-HEM[26]: 利用余弦距离过滤混淆文本,进行损失优化,同时微调阶段之前加入噪声提高泛化能力。本文选取该方法中的损失优化作为对比实验。

(5)H-SCL[6]: 对易混淆文本进行有监督对比学习,相较于无监督对比学习方法UCL(Unsupervised Contrastive Learning),其随机采样性能更好。

3.3 实验结果与分析

不同方法在三个数据集上的准确率(Acc)和F1值如表5所示。由实验结果可知,针对易混淆文本处理后的模型普遍优于基准模型BERT,在准确率和F1值上都得到了一定的提升。其中,本文方法DTN4SC相比于其他所列举方法,在三个公开数据集上整体表现更好。对于waimai_10k数据集和nlpcc2014数据集,本文方法对基准模型效果提升最大,F1值分别提升了2.35%和3.16%。而对于ChnSentiCorp数据集,本文方法相较于Noisy-HEM方法效果欠佳。分析结果发现ChnSentiCorp数据集的平均长度为140,而waimai_10k和nlpcc2014数据集平均长度分别为40和50,短文本所含信息量少,其他方法很难学习其中的个性特征,而本文方法可以挖掘并对比同类和非同类之间的相似性和差异性,因此在对短文本的处理上会优于其他方法;而长文本中所含信息丰富,各个方法都能较好地学习到文本中的特征模式,对基准模型BERT的提升效果相近,其中Noisy-HEM方法效果最佳。

表5 各方法在不同数据集上的结果 (单位: %)

同时,为验证本文方法对不同分类模型的兼容性,进一步说明本文方法对文本混淆问题的改善情况,分别使用近年来发布的其他模型LSTM、BERT-BiGRU[27]和XLNET-RCNN[28]替代本文所选分类模型进行实验,结果如表6所示。实验结果表明,将基准模型BERT替换为其他分类模型,本文方法依然能使分类效果得到明显的提升,对数据中易混淆文本进一步聚类,可以明显提升模型的分类性能,验证了本文方法不仅兼容大型预训练模型,而且也兼容传统模型。同时,实验结果表明,在情感分类问题的研究中,对文本混淆问题进行处理是十分必要的。

表6 DTN4SC方法在其他模型上的效果 (单位: %)

3.4 参数敏感性分析

为测试易混淆文本筛选器阈值α和三元组损失权重参数λ对DTN4SC方法性能的影响。以数据集waimai_10k为例,本文选取了不同参数对模型进行训练,绘制不同阈值和权重参数的三维曲线图如图5所示。

当易混淆筛选器类别阈值α选取为0.04,且三元组损失权重λ选为0.3时,模型性能此时表现最优。这是由于: ①当筛选器阈值选取过小时,筛选器无法过滤出大部分易混淆文本,针对训练效果较差;当筛选器阈值选取过大时,筛选器误将普通样本识别为易混淆文本,减弱了模型的泛化能力。②由于易混淆文本在总体样本中占比不大,合适的三元组权重可以保证模型的性能。

为了深入挖掘出易混淆文本语义特征,本文在设计三元损失函数时构建了两组三元样本组。对此,进一步说明所提出的双三元组损失函数相较于传统三元组损失函数的性能效果,以此验证本文方法对混淆文本的改善程度,本文选取nlpcc2014数据集中易混淆的happiness、like和surprise三个类别,使用t-SNE算法(t-distributed Stochastic Neighbor Embedding)对测试集输出的特征可视化处理,结果如图6所示。

图6 nlpcc2014测试集数据可视化

图6(a)为基准模型BERT训练过后在nlpcc2014测试集上happiness、like和surprise三个类别特征向量的二维空间表示,测试集数据在嵌入空间的分布情况较为散乱,文本混淆问题突出,模型的分类性能受到制约。图6(b)使用传统三元组损失构建模型进行训练,相较于图6(a)不同类别之间距离有了明显的差异,但happiness和like类别交错堆叠问题突出,类内之间距离较为分散。图6(c)为使用本文方法DTN4SC优化后的模型,明显看出同类别之间的距离得到了拉近,混淆问题得到明显改善,离群文本也得到了减少,这说明对易混淆文本进行了修正加强了模型对情感数据的区分能力。但事实上,采用三元组损失无法消除样本的错误移动,只能约束和抑制这种负面趋势,因此图6(b)和图6(c)仍有不少互相交错的离群样本。

3.5 消融实验

为进一步说明所提方法的合理性,本文进行了消融实验。

实验一是分别设计了使用传统三元组损失构建的方法和“去除易混淆文本动态加入下一批次步骤”的方法,消融实验结果如表7所示。从表中可以看出,相较于传统三元组损失函数构建的模型,本文提出的加权双三元组损失函数对模型的提升效果更加明显,对易混淆文本区分能力更强。同时,如果去除易混淆文本动态加入下一批次步骤,模型的分类性能会有一定的下降,证明了所提方法的合理性和有效性。

表7 消融实验结果 (单位: %)

实验二是进一步探索出在不同混淆数据比例下的对比实验。

易混淆文本筛选器阈值决定了对混淆文本的容忍程度,不同数据集由于文本特性信息不同、质量和长度不同,导致筛选器阈值最优参数也不同,在其他超参数为最优参数下,探究数据集混淆比例在什么范围时,本文方法对基准模型的性能提升较大,实验结果如图7所示。不同筛选器阈值对基准模型的性能提升差异明显,但筛选器阈值选取范围在0.03~0.1之间时,模型整体性能提升较为理想。缩小了对不同数据集调参时选择合适阈值超参数范围,提高本文方法的适用性。

图7 不同混淆比例下的准确率

4 总结与展望

本文针对情感分类任务中易混淆文本对模型性能的影响,提出了基于双三元组网络的情感分类方法DTN4SC。该方法在构建易混淆三元样本组合时,更加关注易分类文本的个性特征,充分挖掘同类样本之间的共有特性,并减弱混淆样本带来的负面影响;同时,将各批次筛选的易混淆加入到下一批次进行训练,进一步提高模型的分类能力和泛化能力。在三个公开的中文情感分类数据集上的实验结果充分证明了本文所提方法的有效性和合理性。但也存在着一些不足之处,比如易混淆筛选器阈值参数需要针对不同数据集进行微调设置,缺乏灵活性。在下一步工作中,将尝试对根据数据集整体样本的平均距离生成自适应的权重,进一步实现对易混淆文本检测的优化。

猜你喜欢
三元组类别分类
基于带噪声数据集的强鲁棒性隐含三元组质检算法*
分类算一算
特征标三元组的本原诱导子
关于余挠三元组的periodic-模
分类讨论求坐标
数据分析中的分类讨论
教你一招:数的分类
服务类别
论类别股东会
中医类别全科医师培养模式的探讨