融合规则和统计的BAGGING情感分析

2022-04-27 11:51李安昊王亮
网络安全技术与应用 2022年4期
关键词:极性词典卷积

◆李安昊 王亮

融合规则和统计的BAGGING情感分析

◆李安昊 王亮

(沈阳化工大学计算机科学技术学院 辽宁 110142)

文本情感分类主要分为基于规则和基于统计,其中基于统计的文本情感分类以深度学习方法为主。但是深度学习高度依赖于大量高质量的训练数据,而现实生活中没有大量的训练数据。基于规则词典的文本情感分类又依赖于情感词典的准确度。所以本文提出了一种基于统计的Bert和卷积神经网络和双向长短时记忆(BILSTM)的混合神经网络结构加基于规则词典的BAGGING的方式进行情感判别。经过试验证明,结合规则与统计的方法与单独使用词典和单独使用Bert相比,准确率有所提高。

情感分析;BAGGING;深度神经网络;规则词典

基于规则的方法无需使用有标注的数据就能进行情感计算,但是该方法依赖情感词典的准确度,无法解决未登录词的问题。而基于统计的方法存在依赖语料库的质量和所属领域的问题。因此,本文提出一种融合规则和统计的情感分析方法,分别使用自定义的规则与Bert - CNN - BILSTM的混合神经网络进行情感分析最后使用BAGGING对结果集成,改善了仅使用一种方式的缺点,实现对数据更准确的分析。使用真实的作文数据集实验证明,比起单独使用情感词典,单独使用Bert、情感词典和Bert - BILSTM集成模型在此任务上的效果,本文提出的方法在情感分析准确率上有所提升。

1 相关研究

1.1 基于情感词典的情感分析方法

在基于情感词典的情感分析方法中,情感词典是分类的基础,情感词典中包含大量的情感词,利用每个情感词都有情感极性和强度等实现情感极性的划分[6]。对于情感词典的构造,国外起步早,Hassan[7]在2010年提出使用单词相似度并利用马尔可夫随机游走的方法来判断一个给定单词的情感,生成全部单词的情感词典。2011年,Hassan等[8]提出了寻找外文单词情感极性的方法,通过计算词之间的语意相似度,构建图网络,通过计算图网络得到词的情感极性进而得到句子的情感极性。Turney[9]提出了互信息的方法即通过提出句子的特征,来计算这两个句子的互信息的值,从而判断词的情感极性进而判断句子的情感极性。

而中文的情感词典构建的相关研究起步晚,比较落后,相应的情感分析资源少。Feng[10]等通过大量的语料训练得到词的向量表示,计算各个词的皮尔森相关系数得到相似度从而得到词的情感极性。到现在,主要的中文情感词典有HowNet,大连理工大学情感词典,等等。

1.2 基于传统机器学习的情感分析方法

有监督的机器学习的方法是利用标注好的数据训练一个模型去预测一句话的情感极性。常用的机器学习的方法主要有线性回归(LR)[11]朴素贝叶斯(NB)[12],决策树[13],支持向量机(SVM)等。

支持向量机(SVM)最初由Vapnik[14]提出,它通过寻求结构化风险最小以提高学习机泛化能力,实现经验风险和置信范围的最小化,从而达到在统计样本量较少的情况下,亦能获得良好统计规律的目的[15]。SVM占据了重要的地位,并且在很长的时间段中效果拔群。但是有监督需要高质量的标注数据,但是依赖人工标注,就难以排除人为主观对数据的影响。

1.3 基于深度学习的情感分析方法

深度学习可以理解为人工神经网络(简称神经网络)。它可以用神经网络获得更强的学习(表示)能力,深度学习使用多层非线性处理单元的级联来进行特征提取和转换。接近数据输入的较低的层学习简单的特征,而较高的层从较低的层特征中学习较复杂的特征,并且学习特征信息能力强大。深度学习在许多任务中取得了最优的结果。现在深度学习的各种模型被用于情感分析中。Ji Young CNN[16]等人提出了通过词以词向量的方式作为输入,卷积层对词向量卷积然后池化经过全连接层输出情感极性,能有效地提取词向量的局部特征。Zhang等人[17]呈现了一个字符水平CNN用于文本分类,分类精度得以显著提高。Fu[18]等人使用了CNN和BILSTM混合神经网络,通过CNN提取局部特征,BILSTM将局部特征串联起来。

