基于电商评论的文本情感分类效果研究

2024-02-22 09:48计文丽
科学技术创新 2024年3期
关键词:注意力准确率神经网络

计文丽

(吉利学院,四川 成都)

引言

电商评论信息量大、文本规范性差、内容形式丰富,如果用传统统计分析方法处理分析海量文本数据,不仅效率低而且会造成较大误差[1]。利用文本情感分析技术对文本数据进行处理分析来挖掘文本评论数据中蕴含的用户情感倾向是目前常见方法[2]。文本情感分析关键任务是情感分类,比如对某商品的评论可以是正面情绪、负面情绪、中立情绪[3]。深度学习情感分类方法是完全区别于传统方法的研究模式,在图像分类、语音识别、NLP 等领域取得不错效果[4]。在情感分类任务中,深度学习中的神经网络模型可以从原始数据中选择合适的特征,不需要人工进行特征选取,能从大数据集中挖掘文本所蕴含的深层次信息,在NLP 领域中得到大量应用[5]。因此,本文将深度学习中循环神经网络不同变体模型应用到文本情感分类任务中,以此对比不同模型的文本分类效果。

1 基于循环神经网络的情感分类模型

1.1 长短期记忆模型(LSTM)

相比传统神经网络模型结构,理论上循环神经网络(RNN)针对任何长度文本序列数据都能够有效训练,然而在模型训练中RNN 模型一般只能“记忆”有限长度的序列信息,由于各层神经网络的参数权重共享,当模型采用误差反向传播梯度下降法更新权重时,输出依赖当前状态时刻,且依赖当前状态之前时刻的状态,使得RNN 模型在训练时容易出现梯度消失的问题[6]。为了解决传统循环神经网络模型的长时依赖问题,研究者们提出了很多RNN 的扩展模型。

LSTM由Hochreiter 等人[7]于1997 年提出的RNN的变体模型之一。通过改变RNN 的隐藏层状态结构,使用门(gate)机制对信息的流通和损失进行控制,使传统循环神经网络中存在的问题得到了解决,并能提取更加丰富的长评论特征。LSTM模型网络结构与传统RNN 模型结构相比更为复杂,增加了记忆细胞状态Ct以及三个控制门。与传统RNN 网络结构类似,LSTM当前状态St由当前输入以及上一隐藏层状态决定,不同的是内部结构的变化,LSTM结构中引入输入门it、遗忘门ft、输出门ot三个门限以及内部长期记忆单元Ct、等待存入长期记忆的候选单元C~t。计算公式如下

遗忘门ft表示神经细胞单元需要丢弃的信息。其中,Wf是遗忘门权值矩阵,bf是遗忘门偏置项,σ 表示Sigmoid 函数,ht-1是当前上一时刻的隐藏层输出,xt是当前时刻输入。输入门it用来将新输入的信息选择性的输入到细胞单元中,通过Sigmoid 层决定哪部分数据信息输出。其中,Wi是输入门权值矩阵,bi是输入门偏置项,通过tanh 层创建候选向量C~i,表示归纳出待存入神经细胞状态中的新信息,由当前时刻的输入特征xt和上一时刻的短期记忆ht-1得到。并在此基础上更新状态值,添加新信息得到C~t,即长期记忆细胞单元,细胞态等于上一时刻的长期记忆与遗忘门乘积,加上当前时刻归纳出的新信息与输入门乘积。输出门ot用来控制输出信息,同样通过Sigmoid 层决定神经细胞状态中的哪部分数据被输出出去,且将长期记忆神经单元状态通过tanh 层,与ot相乘获得输出部分ht。LSTM网络模型由于引入门限机制,可以遗忘无效信息,将重要信息更新到神经细胞状态中,使其具备处理长序列数据的能力;并且由于梯度传播过程中变成了导数累加,很大程度上避免了梯度消失或者梯度爆炸问题,在很多任务中其效果均优于传统RNN 模型。

