多维特征融合的混合神经网络文本情感分析模型

2023-10-18 10:18董光文
小型微型计算机系统 2023年10期
关键词:主题词特征向量语义

袁 健,董光文

(上海理工大学 光电信息与计算机工程学院,上海 200093)

1 引 言

随着互联网的普及,对网络用户的商品评论进行情感分析已成为了电商营销、商品推荐和服务提升等工作的辅助手段.而对微博等评论进行情感分析则可以帮助政府官员感知民意、辅助决策,但是这种微博评论类的复杂文本的情感表达方式更复杂,用原有商品评论(简单文本多)情感分析方法进行分析错误率较高,因此对复杂文本评论进行情感分析的研究有实用价值.

情感分析作为自然语言处理的一个重要研究方向,主要是对文本中带有的不同情感表达进行情感分类.若对于一段复杂文本评论表达的情感仅按正面和负面分类,并不能令人满意.一段评论有时包含有几个主题的不同情感,为了对文本进行全面的情感分析,需要对复杂文本评论中的不同主题分别进行情感分析,即进行方面级情感分析.

复杂文本评论不同于简单文本评论,简单文本评论往往采用具有显性特征文本表述,而复杂文本评论通常既有显性特征文本,也有大量隐性特征文本.在已有的情感分析方法中,对具有显性特征的文本的情感分析效果较好,但对于具有隐式特征的文本情感分析的效果还有待提高.针对已往研究的不足,本文提出了一个针对复杂文本评论的情感分析模型.

2 相关研究

传统的情感分类技术主要分为:基于词典的情感分类方法和基于机器学习的情感分类方法.基于词典的情感分类方法是用研究人员经验或专家意见的情感统计特征等来对文本进行情感分类,此类方法需要不断的扩充词典以及一些新出现的词语,其文本情感分析的准确率不高[1].基于机器学习的情感分类方法先对一部分数据进行人工标注建立训练集,然后对训练集数据进行特征提取,再学习构建出一个分类模型,最后由分类模型对未知分类的数据进行情感分析[2,3],此类方法需要复杂的特征工程,会耗费大量的人力资源,已经不能满足社会快速发展的需要,随之深度学习情感分析技术成为了主流方法.

目前深度学习情感分析模型主要用循环神经网络RNN或卷积神经网络CNN实现.RNN在文本处理中能获得一定量的上下文语义关系,对处理具有时间特性的文本有较大优势[4],长短期记忆网络LSTM是一种特殊的RNN,在处理长文本序列数据和学习长期相关性方面非常有效,且加快了模型的训练速度,减少了计算的成本[5].门控循环单元GRU是另一种特殊的RNN,GRU在LSTM的基础上改进,减少了大量的参数,运算相对简化且性能得以增强[6,7].CNN模型允许文本并行输入且训练时间短,能够自动提取关键特征,在文本上下文特征提取方面存在着明显的优势[8].RNN和CNN分别有各自的优点,但RNN当数据序列长度过长时会导致梯度消失和梯度爆炸问题,LSTM和GRU在耗时、特征提取和并行处理方面均存在不足,CNN忽略上下文时序的依赖关系导致获取语义信息不足,因此有人开始尝试把两种神经网络进行组合使用.

Chen等人[9]提出使用LSTM和CNN鉴别文本情感的新模型,将LSTM用于生成上下文的词向量嵌入,而把CNN用来训练模型的特征.Wang等人[10]提出了区域RCNN和LSTM结合来预测文本细粒度的情感分析,将文本分成多个区域,分别根据文本预测的重要性来设定权值,同时结合了LSTM获得了句子间的长距离依赖关系.Sun等人[11]提出RCNN-BGRU-HN网络模型,在文献[10]的基础上,添加了高速公路网络(HN),以便更加充分的获取多个单词之间的语义信息.Zhu等人[12]等人提出BiGRU-Att-HCNN模型,将BiGRU和HCNN模型获得的语义信息和特征信息结合注意力进行融合.这些研究虽然都把RNN和CNN进行各种优势组合,但是由于输入训练模型的文本特征简单,导致提取出来的文本语义信息不足,特别对隐式情感的情感分类准确率不高.

