APP下载

基于位置信息多注意交互模型的方面级情感分析*

2023-08-02杜春涛

计算机与数字工程 2023年4期
关键词:极性注意力向量

杜春涛 王 丹

(北方工业大学信息学院 北京 100144)

1 引言

方面级情感分析是一种旨在识别特定目标在上下文中情感极性的深层次分析。情感极性的判别不仅由文本内容决定,而且与所涉及的特定方面密切相关[1]。例如句子“this voice quality is bad,but the battery's life is long”,对于方面词“voice quality”,它的极性为正,而对于方面词“battery's life”,它的极性为负。可以看出一个句子中不同方面词会对文本情感极性判断产生不同的影响[2]。

近年来,越来越多的研究者关注方面级情感分析。早期的研究采用支持向量机结合情感词典、语义句法等分析文本的情感倾向。但传统基于规则的方法依赖于情感词典,存在一定的局限性。随着深度学习技术的发展,研究人员开始广泛使用神经网络分析文本,相对基于特征的支持向量机而言,神经网络可以更好地捕获方面词和文本之间的语义关系[3]。

注意力机制已成功应用于机器翻译[4]和阅读理解[5]等任务中,许多研究利用这一优势,在方面级情感分类任务中获得出色表现。Wang 等[6]提出ATAE-LSTM 模型,使用长短期记忆网络(LSTM)对输入语句和方面词建模,注意力机制获取上下文和方面词之间的语义特征信息。Tang 等[7]提出了基于注意力机制的MemNet 模型,该模型由多个具有共享参数的计算层组成,每一层都是基于内容和位置的注意力模型。Chen等[8]在MemNet的基础上提出了基于注意力机制的RAM 模型。以上方法意识到方面词的重要性,但仅粗略考虑了方面词与上下文之间的语义相关性,忽略了方面词和上下文的词级交互信息。

当一个方面词出现在句子中,它的邻近词要比其它距离较远的词受到更多关注。Gu 等[9]使用上下文词和目标之间的绝对位置信息对句子编码,但当句子成分复杂或上下文长度变长时,位置编码是无效的。例如,句子“The food tastes good but price is a bit expensive”,方面词为“price”,如果按照绝对位置编码,“price”与“good”之间的距离为2,“price”与“expensive”之间的距离为4,则“good”比“expensive”对判断方面词情感极性有更大的贡献,但从语义角度理解,这显然是不合理的。

针对以上问题,本文提出了基于位置信息多注意交互模型,使用多注意力机制获取上下文和方面词之间的交互信息,充分考虑了方面词和上下文之间的语义相关性。此外,本文还引入了外部依存句法树来表示词之间的依存关系,将位置信息嵌入到词向量中,生成上下文的特定向量表示。在SemEval 2014 和Twitter 数据集上的实验表明,该模型能有效地预测文本特定方面的情感极性。

2 相关工作

方面级情感分析是情感分析领域一个细分任务,旨在识别句子中特定方面的情感极性,属于细粒度级文本分类任务。

深度学习在情感分析任务中取得了较好效果,越来越多的研究者利用深度学习技术解决特定方面情感分析问题。Wang等[10]利用长短期记忆网络(Long Short-Term Memory,LSTM)解决句子中词语的时序关系以及单词之间的交互性问题,有效提高了情感分析的准确度。Zhang等[11]使用两种门控循环神经网络分析文本,一种用于捕获文本中句法和语义信息,另一种对文本中目标和上下文信息进行交互建模,得到隐藏层向量表示。Graves等[12]提出使用递归神经网络进行文本分类,采用双向循环结构对文本建模,将深度网络中的多层次表示和上下文相结合。Tang 等[13]用目标依赖长短期记忆模型(Target-Dependent LSTM,TD-LSTM)分析文本情感极性,该方法用两个LSTM 网络对语句进行编码,并作为最终方面词的情感表达。这些基于神经网络的模型在情感分类任务中取得了一定效果,但单纯基于神经网络的模型无法很好地捕捉到复杂语句中相对距离较远的情感极性词或词语与方面词之间的语义关系[14]。

注意力机制被广泛应用于计算机视觉和自然语言处理领域,通过对文本向量的语义编码分配不同权重,来区分句子中的关键信息。Ma 等[15]提出了交互注意网络(Interactive Attention Networks,IAN)交互式学习上下文词和方面词的注意权重。但此注意力机制只考虑了粗粒度级,仅通过简单的方面词/上下文平均向量来进行上下文/方面词的注意权重学习,可能对长方面词或上下文造成一定的信息损失。

为了解决以上问题,本文使用双向GRU 分别对上下文和方面词建模,提取其中的语义信息,得到方面词和上下文词的隐藏状态表示,然后使用交互注意模块捕捉方面词和上下文之间的相关性信息。实验表明,此方法能更好地判断情感极性。

3 基于位置信息多注意交互模型