1.2 门控循环单元(GRU)

LSTM模型在模型训练效果上虽然优于传统RNN模型,但是门限机制也使得模型训练参数过多,网络结构复杂化,模型训练效率下降。针对此类问题,Cho等人[8]提出了基于LSTM模型的门控循环单元(GRU),该变体模型将LSTM网络结构中的遗忘门和输入门合并为更新门,并将记忆状态和隐藏层状态进行了合并,模型结构比传统LSTM模型更加简化,待训练参数更少。

GRU 模型网络结构只有更新门zt和重置门rt两个门,zt表示更新门,用于限制上一时刻细胞状态信息应有哪些信息更新到当前状态中,值越大,即代表更新信息越多;rt表示重置门,来控制上一时刻有哪些信息应写入当前候选集h~t,其值越小,表示前一时刻信息被选进候选集的越少。模型计算公式如下

式中,Wr,Wz,Wh分别表示重置门、更新门、候选集权重矩阵;br,bz分别表示各门限偏置项;σ 为Sigmoid 激活函数;其中ht包含了过去信息ht-1和当前候选集信息h~t。GRU 模型相较于LSTM模型减少了门函数,模型训练参数大大减少,模型训练效果在某些任务中比LSTM模型好,但针对具体应用场景应做合适选择。

1.3 注意力机制

Attention 机制[9]首先应用在CV 领域,给图像的不同局部赋予不同的权重,让网络模型在训练过程中更加关注指定目标。此后,Bahdanau 等人[10]首次将Attention 机制应用在了NLP 领域,尝试处理机器翻译任务。该机制能够注意到语句中不同词语的重要程度,并给予不同词不同权重,且权重赋予越高,代表该词对研究对象越重要。Attention 机制经常与深度神经网络模型相结合使用,Luong 等人[11]基于RNN 模型引入Attention 机制,研究其拓展模型,为后续研究奠定了基础。王瑞龙[12]将注意力机制与深度模型结合,探究了不同组合模型的情感分类效果,文中在内容注意力机制基础上结合了Bi-GRU 模型,实验显示情感分类效果较好。

注意力可以用查询项与输入信息表示,也可以将其描述为查询项和一组键(key)值(value)对的映射[13],注意力计算过程为,先通过兼容性函数计算查询项与键(key)之间的相似度,将其得分作为权值,而后将计算得到权值乘上对应的值(value)求和得出查询项的注意力表示。注意力机制中,给定查询项q 以及输入信息X1:N,首先计算查询项q 与序列x 中每一项的相似度,计算公式是:s(q,xi);其次,通过softmax 函数对相似度得分进行归一化操作,由此得到权重,计算公式如下:

最后,对其进行加权求和,得到最终注意力值:

传统循环神经网络各情感分类模型,普遍是基于输入评论中的每个词或短语基础上进行学习并提取特征,但模型没有考虑到评论中不同词语对最终情感倾向的贡献程度是不同的。本文基于循环神经网络各变体模型结构,研究了以情感词驱动的注意力神经网络模型(SD-ANN),该模型能够“注意到”对情感倾向更重要的词的特征,给予更能代表评论数据情感的词以更高的注意力权重。将进行注意力加权后的局部特征作为输入层输入评论最终的特征表达,将预处理后的评论单词输入SD-ANN 模型,根据特征向量判断情感极性。通过引入注意力机制,进而对比不同模型在引入注意力机制后的情感分类效果。

2 模型实验与结果分析

2.1 数据采集及预处理

本文以京东商城的部分类别商品评论数据为研究对象,共爬取121 058 条数据,由于噪声数据的存在,需要对文本评论数据进行分词、停用词等预处理。采用Python 语言下的jieba 分词第三方库,对采集的数据进行分词处理;并剔除如连词、副词、语气词、助词等无意义词,这些词对提取文本评论特征、分析用户情感情绪没有价值,在文本预处理过程中需要将其剔除掉,以减少索引量增加检索效率。