为了提升隐式特征文本的情感分类准确率,本文改进了RNN和CNN的组合方式,把多维词向量特征和主题特征融入到深度学习模型,提出了一种对复杂文本进行方面级情感分析的多维特征融合的混合神经网络文本情感分析模型(Multi-dimensional Feature Fusion Hybrid Neural Network,简称MFF-HNN).该模型的创新点如下:

1)提出了多维特征词向量表示法,该方法把词向量与词性特征、位置特征、句法依存特征进行注意力多特征融合,得到更全方位的多维特征词向量矩阵.

2)针对复杂文本中往往存在方面级情感分析和隐式特征捕捉难的问题,提出新的方面级情感分类的模型训练方法.即在多维词向量特征矩阵中先抽取出主题词库并经过CNN模型训练得到主题特征向量,再嵌入到本文提出的主题嵌入Bi-GRU模型(Topic Embedding Bi-GRU,简称TBGRU)中进行语义信息训练,同时使用提出的双层CNN模型(Double-layer CNN,简称DCNN)进行局部特征的训练.

3)提出MFF-HNN情感分析模型框架,先获取词向量多维融合特征,抽取主题词库,由TBGRU子模型得到语义信息,由DCNN子模型得到局部特征信息,再把两子模型的输出结果与主题特征向量共同语义特征融合得到最后的情感分类结果.

3 MFF-HNN情感模型

MFF-HNN模型的整体结构如图1所示,该模型先对文本进行多维特征表示,然后把词向量与多维特征进行注意力融合和特征融合,接着进行模型训练,再经过语义特征注意力融合,最后进行情感分类.

图1 MFF-HNN模型整体框架图Fig.1 Overall framework diagram of MFF-HNN model

3.1 多维特征词向量表示方法

深度学习能够自动学习文本中复杂的语义信息特征,以往的情感分析的模型训练往往把单一特征词向量直接输入到模型中却忽略文本蕴含的其它信息.将复杂文本中的多种特征进行多维融合能够充分得到各个特征之间蕴含的语义信息,同时能够互补各个特征之间的差异性,有利于让机器学习到隐藏在文本中更深层次的语义信息,有利于对文本隐式特征的充分挖掘.

多维特征词向量表示方法首先是对词向量进行多维特征表示,再进行多维特征注意力融合,得到多维特征融合词向量.

3.1.1 多维特征表示

在文本语料中很容易发现情感词的词性是比较固定的,通过对词性进行标注,模型会自动学习比较重要的词语[13].词与词的位置关系也会隐藏着重要的情感信息,同一词在句中的不同部位的出现,可能透露出不同的情感信息[14].词汇间的句法结构存在着句法依存关系,体现着词汇间的依赖关系[15].把文本中这些特征加入词向量中,可以从多维度层面挖掘出文本语义隐含的更深层次上的信息.

设句子中第i个单词的词向量为ei,同时把第i个单词对应的词性特征向量、位置特征向量和句法依存特征向量分别设为ti、pi、parseri,将句子中的单词拼接在一起,每个特征向量矩阵表示的具体方法如公式(1)~公式(4)所示.

Rd=e1⊕e2⊕…⊕en

(1)

Rm=t1⊕t2⊕…⊕tn

(2)

Rl=p1⊕p2⊕…⊕pn

(3)

Rp=parser1⊕parser2⊕…⊕parsern

(4)

其中,n表示句子的长度,d、m、l和p分别表示词、词性、位置和句法依存特征向量矩阵的维度,Rd、Rm、Rl和Rp分别表示该句子的词、词性、位置和句法依存特征向量拼接矩阵,⊕表示向量拼接操作.

3.1.2 多维特征注意力融合

在得到句子的多特征表示后,如何将这些特征输入到模型中训练是需要进一步考虑的问题.若简单的特征拼接(如Rd+m=Rd⊕Rm)很难充分的考虑到每个特征之间的差异性[16],拼接后的矩阵增大了向量维度给模型训练造成一定的压力,同样选择多通道进行模型训练也会加大模型的训练时间,即使让深度学习模型通过多通道训练后的结果再进行特征融合也会造成模型结果准确率不高.

