基于深度学习的电商用户评论情感极性分析

2022-08-01 09:22吴淑凡
滨州学院学报 2022年4期
关键词:分词准确率模型

吴淑凡

(闽南理工学院 信息管理学院,福建 泉州 362700)

电商平台中用户数量急剧增加,如何在海量的用户在线评论中准确挖掘消费者的情感,提高平台中的商品质量、改进销售策略和提高客户服务水平具有重要的商业价值和研究意义[1-2]。电商用户评论情感极性分析是对带有感情色彩的主观性评论文本进行分析、处理、归纳和推理的过程,可帮助用户了解某一商品在大众心目中的口碑。深度学习在自然语言处理中的应用越来越广泛,将其应用在情感极性分析中能够得到较好的效果。深度学习能够自动学习数据信息的内在特征,在各种预测和分类中具有较高的准确率。2013年,Mikolov等[3]在学习词语之间相互联系的研究中利用上下词和中间词预测的方法,得到了词语在更高维空间的映射。1997年,Hochreiter等[4]为了弥补在梯度传递上循环神经网络(Recurrent Neural Network,RNN)自身的缺陷,提出长短时记忆网路(Long Short-Term Memory,LSTM),在一定程度上解决了梯度爆炸或消失的问题。双向循环神经网络(Bidirectional Long Short-Term Memory,BiLSTM)是由前向LSTM与后向LSTM组合而成。BiLSTM-Attention是在BiLSTM的模型上加入Attention层,加上Attention对实验结果有所提升。2014年,Kalchbrenner等[5]在不同长度文本中将静态和动态卷积网相结合,取得很好的效果。2014年,Denil等[6]提出多层次的卷积神经网络(Convolutional Neural Networks,CNN)模型,应用此模型通过池化结构和多层次卷积获取文本中的局部关键特征,取得了更好的效果。2019年,Mccoy等[7]在HANS上进行实验比较,使用变换器双向编码器表征(Bidirectional Encoder Representations from Transformers,BERT)模型,激励模型性能提升。同年,Lan等[8]为了提高BERT的训练速度,降低内存消耗,提出了两种参数约简技术,取得了不错的效果。2018年,胡朝举等[9]提出将LSTM和CNN相结合的方法,该方法不仅能够捕捉文本的局部特征,而且能够获取文本的上下文信息。2019年,Sun等[10]基于BERT模型提出一种基于知识增强语义表达(Enhanced Representation Through Knowledge Integration,ERNIE)模型,ERNIE优于其他基线方法。同年,Yang等[11]也基于BERT模型提出一种在多个任务上表现得更突出的方法:广义的自回归预训练方法(Generalized Autoregressive Pretraining for Language Understanding,XLNet)。

利用以上方法对用户评论的情感进行分析,能取得一定的效果,但是训练时间较长,当信息的语料不足时,效果不太理想,还需要做进一步的改进。本文通过实验比较BERT-CNN模型、BiLSTM模型、BiLSTM-Attention模型和BERT模型的准确率、稳定性、召回率、训练时间,发现利用BERT-CNN模型,经过训练优化参数,对用户评论进行情感分析,能达到较好的效果。

1 情感极性分析

情感分析可用于电子商务平台用户评论、游客在线评论、学术质量评价等领域[12-14]。在情感分析中,极性识别非常关键。目前情感极性分析主要有两种:一种是极性的知识源,它使用词典作为参照库,在特定应用领域中,词项极性的知识源采用专门的训练文档集[15];另一种是预测极性的概率模型,它是从已经标注了观点的文档集中训练的,要求被训练的文档集和预测文本具有一定的匹配性,预测的准确率和训练文档集的大小也相关。为有效利用大量已经标记的可用训练集,研究者们对一些电商平台的评论信息进行了分析,尽量减少训练文档集大小和情感词典对分析结果的影响[12-14]。

2 模型训练

BERT是一个预训练的模型,预训练是使用样本数据训练模型之前所做的训练,提前训练好这些任务中底层和共性的模型部分,然后再使用各自的样本数据训练自己的模型,极大地加快收敛速度。BERT保存一个任务上学习到的网络参数,后面的任务加载前面任务的参数对网络参数初始化,用新的任务数据集训练网络。优点是当新任务的训练数据比较少时,可以使用训练好的参数,不需要重新训练就可以达到较好的效果。BERT可以有更深的深度,增加了词向量的内部表征信息,使用了transformer编码器作为encoder,并行性更好,能够实现句子中每一个词语都包含其他词语信息,可以同一时刻内双向计算。

2.1 BERT-CNN模型

2.2 BERT-CNN模型层次结构分类

在对用户评论文本进行情感分析中,如果使用简单的分类器进行细粒度情感分析,只能对大致方向和内容进行分类,这种方法容易出现错误或无法有效识别的问题,是粗粒度的分析。在进行粗粒度情感分析后,需要使用复杂模型对内容进一步分析。为了提高分类的准确,使用多分类器进行识别。首先对文本数据进行多类别分析,确定所属类别;然后进入下一层分析,分析出两种不同情感,例如喜欢或者厌恶。不同的分类器采用自身的标签数据进行分析。整个分析是自上而下进行,判断所属商品,进入情感极性分析,最后分析得出评论内容属于哪个情感类别。模型层次结构如图1所示。

2.3 评论文本预处理

图1 模型层次结构图