2 融合规则和统计的BAGGING情感分析

2.1 基于规则词典的情感分析

句子中的情感词通常包含大量的情感信息,且情感词是带有不同强度情感倾向性的词语,对文本句子情绪识别非常的有效[19]。基于规则的情感分析是通过查找已有的情感词典资源来判断词语的情感极性,也叫做中文文本数据的情绪计算。本文采用大连理工大学中文情感词汇库(如图1所示),我们使用其中的7类对文本数据进行情绪计算,该词典在Ekman的基础上,词汇体对情感类别划分得更为细致,词汇本体中共有7个大类21个小类。情感强度有1,3,5,7,9五个档,数越大代表情感强度越大,我们将21小类词语归于添加到的七大类的情感中来计算句子中的情感极性。

大型船舶均需由洋山港主航道进出洋山港,期间经过洋山港警戒区和筲其岛附近交通流交会水域。[5]对上海港引航站洋山分站1 a的引航计划进行统计分析,2015年10月1日至2016年9月30日,洋山港共进出大型船舶9 125艘次,平均每天25艘次,最多为38艘次,船型以大型集装箱船舶为主,占总数的94%。由交通流统计分析,大型船舶与过往船舶在筲其岛附近会遇次数日均约在50艘次,在金山航道南北段垂向交会警戒区水域交叉会遇则更为频繁,另外还有往返于洋山港和舟山等岛屿的客滚船穿越主航道,进一步增加了会遇的风险。[6]

图1 大连理工大学中文情感词汇库

句子文本中使用哈工大的分词LTP将句子分词,通过使用一定的规则在大连理工大学的词典中将句子中的情感词提取出来,通过情感词在词典中的情感极性进行情感判断。普通的基于词典的文本挖掘如使用HowNet进行文本挖掘,分析一句话是积极的还是消极的。给定一句已经分好词的文本,与词典中的情感词匹配,出现正向+1,负向-1,计算总得分判断文本的情感极性,分数为正是积极,分数为负是消极,分数为0是中性。此方法只适用于三分类而不适用于多分类。所以在本文中我们自己制定了多分类的规则,该方法是基于一句话情感词的个数和词典中词的情感强度来判断一句话的情感极性(如图2所示)。分为三种情况:

(1)一句话中无情感词

(2)一句话中某类别情感词多于其他的类别情感词

(3)一句话中所有类别的情感词一样多

图2 基于词典的情感挖掘流程

2.2 Bert - CNN – BILSTM的情感分析

Bert - CNN - BILSTM模型,主要包含Bert[20]字嵌入层,CNN层和BILSTM层,其结构如图3所示

图3 基于Bert - CNN - BILSTM的结构模型图

(1)输入层

(2)卷积层

为了更好提取特征,我们在卷积层使用不同大小的卷积核对输入的向量进行卷积操作,然后池化,本文是用了Max-Pooling提取局部特征,再使用BILSTM将提取的局部特征连起来形成全局特征。在NLP领域卷积核的宽和词向量的维度一致,并且卷积核只会在EMBEDDING中向高处移动,每次卷积核滑动过的都是含有全部信息的单词。

将局部特征的组合作为时序序列输入进BILSTM当中,BILSTM将局部特征串联起来,得到全局的语义信息。

(3)BILSTM层

RNN是序列模型,非常合适提取句子的特征,文档中的单词是按顺序处理的,能很好理解句子的语意信息,但是RNN容易发生梯度消失和梯度爆炸,而LSTM和BILSTM是RNN的衍生,LSTM有三个门和记忆单元,一定程度上解决了RNN的梯度消失,但是LSTM不能识别后面单词对前面单词的影响。而BILSTM解决了这个问题,因为BILSTM是双向的,前向是从第一个单词理解和处理到最后一个单词,后向是从最后一个单词到第一个单词。有两个相反的层,模型就可以更好地站在前向和后向的角度,会更多学习到上下信息。LSTM的计算过程如下:

其中tanh激活函数选择将输入归一化到[-1,1]之间。为Sigmoid激活函数,区间为[0,1],越接近1的越容易被记住,而靠近0的容易被遗忘。用来分别控制输入门i输入数据的选择,遗忘门f遗忘上一状态的state cell中一些状态,输出门ot最终的输出。

(4)基于改进BAGGING集成的情感分析

集成学习是将许多个分类器集成之后形成一个新的分类器,集成算法可以保证各个分类器的多样性,将一个不稳定的弱分类器集合成一个较为稳定的强分类器。BAGGING[20-21]为集成学习的一种,BAGGING又叫自举汇聚法(Bootstrap Aggregating),Bootstrap抽样有放回的抽样,从原始样本中抽取一定数量的样本,计算采样集数量,并重复上述过程,形成N个采样集,但是Bootstrap采样可能会导致原数据中20%~30%无法被丢弃,模型无法充分利用数据,所以该模型使用全部的数据集作为每个模型的输入数据集。

图4 集成模型结构图

集成模型结构如图4所示,通过Bootstrap采样方式对原始数据有放回的采样,得到两个采样集,其中这两个采样集内部可能会有重复的数据,但是对外表现为相互独立,该模型将基于规则词典和统计Bert - CNN - BILSTM模型作为弱分类器,将其中采样集1作为基于规则词典的输入,采样集2作为基于统计模型输入。改进BAGGING规则是通过0,1投票(一致率)来进行分类,如果规则和统计模型在BAGGING中得到了相同(情感)分类结果则置1,则输出此情感。不同则置0,并计算句子中情感词的强度的最大值,其中强度最大值情感的为本句的情感。

3 实验结果与分析

3.1 数据集

为了证明本文方法的有效性,我们从乐乐课堂作文数据中人工标记出了4万条带有情感的句子,并随机加入2万条无情感的句子。其中的情感共有7类,分别是fear,happy,sadness,disgust,neutral,like,anger。为了保持样本的均衡,类别数据在总数据中的占比为1:1:1:1:3:1:1。最终构成训练数据。

作为测试,我们从真实的中学生的作文中随机地抽取了30000条数据,其中带有7类情感的数据共有4832条。

3.2 实验结果

其中在给予统计的模型当中,我们分别比较了单独使用情感词典,单独使用BERT,情感词典和BERT+LSTM集成模型,与基于规则进行BAGGING并输出结果。表1为对比结果。

表1 实验对比结果

方法准确率/% 情感词典57.72% BERT86.91% 情感词典+(BERT+BILSTM)集成模型88.34% 情感词典+(BERT+CNN+BILSTM)集成模型89.65%

从表1中可以看出,单独使用情感词典效果与猜测的效果差不多,情感词典是一个非常弱的分类器,高度依赖情感词典。单独使用Bert的准确率大幅度提高,说明深度学习具有更好获取到句子深层的语意信息的能力。而深度学习的集成可以看出,对于情感词典+BERT,加入BILSTM能双向地提取词向量的特征,准确率提升了1.43%。CNN的加入弥补了BILSTM对局部特征提取能力弱的不足,本文模型的准确率达到了最高。

4 结语

针对作文领域的文本情感分析,通过对集成算法和深度学习网络的深入探索和研究,发现集成算法可以有效提高情感识别的准确率和精度。本文提出了一种基于规则和统计BAGGING的文本情感分析的方法,利用无监督的基于词典的方法直接计算出句子的情感极性并与深度学习网络集成通过一致率预测出句子的情感极性。将无监督和有监督结合起来共同预测。经过实验对比,发现该算法一定程度上提高了在文本情感极性分类中的准确率,在未来我们希望更高效地将机器学习和深度学习集成,加强对无监督学习的研究。其次可以将注意力机制加入到模型当中。