注意力机制可以关注对象的特征信息,能够发现文本句子中贡献度较大的单词,更好的捕捉文本上下文的语义相关信息[17,18].多维特征注意力融合计算方法如公式(5)~公式(7)所示:

L(xi)=tanh(Wxi+b)

(5)

(6)

(7)

其中,tanh表示激活函数,L(xi)表示向量xi对应特征的权重,W表示权重矩阵,b表示偏置矩阵,αi表示向量xi特征权重,f(xi)表示融合的特征向量.

将所有的特征经过注意力特征融合后得到融合特征矩阵F=[f1,f2,f3,…,fn],其中fi表示第i单词的融合特征向量.

3.2 模型训练方法

RNN和CNN在情感分析时各有优缺点,将两者优势合理结合有利于模型的学习,而如何组合是获得更佳效果的关键问题.为了挖掘出复杂文本中存在的潜在主题实现方面级情感分析,本文提出在主题特征基础上进行情感分析的思路,即把主题词嵌入到深度模型中有利于文本语义的学习和识别出隐式情感.为了获取文本中深层次的语义信息和文本的隐式特征,本文提出了TBGRU模型,该模型把主题特征嵌入双向GRU模型中获取了文本中存在的显式、隐式主题特征和上下文语义信息.针对获取文本局部特征过程中存在的获取特征不充分和特征丢失问题[19,20],本文提出了DCNN模型,采用多特征融合矩阵F输入到模型中可以获取到充分的特征,同时使用多层卷积层减少特征信息的丢失.为了对词语分配不同的权重、筛选出更加突出的特征,分别在TBGRU模型和DCNN模型中添加注意力机制促进对文本语义的学习和获取丰富的特征信息.

模型训练方法是先从融合特征矩阵F中提取主题特征,然后把主题特征和F输入到TBGRU模型中训练得到文本语义信息,再把F输入到DCNN模型中训练得到局部特征信息.

3.2.1 主题特征提取

方面级文本分类很难精确地获取各个方面中的隐式特征,将主题信息融入到深度学习模型中进行训练,可以提高文本隐式特征挖掘的精度[21,22].本文在融合特征矩阵F的基础上,把主题词嵌入到深度模型中更有利于文本语义的学习和识别出隐式情感.通过文本主题的提取作为辅助研究文本方面级情感分类,对于充分挖掘文本中的隐式对象和提高主题方面分类的精度将会有极大的意义.

在融合特征矩阵F中,选用文献[23]中方法SS-LDA,将一个句子中出现的多个方面主题都提取出来,组成主题词库t=[t1,t2,…,tk],其中k表示主题词的个数.在主题词库嵌入过程中,主题词t可能会是一个或多个词组成的,先对主题词t库进行卷积操作,将主题词输入到CNN模型[8]中,通过卷积和池化操作提取主题词特征,计算方法如公式(8)所示:

vi=frelu(t1:k×Wv+bv)

(8)

其中,Wv是d×k的卷积核,bv是偏置值.

采用最大池化方法对主题特征进行采样,得到主题特征向量T=[T1,T2,…,TK],其中K表示有多少个主题特征.

3.2.2 TBGRU模型

TBGRU模型是在原始GRU模型[6,7]基础上嵌入了主题词库特征向量,GRU模型可以获取长文本序列中充分的语义信息,嵌入主题词库特征向量对于获取文本中存在的显式、隐式特征和上下文语义信息的准确率将有较大的提升.TBGRU模型图如图2所示.将特征融合矩阵输入到模型中,同时将主题词库特征向量嵌入到模型中进行模型训练,在模型训练过程中添加注意力进行权值分配,得到文本语义信息表示.

图2 TBGRU模型图Fig.2 TBGRU model diagram

TBGRU模型工作流程如下:

输入:多维融合特征矩阵F=[f1,f2,f3,…,fn]和主题特征向量T=[T1,T2,…,Tk].

输出:语义信息S.