给定一个由n 个单词组成的句子s=[w1,w2…wn]和方面词t=[t1,t2…tn],目标是预测文本在方面词上的情感极性(积极,消极,中性)。本文提出的模型结构如图1 所示,主要有四部分组成:词嵌入层、双向GRU层、多注意交互层和输出层。

图1 基于位置信息多注意交互模型

3.1 词嵌入层

词嵌入层包含句子嵌入和方面词嵌入。首先给定句子s=[w1,w2…wi…wn],其中n 为文本单词的长度,方面词t=[wi,wi+1…wi+m-1],其中m为方面词的长度。通过词嵌入算法Global Vectors for Word Representation(Glove)[16]将每个单词映射为一个多维的连续值词向量,然后通过查找嵌入矩阵Mv×d得到句子嵌入[v1;v2;…;vn]∈Rn×d和方面词嵌入[vi;vi+1;…vi+m-1]∈Rm×d,其中v表示词汇表的大小,d表示嵌入维数。

当一个方面词出现在句子中,距离方面词较近的词对方面词的情感极性影响更大,本文引入依存句法树表示词之间的依存关系。例如,“This food tastes good but price is a bit expensive”这句话,目标词为“price”,使用开源库spacy构建依存句法树,如图2 所示。每个词作为一个节点,使用弗洛伊德(Floyd)计算每个节点到第一个目标节点的最短距离,将其作为位置索引,最短距离索引序列表示为P=[4,3,2,3,3,0,1,4,3,2],其对应的位置嵌入是通过查找位置嵌入矩阵D∈Rd×n得到的,该矩阵随机初始化,并在训练过程中更新,其中d 表示嵌入位置的维数,n表示句子的长度。

图2 依存句法树

3.2 双向GRU层

文本向量由词向量和位置嵌入向量组成,使用双向GRU 获取方面词和上下文信息,得到隐藏层向量表示。GRU 性能类似于LSTM,但具有更少的参数和更低的计算复杂度。GRU 有两个门,分别为更新门和重置门,更新门用于控制前一时刻的状态信息被带入到当前状态的程度,值越大说明前一时刻的状态信息被带入的越多。重置门用于控制忽略前一时刻状态信息的程度,值越小说明忽略得越多。在某一时刻,GRU的隐藏状态计算如下:

其中,rt表示更新门,zt表示重置门,ht-1表示上一时刻隐藏状态,xt表示输入序列信息,W和U为权重矩阵,σ是Sigmoid 函数。双向GRU 编码器的输出结合前向隐藏层和后向隐藏层,其中n是句子的长度。

3.3 多注意交互层

传统方法只考虑了粗粒度级的层次注意,通过使用简单的平均池化方面向量(文本向量)来学习上下文(方面)的注意权重,这会对上下文语义造成一定的信息损失。例如,“This Mac OS is lacking in speaker quality compared to my HP laptop”,方面词为“speaker quality”,“quality”比“speaker”对语境影响大,因此更应该注重“quality”,如果使用平均池化的方式表示方面词信息,则不会达到预期效果,这种情况下,使用最大池化表示方面词可能会更好。本文使用多注意交互模型获取词级注意力权重,最后将注意力向量的三个部分结合起来得到最终向量表示。

3.3.1 方面注意模块

方面词处理是为了最大化整个短语的信息,这在某些情况下显然是准确的。使用最大池化机制获取方面词的最大池化向量,注意力机制捕获最大池化向量和上下文向量中的重要信息。方面词最大化输出qmax∈R2d对于上下文中的每个单词hi,可以计算它的注意力值αi,公式如下:

其中s1是计算上下文词对方面词的重要性权重,w1∈R2d×2d代表权重矩阵,m1∈R2d是结合上下文的权重组合。

3.3.2 文本注意模块

与上面的模块类似,使用平均池机制来获得上下文平均向量havg,并计算方面短语中每个词的权重,最后方面词的权重组合如下:

其中s2用于计算每个方面词对上下文词的重要性权重,βi是上下文平均向量对方面词的注意力得分,w2∈R2d×2d代表权重矩阵,m2∈R2d是结合方面词的权重组合。

3.3.3 交互注意模块

用hi和qi来表示上下文和方面词的向量表示,计算交互矩阵I=hi·qi,每个值表示上下文和方面词之间的词对相关度。句子中每个词的权重计算如下:

其中αij表示方面词到句子的注意力,βij表示句子到方面词的注意力,m3∈R2d是句子中每个词的重要权重。

3.4 输出层

本文将三个注意向量连接为最终的向量表示k=[m1;m2;m3],其中k∈R6d,“;”表示特征向量的组合,被送到softmax层决定方面词的情感极性。

其中k 和b 分别是权重矩阵和偏置,模型利用端到端的反向传播,使用L2 正则化交叉熵作为损失函数,p 表示句子的真实分类,表示每个分类的预测值,损失目标定义如下:

其中i 代表句子索引,j 代表三种分类索引,λ表示L2正则化系数。

4 实验及分析

4.1 数据集和参数设置