[1]Nasukawa T,Yi J.Sentiment analysis:Capturing Favorability Using Natural Language Processing [C]//in Proceedings of International Conference on Knowledge Capture. 2003:70-77.

[2]Joshi A,Balamurali A R,Bhatacharyya P,et al.C-Fel-It:A sentiment analyzer for micro-blogs[C]?Proc of the ACL-HLT 2011 System Demonstrations. Stroudsburg,PA:ACL,2011:127-132.

[3]Chesley P,Vincent B,Xu Li,et al.Using verbs andadjectives to automaticaly clasify blog sentiment[J]. Training,2006,580(263):233-235.

[4]Ye Qiang,Zhang Ziqiong,Law R.Sentiment clasification of online reviews to travel destinations by supervised machine learning approaches[J].Expert Systems with Applications,2009,36(3):6527-6535.

[5]Boiy E,Moens M F.A machine learning approach to sentiment analysis in multilingual Web texts[J].Information Retrieval,2009,12(5):526-558.

[6]Hassan A,Radev D.ldentifying text polarity using random walks[C]. In. Pro-ceedings of ACL,2010:395-403.

[7]HassanA,Abu-Jbara A,Radev D,et alldentifying the semantic orientation of foreign words[C]. In Proceedings of ACL,2011:592-597.

[8]Velikovich L,BJlair-Goldensohn S,Hanan Ket al The viabiliy of web-derive-d polarity lexicons[C] In Proceedings of NAACL.2010:777-785.

[9]Turney P D,Littman M L. Measuring Praise and Criticism:Inference of Se-mantic Orientation from Association[J].ACM Transactions on Information Systems,2003,21(4);315-346.

[10]冯超,梁循,李亚平,等.基于词向量的跨领域中文情感词典构建方法数据采集与处理,2017,32(03): 579-587.

[11]Matthew Richardosn,Ewa Dominowska,Robert Ragno. Predicting clicks:esti-mating the click-through rate for new ads,2007:521-530.

[12]Langley P,Thompson K.An analysis of Bayesian classifiers[C]// Procedings of the Tenth National Conference onArtificial Inteligence. AAAI Pres,1992:223-228.

[13]Lewis D D,Info C F,Lang S,et al.A comparisonoftwo learning algor-ithms for text categorization[C]// Procedings of the Third Annual Symposium on Document Analysis and Information Retrieval,1994:81-93.

[14]VAPNK V.SVM method of estimating densty conditional probatility,and c-onditional densit(C]IEEE lntemnational Sympostum on Circuits and Systems,20074-752.

[15]Dong Fei,ZhangYue.Automatic features for essayscoring An empirical study [C]//Proceedings of the 2016 Conference:on Empirical Methods in NaturalLanguage Processing,2016:1072-1077.

[16]Ji Young Le,F Dernoncourt.Sequential Short-Text Clasification with Recur-ent and Convolutional Neural Networks[C]//Procedings of the Conference ofNAACL 2016,2016:515-520.

[17]ZhangX,ZhaoJB.Character-level convolutional networks for textclassification[C]//Advances in Neural Information Processing Systems. 2015:649-657.

[18]付瑞吉,王栋,王士进,等.面向作文自动评分的优美句识别[J].中文信息学报,2018,32(06):88-97.

[19]曾雪强,华鑫,刘平生,等.基于情感轮和情感词典的文本情感分布标记增强方法[J].计算机学报,2021,44(06):1081-1084.

[20]Devlin J,Chang M W,Lee K,et al. BERT: Pre-training of Deep Bidirectio-nal Transformers for Language Understanding[J]. 2018.Leo Breiman. Baggi-ng predictors. Machine learning,1996,24(2):123-140.

[21]Leo Breiman. Random forests[J]. Machine Learning,2001,45(1):5-32.

国家工信部智能制造专项(项目编号:工信函[2016]213号)

猜你喜欢
极性词典卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
米兰·昆德拉的A-Z词典(节选)
米沃什词典
跟踪导练(四)
词典引发的政治辩论由来已久 精读
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
分析PT、CT极性反接对小电流接地故障选线的影响
漫画词典