Step2.把T嵌入到TBGRU模型中,测量F中每个词向量和嵌入的主题词Tk之间的距离信息来赋予每个主题词和词向量权重,其中k={1,2,…,K}.使用MLP计算词向量的投影,计算词向量hi和主题词向量Tk的点积生成每个主题词对应于词向量位置信息的嵌入权值,计算方法如公式(9)~公式(11)所示:

ui=tanh(Wwhi)

(9)

(10)

(11)

Step3.将qi嵌入双向GRU公式中,把原始双向GRU[6]公式更改为如公式(12)~公式(15)所示:

rn=σ(Wrfn+Urhn-1+Vrqn-1)

(12)

zn=σ(Wzfn+Uzhn-1+Vzqn-1)

(13)

(14)

(15)

Step4.引入注意力机制对词向量进行权值分配,计算方法如公式(16)~公式(18)所示:

vi=tanh(Wvhi+bv)

(16)

(17)

(18)

其中,βi表示hi的注意力权重值,S表示权重分配后的文本语义表示.

3.2.3 DCNN模型

DCNN模型是在原始CNN模型[8,12]上做了改进,使多特征融合矩阵的输入和多个卷积核的卷积操作可以获得更多的特征值,而两次使用卷积神经网络则可以降低特征信息的丢失.在DCNN模型中,将原始输入的F与每层CNN输出向量进行了选择性的融合,让更多文本特征参与到机器学习的过程中,使F的文本数据特征得以有效的利用,同时也可以避免文本特征在网络层中传递丢失的问题.如图3所示,首先将F输入到第1层CNN_1中,然后将和CNN_1层的输出结果进行融合作为第2次卷积CNN_2的输入,最后再把F、CNN_1的输出结果和CNN_2的输出结果进行注意力融合池化后作为DCNN模型的最终输出结果.

图3 DCNN模型图Fig.3 DCNN model diagram

DCNN模型工作流程如下:

输入:多维融合特征矩阵.

输出:局部特征信息.

Step1.把F输入到模型中进行第1次卷积运算,得到特征输出矩阵c1=[c1,c2,…,cm],其中m表示特征个数,计算方法如公式(19)所示:

ci=relu(w·fi:i+h-1+b)

(19)

其中,relu表示激活函数,w表示卷积核,fi:i+h-1表示第i个单词到第i+h-1个单词之间的h个单词的特征向量矩阵,b表示偏置矩阵,ci表示第i个特征值.

Step2.把F和c1使用th.Concat函数进行特征融合得到F2=[c1,c2,…,cm,f1,f2,…,fn],把F2作为第2次卷积运算的输入,得到特征输出矩阵c2=[k1,k2,…,l],其中l表示特征个数.

Step3.把F、c1和c2使用tf.Concat函数进行特征融合得到c3=[f1,f2,…,fnc1,c2,…,cn,k1,k2,…,kl].

Step4.对c3使用注意力机制对局部特征进行权值分配得到特征矩阵c,计算方法同公式(16)~公式(18).

Step5.使用最大池化方法对特征c进行降采样,计算方法如公式(20)所示:

(20)

3.3 特征融合情感分类

在模型训练阶段已经分别在TBGRU模型和DCNN模型中获取到了文本语义信息S和局部特征信息C,使用注意力语义特征融合方法把主题特征T、语义信息S和局部特征C进行融合得到方面级情感分类的结果.

3.3.1 语义特征注意力融合

为得到文本最终情感语义表示,使用注意力语义特征融合方法将主题特征T、语义信息S和局部特征C进行语义特征融合.

首先使用余弦相似度分别计算T、S和G两两之间的相似性,若相似性高的特征给予更高的权重,相似性低的给予低的权重.使用SoftMax函数将两两之间得到的相似度权重进行标准化求和得到注意力权重μi.最后将μi和S加权运算得到语义融合特征向量wi,计算方法如公式(21)~公式(24)所示:

f(Ti,Ci,Si)=cos(T,Ci,Si)

(21)

(22)

(23)

w=[w1,w2,…,wm]

(24)

其中,f(Ti,Ci,Si)表示用余弦函数求T、S和G两两之间的相似度,w表示文本语义融合特征向量.

3.3.2 情感分类