2.2 模型训练环境及数据集

本研究训练的模型均在词向量的基础上进行实现,词向量训练依据Python 语言下的gensim 开源库,使用其中的Word2vec 工具完成。模型训练所用的编程语言为Python3.7,训练模型所用的集成开发环境是Anaconda3,构建Tensorflow2.1 模型框架来实现,并使用Jieba 分词工具,词向量训练使用Word2vec(gensim)进行实现,引入WordCloud、Numpy、Matplotlib等第三方Python 库帮助模型训练。

本文将采集的真实评论数据标注为二类,采用人工标注法实现评论数据集的情感极性标注,分为积极(好评)、消极(差评)。通过对文本评论进行情感分析统计,约有50 500 条评论为积极情感类别,有50 558条评论为消极情感类别,并且将商品评论数据集以训练集0.8 的比例分为训练集和验证集两部分,其中,训练集有80 846 条评论数据,验证集有20 212 条评论数据。本文主要通过准确率(Accuracy)来评估模型分类性能,一般而言,准确率越高,模型分类性能越好,模型准确度越高[14]。

2.3 模型训练参数设置

2.3.1 词向量训练

本文使用Gensim 模块下的Word2vec 工具以词为最小单元进行词向量训练,保存为词向量模型。其中词向量训练参数设置如表1 所示。

表1 Word2vec 词向量参数设置

2.3.2 模型参数设置

由于RNN 无法解决长期依赖及梯度爆炸问题,本文选取基于长短期记忆神经网络模型(LSTM)、门控循环单元网络模型(GRU),针对预处理后的训练集和验证集进行情感分类效果验证,模型借助Tensorflow2.1 框架实现[15]。训练模型LSTM及GRU 模型结构参数设置如表2 所示。

表2 LSTM/GRU 模型训练参数设置

在模型Dense 层(全连接层)设置二层网络结构,Dense 层激活函数使用softmax;并加入了Dropout 机制、L2 正则项,用来避免或者减少模型训练时,可能出现的过拟合现象,同时也提升模型泛化力,其中L2 正则项设置为0.1。

本文在循环神经网络各变体模型的基础上,提出以情感词驱动的注意力神经网络模型(SD-ANN),该模型能够“注意到”对情感倾向更重要的词的特征,给予更能代表评论数据情感的词以更高的注意力权重,以此探究结合注意力机制的不同网络模型结构在相同数据集上的分类效果。包括基于情感词注意力机制的长短期记忆网络模型(Att-LSTM)、基于情感词注意力机制的双向长短期记忆网络模型(Att-BiLSTM)、基于情感词注意力机制的门控循环单元网络模型(Att-GRU)。模型训练参数设置与表2 同。

2.4 循环神经网络变体模型的实验结果分析

LSTM以及GRU 网络模型,其模型构建过程是:首先,在Gensim 模块中,依据Word2vec 工具下的Skip-Gram 模型,以词为最小单元训练词向量,获得各单词的词向量表示,维度大小为150;其次,将预训练好的词向量,生成词向量和词汇- 索引映射字典,获取词列表和顺序对应的预训练权重矩阵;最后按照训练集0.8 的比例生成训练集与验证集,将预训练词向量及其权重矩阵分别输入到设计的LSTM 及GRU 模型网络中训练,实现对文本进行情感分类,获得模型情感分类效果。LSTM 及GRU 模型准确率如表3 所示。循环神经网络变体模型训练过程如图1 所示。

图1 模型训练过程

表3 LSTM 及GRU 模型准确率(%)