实验中使用9个类别的商品数据,分别是衣服、书籍、水果、蔬菜、手机、电脑、洗衣机、酒店和护发素,商品的评论数据来自某某商城,评论数据60 000多条,“满意”和“不满意”各占一半。在训练数据之前需要对数据进行预处理,使用正则表达式去掉无用标点和符号,减少数据的长度,以免增加模型识别难度。另外,还要对数据中的停用词进行删除,这些词对文本分类没有大的影响,例如人称代词“我”“他”“她”等。文本中对分类基本没有影响的连词和介词也当作停用词处理,例如“在”“和”等。经过停用词的处理可以有效提高情感分析的效率,提高句子关键信息密度,使识别效率提高。文本中的分词对情感分析非常重要,分词语料在情感分析模型中比较好。自然语言处理中英文差别较大,主要原因是英文中没有分词,文中采用的分词工具是Jieba。对文本数据进行分词之后需要对词频进行统计,筛选出使用频率高的词语,验证分词的准确性。对错误或者歧义的分词创建分词词语来补充分词字典。

2.4 模型参数与训练方法

2.4.1 相关参数

在深度学习模型训练过程中的参数有很多,包括参数和超参数。参数的选择取决于数据集中数据的类型,超参数是训练前人为设置的,对模型性能有很大的影响,能够体现模型的能力,在训练过程中根据情况进行调整。文中实验的参数主要由批处理大小、学习率、迭代次数、Dropout等。(1)批处理大小。模型进行学习时输入的样本数量用批处理大小来表示,设置时需要根据机器的情况来确定。如果设置太小会使得机器性能未能完全发挥,导致训练速度很慢;如果设置太大,会使机器内存占用太高,训练不准确。因此,需要找到合适的大小进行模型训练,实验的BERT-CNN模型采用的批处理大小为128。(2)学习率。学习率是神经网络在训练过程中所使用的权值更新的速度,更新速度太快导致过拟合,更新速度太慢则达不到最优值。另外,不同算法的学习率设置要根据实际情况设置,模型的初始学习率为0.001。(3)迭代次数。模型中训练数据的学习总次数用迭代次数来表示,迭代次数可以设为固定值,到达这个次数就停止训练。迭代次数也可以根据模型停止的条件设置,使用早停法,实验BERT-CNN模型设置迭代次数为30。(4)Dropout大小。为了使训练过程中网络结构是变化的,Dropout大小表示训练时随机丢弃一定比例的神经元,增强模型的泛化能力,降低模型过拟合。实验采用的Dropout值设置为0.5。

2.4.2 训练方法

BERT-CNN模型在训练时首先输入训练集,然后设置训练集中的相关参数,根据评价指标值调整参数,使模型的能力不断加强,最后在训练集上使用最终模型进行测试。文中通过不同的神经网络模型对9个类别的商品评论数据进行细粒度情感分析。使用数据增强、正则化和Dropout等提高训练模型的效果。其中数据增强是增加训练集的数据,使用去标点符号、停用词等方法对数据进行处理。正则化是为了防止BERT-CNN模型出现过拟合。

3 实验分析

3.1 实验参数设置

本实验操作系统采用Win10(64位),CPU为Intel(R) Core(TM) i7-8565U CPU @1.80 GHz 1.99 GHz,内存容量为64 GB,硬盘容量为4 TB,编程语言使用Python语言,词向量训练工具为Word2Vec,分词工具为Jieba。数据集为某某商城上的9个类别的商品评论数据,包括衣服、书籍、水果、蔬菜、手机、电脑、洗衣机、酒店和护发素。每个类别的商品包括“满意”和“不满意”两张情感,在60 000多条的数据中训练数据占50%,测试数据占50%。数据的预处理包括去停用词、文本分词、词量统计等,文中实验使用BERT进行词量构建。BERT和CNN参数如表1、表2所示。

表1 BERT参数

表2 CNN参数

3.2 结果分析

准确率是预测的正类样本正确的样本数量所占的比例,召回率表示正类样本预测正确的正类所占比率。由准确率和召回率的度量值得到度量模型的准确率的参数F。准确率、召回率和F的计算公式分别为准确率=TP/(TP+FP),召回率=TP/(TP+FN),F=(2×准确率×召回率)/(准确率+召回率)。其中,TP表示真正例,FP表示假正例,FN表示假反例。通过实验比较了BERT-CNN模型、BiLSTM模型、BiLSTM-Attention模型和BERT模型的准确率、稳定性、召回率、训练时间,见表3。

表3 4种模型参数对比

图2 4种模型损失趋势图

由表3可以看出,BERT-CNN模型的准确率和F比BiLSTM-Attention和BiLSTM模型有明显的提升,但是训练模型所用时间要长一些,因此,说明在细粒度评论数据集上,BERT预训练词向量模型作为BiLSTM-Attention模型输入时,其效果要优于使用Word2Vec作为词向量模型,但是耗费了大量的时间。BERT-CNN的准确率和F比BERT模型高,耗费时间也高,说明在细粒度评论数据集上,在BERT模型上使用CNN进一步的特征提取,效果优于BERT模型。综上,BERT-CNN模型准确率和F最高,因此在本实验中,BERT-CNN在用户评论文本的情感分类中具有很高的性能。图 2展示了4种模型的损失趋势变化。BERT-CNN模型训练过程稳定,当收敛后损失较小,因此,在情感分析中BERT-CNN模型效果最好。

4 结论

研究电商用户评论情感极性,深度挖掘电商用户的评论信息具有重要的应用价值,能够提高企业的竞争力。本文首先对BERT-CNN模型层次结构进行分类,然后对其参数进行优化,最后将BERT-CNN模型与BiLSTM模型、BiLSTM-Attention模型和BERT模型进行了对比,BERT-CNN模型在准确率、稳定性、召回率上都优于其他模型,表明BERT-CNN模型更适合用于用户评论文本的情感分类。

猜你喜欢
分词准确率模型
适用于BDS-3 PPP的随机模型
自制空间站模型
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
分词在英语教学中的妙用
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
结巴分词在词云中的应用
结巴分词在词云中的应用
模型小览(二)