将语义融合特征向量w使用SoftMax情感分类器得到文本的最终情感分类结果,计算方法如公式(25)所示:

y=softmax(wcsavg+bc)

(25)

其中wc为权重矩阵,bc为偏置矩阵.使用反向传播方法和交叉熵损失函数对模型进行优训练,计算方法如公式(26)所示:

(26)

4 实 验

4.1 实验环境

实验环境配置如表1所示.

4.2 实验数据集和评价指标

使用Twitter数据集(复杂文本多)、Laptop评论数据集(复杂文本少),选取的数据集中已经标注了每个句子的方面词和每个句子的情感极性,数据集中将情感极性分别分为积极、中性和消极.2个数据集的详细信息如表2所示.

表1 实验环境配置表Table 1 Experimental environment configuration table

表2 数据集详细信息表Table 2 Dataset details table

使用F1(F-measure)和准确率A(Accuracy)对实验结果进行评估,具体方法实现如公式(27)~公式(30)所示:

(27)

(28)

(29)

(30)

其中,TP表示为预测结果正确的正面类别数,TN表示为预测结果正确的负面类别数,FP表示为预测结果错误的正面类别数,FN表示为预测结果错误的负面类别数,A和F1值越大效果越好.

4.3 参数设置

在MFF-HNN模型中,单词嵌入的词向量维度设置为300,词性特征向量、位置特征向量和依存句法特征向量的维度分别设置为30,TBGRU模型和DCNN模型参数设置如表3所示,使用正太分布来对权重矩阵进行了初始化,并将偏差项初始化为0.在模型训练过程中,使用Adam优化器更新参数,并且使用L2正则化和Dropout防止过拟合.相关参数设置具体如表3所示.

表3 参数设置表Table 3 Parameter settings table

4.4 对比模型

1)为了验证模型MFF-HNN与其它模型情感分析准确率的效果,将与Bi-GRU[6]、AT-BiGRU[7]、CNN-LSTM[9]、RCNN-LSTM[10]、RCNN-BGRU-HN[11]和BiGRU-Att-HCNN[12]模型做对比实验.

2)为了验证多维特征、主题特征和组合网络模型对模型MFF-HNN情感分析准确率的影响,与以下模型做验证实验:

a)MFF-DCNN:为了验证组合网络模型对提出模型的效果设计验证实验,MFF-HNN模型去掉TBGRU网络,其余部分与该模型条件相同.

b)MFF-TBGRU:为了验证组合网络模型对模型的效果设计验证实验,MFF-HNN模型去掉DCNN网络,其余部分与该模型条件相同.

c)TBGRU-DCNN:为了验证多维特征向量对提出模型的效果设计验证实验,MFF-HNN模型去掉多维特征向量输入,其余部分与该模型条件相同.

d)MFF-BGRU-DCNN:为了验证主题特征融入模型的效果设计验证实验,MFF-HNN模型去掉了主题特征词库嵌入模型,其余部分与该模型条件相同.

4.5 实验结果与分析

4.5.1 各种模型情感分析准确率A和F1值对比分析

1)准确率A和F1值对比结果分析

各种模型在以上数据集上的运行结果如表4所示.

从表4中可以看出,在以上的数据集中模型MFF-HNN在准确率A和F1值这两个指标上都有了明显的提高,表明了MFF-HNN模型性能是优于别的模型的.从实验结果可以看出,Laptop比Twitter的分类精度略高一点,这是因为Twitter中复杂文本多,Laptop中复杂文本少,Twitter的文本方面词的数量普遍多于Laptop,MFF-HNN模型采用主题特征提取的方式,方面词的数量对分类精度影响较小.在两个数据集下,单独使用Bi-GRU的分类效果是比较差的.模型AT-BiGRU在Bi-GRU模型的基础上加上了注意力机制,得到了比Bi-GRU较好的结果,这说明注意力机制对文本处理的有效性.CNN-LSTM模型使用CNN提取文本中的特征,结合LSTM模型获取文本长距离的依赖性关系,获得较好的结果,但只是加了CNN获取局部信息,忽略了权值的重新分配,实验结果略低于AT-BiGRU模型.RCNN-LSTM模型和RCNN-BGRU-HN模型在CNN-LSTM模型基础上添加一些处理,准确率A和F1值都略有提升.BiGRU-Att-HCNN模型对LSTM-CNN模型中的两个部分分别做了改进,同时添加了注意力机制,实验结果在准确率A和F1值方面取得了较好的结果.