结果显示,从训练集角度,GRU 网络模型在情感分类任务上的准确率(97.8%)相比LSTM 网络模型(90.6%)较高;二者均随着epoch 增加,其准确率也不断提升,尤其是三轮数据集训练之后(epoch>3),GRU模型的准确率高于LSTM模型较为明显,且二者在10次训练后其准确率均到达最大值。从验证集角度,总体上LSTM模型其准确率随着epoch 增加,变化较为平缓,其准确率稳定在90%左右;而GRU 模型其准确率随着epoch 增加而不断增加,在epoch>2 之后,其准确率趋于稳定在93%且高于长短期记忆模型(LSTM)。因此由于GRU 模型网络结构较LSTM更为简化,模型在训练过程中的准确率更早达到优化值,GRU 模型在文本分类上的效果要优于LSTM模型。

2.5 基于注意力机制的神经网络实验结果分析

以情感词驱动的注意力神经网络在LSTM、GRU及Bi-LSTM基础上进行构建,模型改进部分是以情感词为最小单元,并引入注意力机制。实现过程有:首先,将输入信息(预训练词向量)和上下文向量之间的相关程度作为权重进行选取特征以及匹配度获取,并使用双曲正切(tanh)激活函数实现;其次,在输入所有词上计算注意力权重;最后将情感词特征输入到softmax 层进行情感分类实现。为了防止过拟合以及训练出的模型更加适应于数据集,采取了early stopping技术,若模型结果多次提升,则训练过程结束。基于注意力机制的神经网络模型准确率如表4 所示。基于注意力机制的神经网络模型训练过程如图2 所示。

图2 模型训练过程

表4 基于注意力机制的神经网络模型准确率(%)

结果显示,从训练集角度,基于注意力机制的门控循环单元(Att-GRU)模型在情感分类任务上的准确率(97.1%)比基于注意力机制的长短期记忆模型(Att-LSTM)准确率(96.1%)、基于注意力机制的双向长短期记忆(Att-BiLSTM)模型准确率(95.8%)较高;三者模型训练均随着epoch 增加,其准确率也不断提升;在二轮数据集训练之后(epoch>2),三者模型准确率上升开始缓慢,且三者模型准确率在7 次训练后其准确率均到达最大值,之后训练模型准确率开始下降。从验证集角度,总体上看三者模型准确率波动较大,其准确率随着epoch 增加,有上升有下降。Att-LSTM 模型在epoch=4 时,准确率达到最好,之后训练准确率开始下降;模型Att-BiLSTM,在epoch=5达到最大值,而模型Att-GRU,在epoch=2 时其模型准确率达到最好,之后均不断下降。基于注意力机制的长短期记忆模型,在验证集准确率上表现最好。然而,基于注意力机制的门控循环单元模型,在训练过程中的准确率更早达到优化值。

3 结论

传统基于循环神经网络的各情感分类模型,普遍是基于输入评论中的每个词或短语基础上进行学习并提取特征,但这种模型没有考虑到一条评论中不同的词语对最终情感倾向贡献程度的不同。本文在循环神经网络各变体模型的基础上,引入以情感词驱动的注意力神经网络模型,赋予更能代表评论数据情感的词以更高的注意力权重训练模型。本文基于深度神经网络不同的变体模型,将其分别与以情感词驱动的注意力机制相结合的方式进行模型实验,实验表明,引入注意力机制的神经网络模型较传统神经网络模型分类准确率都有所提升,且会更快地达到优化值。根据实验结果分析,本文实验的以情感词驱动的基于注意力机制的门控循环单元(Att-GRU)及门控循环单元(GRU)深度神经网络模型在文本情感分类上效果优于其他模型。

必须指出的是,本研究训练的情感分类模型依旧是针对二分类,对于更加细粒度的文本情感分类在各模型上的训练效果有待进一步深入研究。另外,目前提出的深度神经网络模型无法解决词汇的一词多义问题,对分类结果会造成一定偏差,后期研究可以在现有研究基础上,利用Transformer 和Bert 模型进行词向量训练,验证各模型分类效果。

猜你喜欢
注意力准确率神经网络
让注意力“飞”回来
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
神经网络抑制无线通信干扰探究
高速公路车牌识别标识站准确率验证法
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用