为了验证模型的有效性,本文在SemEval 2014(包括Restaurant和Laptop数据集)和Twitter数据集进行评估。该数据集均包含Positive、Neural和Negative 三种情感倾向。数据集的基本统计情况如表1 所示。实验中使用预训练好的300 维Glove 词向量,超过的词被初始化为0,隐藏层维数为300,词嵌入层、位置嵌入层设置为150,学习率为0.01,dropout设为0.5,正则化系数为0.001。

表1 数据集统计

4.2 对比算法及实验结果

为了验证本文模型的有效性,将其与以下模型进行对比:

ATAE-LSTM 模型[6]:使用长短期记忆网络对输入语句和方面词建模,注意力机制获取上下文和方面词的重要信息。

MemNet 模型[7]:多次应用注意力机制学习上下文的重要特征,根据最后的句子表示预测特定目标的情感极性。

RAM 模型[8]:使用LSTM 对输入向量产生记忆片段,然后对记忆片段与目标的相对位置进行加权计算,最后在GRU 网络的输出上应用softmax 预测方面词的情感。

TD-LSTM 模型[13]:使用两个LSTM 网络对文本和上下文进行编码,根据最后的向量表示预测情感倾向。

IAN 模型[15]:使用LSTM 获取目标和上下文的隐藏向量,然后使用注意力机制交互式学习上下文词和方面词的注意权重。

在实验中采用分类准确率和F1 值作为评价指标。实验结果如表2所示。

表2 对比模型的比较结果

从实验结果中可以看到,TD-LSTM 模型的性能偏差,主要原因是根据目标词的位置分割句子,导致句子的语义不完整,因此不能充分考虑文本信息。基于LSTM 的ATAE-LSTM 和IAN 模型在三个数据集上的表现都优于TD-LSTM,原因是引入了注意力机制,使模型能够更好地捕捉方面词和上下文之间的重要信息,因此具有更好的性能。

从表2 可以看到,本文的方法在三个数据集上的表现都是最好的。本文提出的MAIP 模型在IAN基础上,充分考虑到不同距离的词对方面词情感极性的影响,在词向量中加入位置信息,然后使用双向GRU 捕捉更加丰富和完整的语义信息,注意力机制提取上下文和方面词之间的交互信息,有助于判断方面词的情感倾向。与IAN 模型相比,MAIP模型在Laptop和Restaurant数据集上准确率分别提高了3.3%和3%,F1 值分别提高了4%和3%,说明MAIP模型具有更好的方面级情感分析效果。

4.3 位置信息的影响

本文用依存句法树表示词之间的关系,使用Floyd 计算方面词与上下文词之间的最短距离,本文称之为依存距离。为了验证位置信息的重要性,进行了以下实验:

APE:用绝对距离作为位置信息。

NPE:不加入位置信息。

SDPE:用依存距离作为位置信息。实验结果如表3所示。

表3 位置信息的影响

从表3 可以看到,添加依存位置信息的实验在数据集上的效果优于无位置信息和绝对位置信息,说明依存位置信息可以有效地表示方面词和上下文词之间的位置关系,位置信息对情感分析的结果具有很大影响。此外,不添加位置信息有时会比添加绝对位置信息更准确,一方面,位置嵌入对维度非常敏感,因为它包含多个维度的信息,很难找到一个维度来表示绝对位置距离。另一方面,上下文信息是相互关联的,当距离变长,使用表面位置信息编码会变得不准确。

4.4 多注意交互的影响

该模型使用多个注意力机制实现词级交互,为了验证每一部分的有效性,本文做了以下实验,结果如表4所示。

表4 不同模块的作用

W-Aspect-model:模型只考虑上下文注意模块和交互注意模块,无方面注意模块。

W-Context-model:模型只考虑方面注意模块和交互注意模块,无上下文注意模块

W-Interaction-model:模型只考虑方面词注意模块和上下文注意模块,无交互注意模块。

从表4 可以清楚地观察到,每个模块都有助于模型的提升,其中影响最大的是交互注意模块。实验表明,多注意交互模型能获取方面词和上下文中深层次语义信息,为单词分配不同的权重,有效地实现了词级之间的交互。

5 结语

本文主要研究细粒度级情感极性,提出了基于位置感知多注意交互模型。模型用依存句法树表示词之间的依存关系,使用Floyd 计算文本词到目标的最短距离,将位置信息嵌入到词向量中,使目标词的位置信息得到充分利用。利用多注意交互模型学习方面词和上下文之间的语义信息,捕捉方面词和上下文之间的相关性。为了验证模型性能,在三个数据集上进行测试,实验结果表明,该模型优于目前其它方法。下一步研究将结合句子的语义信息和语法结构,以进一步提升情感分类效果。

猜你喜欢

极性注意力向量
向量的分解
让注意力“飞”回来
聚焦“向量与三角”创新题
跟踪导练(四)
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
向量垂直在解析几何中的应用
表用无极性RS485应用技术探讨
向量五种“变身” 玩转圆锥曲线
一种新型的双极性脉冲电流源