MFF-HNN模型对比表4中最好的模型BiGRU-Att-HCNN,在两个数据集上的准确率A分别提高了4.9%和4.1%,F1值分别提升了4.8%和4.0%,准确率A和F1值越高表明模型评估效果越好,这充分说明了MFF-HNN模型对文本情感分类有更好的效果.

2)F1值迭代次数变化分析

为了观察F1值随着迭代次数增加时的变化,以Twitter数据集下的实验为例,将模型训练过程中每次迭代的输出值做成折线图,F1值在每轮迭代过程中的变化过程如图4所示.

图4 各种模型F1值迭代变化过程图Fig.4 Iterative change process diagram of F1 value of various models

图4显示了Twitter数据集下各模型在21次迭代过程中F1值的变化,横轴Epoch表示实验的迭代次数,纵轴表示F1值.从图中可以看出各模型在训练集上的F1值随着迭代的次数增加而增大,但最终会趋于一个稳定的值.其中MFF-HNN模型的F1值随着轮数增加上升的趋势比较快并且F1值总是高于其它的对比模型,分析其中的原因,MFF-HNN模型在模型训练前提供了丰富的特征信息,经过主题提取以及多网络语义和特征的获取,并最终将主题词库和多网络处理的结果进行了特征融合,这才使本模型取得了较高的F1值.由此证明MFF-HNN模型对简单文本和复杂文本的情感分类的效果均高于原有模型.

4.5.2 各种因素对准确率A和F1值影响分析

在选取的MFF-DCNN、MFF-TBGRU、TBGRU-DCNN和MFF-BGRU-DCNN模型与MFF-HNN模型进行验证对比实验,实验结果如表5所示.

从表5中可以看出,MFF-DCNN和MFF-TBGRU模型在使用多维特征的基础上,单独使用DCNN模型和TBGRU模型的结果是比较差的,这说明了将RNN和CNN模型的合理组合可以获得较佳的效果.TBGRU-DCNN模型的准确率A和F1值均低于MFF-HNN模型,这就证明了多维特征对于模型的训练很有必要的.从MFF-BGRU-DCNN模型的实验数据可以看出,数据集Laptop的实验结果准确率A和F1值与MFF-HNN模型的结果相差很小,但数据集Twitter的实验结果准确率A和F1值均低于MFF-HNN模型,证明了主题特征融入模型对于复杂文本情感分析的优越性.综上所述,MFF-HNN模型准确率A和F1值均高于其它4种模型,证明该模型采用的多维特征融合、主题特征提取嵌入和RNN与CNN模型改进结合的方法对提升情感分类的准确率有较好的效果.

表5 各种因素对准确率和F1值影响对比表Table 5 Comparison table of the influence of various factors on A and F1

5 结束语

为了提高复杂文本的情感分类的准确性,本文提出了一种多维特征融合的混合神经网络文本情感分析模型MFF-HNN.经实验验证,该模型在准确率A和F1值方面都优于别的模型,证明MFF-HNN模型对复杂文本情感分析具有优越性.由于新模型的工作步骤更复杂,虽然提升了情感分类的准确率,但必然增加了模型的运行时间.因此,今后将进一步研究改进模型,在保证准确率的情况下缩短模型的运行时间,以满足大数据量的文本情感分析的需求.

猜你喜欢
主题词特征向量语义
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
克罗内克积的特征向量
语言与语义
一类特殊矩阵特征向量的求法
EXCEL表格计算判断矩阵近似特征向量在AHP法检验上的应用
“上”与“下”语义的不对称性及其认知阐释
认知范畴模糊与语义模糊
我校学报第32卷第5期(2014年10月)平均每篇有3.04个21世纪的Ei主题词
我校学报第32卷第6期(2014年12月)平均每篇有3.00个21世纪的Ei主题词
2014年第16卷第1~4期主题词索引