基于改进的长短期记忆网络模型的电商评论关键词提取
2022-10-23杜新宇吴俊杰
杜新宇,吴俊杰
(太原师范学院计算机系 山西 晋中 030619)
0 引言
在大数据时代,电商平台的在线评论功能,为用户提供有效的反馈渠道,但由于评论数据冗杂,用户难以获取有效信息,而关键词提取技术有效改善了这个问题。关键词的提取技术指通过一定的规则或数理模型等手段获得文档的关键词[1]。关键词提取任务可以分为属性词的提取和观点词的情感分类两个子任务,关键词提取的准确度决定了用户体验。传统的电商平台,通常使用其中一种方式来提取关键词,因此存在忽略语义内容以及重复提取语义相近关键词的问题。如今提取属性词的任务已经得到了广泛研究[2]。罗婉丽等[3]提出结合拓扑势与TextRank算法的关键词提取方法。何传鹏等[4]基于LDA和BERT模型,将关键词提取问题通过LightGBM算法转化为二分类问题。这些方法忽略了语义信息,只考虑语料库中候选词的词频特征,使得提取效果受限于语料库的规模。观点词的情感分类任务也逐渐获得了广泛的关注[5]。张浩然等[6]结合Word2vec和TextCNN模型实现对在线评论进行文本情感分类。该方法损失值较大且准确率不高。
针对以上问题,本文提出的方法通过单层神经网络对数据进行初筛,并将线索传输到主网络进行属性词和观点词的提取任务,可以高效地从数据中提取准确度高且不重叠的关键词。
1 模型简介
本文所研究的原模型由Li等[7]提出,他们引入了记录预测属性词以及观点词历史的机制。该机制作用在当前时刻,利用之前提取到的常见的、易预测的属性词信息,来识别后续出现的不常见的属性词,达到对属性词的精确提取,提高了检测率。如图1显示,该模型包含该两个主要的神经网络:截断历史网络(THA)和选择性转换网络(STN)。THA和STN基于两个独立的LSTM,他们分别用于主要的属性词提取任务和辅助的观点词提取任务。THA用来将属性词的识别历史信息和当前的属性词演算并生成候选属性词。STN基于当前的候选属性词演算生成一个新的观点词,之后根据新的观点词与当前属性词的关联度,演算并生成候选观点词。最终,将最后的候选属性词和候选观点词的传入全连接层进行演算,来获取我们所需要的关键词。
2 电商评论分析模型构建
在电商评论分析中,电商平台的用户评论数量多,无实意词较多,以及语句内容不连贯等因素干扰巨大。这些问题致使电商评论分析这一任务变得较为困难。由于上文作者提出的原模型在关键词提取任务上的良好性能,但该模型对于电商评论分析提取出的部分关键词存在多种表达形式,造成数据冗余,导致关键词提取准确率降低。因此本文尝试通过多个LSTM网络的训练来获得较高的预测精度,提高其在电商评论数据中的关键词提取准确率,并对训练过程做了如下改进,改进后的模型如图2所示。
2.1 构建神经网络结构
针对电商评论环境的关键词提取,例如某个评论“这部手机的材质很好,但是屏幕太拉跨了”,从细粒度的评价角度来说,买家对商品的“材质”这一属性的评价为正面的,对“屏幕”这一属性评价为负面的,但其属性和对应的观点是隐式地体现在评价中,需要我们利用模型抽取出来。给定一个有N个词序列X={x1,...,xN}的句子,通过模型演算,来预测最终的关键词的序列Y={y1,...,yN}。
首先,我们对原模型进行了适当的调整,在输入层中添加了一个单层的神经网络LSTMρ,用于辅助上层网络,筛选出N个处于隐式状态的属性词和观点词,该层网络的目的是减少数据冗余并引导上层网络,提高任务的性能。再使用两个神经网络LSTMλ作为上层网络,来建初始的上下文关系,分别用于主要的属性词提取任务和辅助的观点词提取任务,并且记录相关的顺序信息。我们将这两个结构连接起来,这样由LSTMρ所生成的内容可以为上层的预测提供重要线索。LSTMρ(xt)、LSTMλ()表示一个LSTM单元,我们使用双向LSTM来生成初始的隐式状态的属性词和观点词(di,dim是隐藏状态的维数),A和O分别是在关键词提取任务和观点词提取任务中使用的符号。LSTMλ承接LSTMρ的输出,如式所示:
2.2 获取候选属性词
RNN可以记录预测的整个历史,但并没有相关的机制将先前的预测和当前的预测进行联系。本文引入了截断历史网络(THA)来明确当前属性词和前NA个属性词之间的关系。在当前时刻t,THA计算每个缓存状态的归一化重要性评分,如式所示:
其中Softmax是softmax激活函数,v可以在训练中得到,W1、W2、W3分别是与先前属性词、当前属性词和属性词的识别历史信息相关的参数。然后,得到的属性词的识别历史信息如式所示:
为了从之前的属性词识别中获益,本文将隐式状态的属性词与提取的属性词历史信息结合起来,为当前的预测生成相关特征。最后采用一种类似于残差网络的形式来计算[8]时刻t的候选属性词,如式所示:
其中RELU是relu激活函数。
2.3 获取候选观点词
为了更好地利用观点词信息并且减少由距离引起的噪声,本文引用了选择性转换网络(STN),这样关于给定的候选属性词的主要特征就会被突显。STN首先对给定的候选属性词计算出的观点词。然后利用Bi-linear Attention layer,计算候选属性词与当前观点词的关联度,如式所示:
Wbi和bbi是Bi-linear Attention layer的参数。
在t时,经过改进的候选观点词是通过观点词的演算求出,如式所示:
之后,将候选属性词和候选观点词传入全连接层进行关键词的预测生成,如式所示:
对于LSTMλ采用交叉熵误差来计算损失函数:
最终损失函数如下:
3 系统实验
3.1 实验设置
实验平台配置为:操作系统:Windows 10;CPU:Intel i7-11700K;32 G内存;GPU:NVIDIA GeForce RTX 3080 10 G显存;深度学习框架:PyTorch;编程语言:Python。实验训练初始学习率0.001,衰减系数为0.05,对训练数据进行10次交叉验证。其他参数设置如下:di=70,di=50,关键词以及观点词的缓存NA的大小为4,Batchsize设置为32。
3.2 数据预处理
我们通过调用京东API来爬取真实评论,构建实验数据集,包括笔记本电脑、平板电脑、智能手机、水果、电视、衣服、书籍共7个商品类别,总共收集了35 000条评论数据。首先,对原始数据集进行清理,对于web符号,固定标签等意义不大的词,删除它们可以节省存储空间、加快计算速度的同时提高准确性。本实验采用中文语料库,因此使得分词处理不可或缺[9],我们选择“HanLP”来进行分词和命名实体识别[10],使用命名实体识别技术从文本中提取出专有名词或特定命名实体[11],来识别位置、时间、名称等内容。最后,还剩下30 129份高质量的数据。在实验中,我们取约20 129个数据作为训练集,取约10 000个数据作为测试集。
3.3 实验结果分析
通过与以下模型比较,细分领域训练及测试结果如下:
评价指标的衡量基于准确率(Precision)、召回率(Recall)和F-score,当F-score较高时,可以说明实验方法比较有效。
如表1所示,相比于原模型,在所选数据集上,我们的改进模型在准确率、召回率和F-score上均有提升。与CRF和LSTM相比,改进模型在F-score分别达到了25.2%和17.5%的绝对增益。同时,我们的改进模型比CMLA模型要高4.9%,这是一个不依赖于句法分析的模型,它将提取关键词和观点词这两个任务交给了attention机制去做。此外,我们的改进模型相较于原模型提升了1.1%,验证了在输入层中添加了一个单层的神经网络LSTMρ,用于辅助上层网络,筛选出N个处于隐式状态的属性词和观点词的有效性。
表1 细分领域训练及测试结果
4 结论
综上所述,本文通过对电商评论数据集的特征进行分析,清洗数据集并改进关键词提取模型,用于电商评论分析,并引入一个单层的神经网络LSTMρ结构和京东电商评论数据集,以此来完成电商评论分析系统。实验结果表明,我们提出的改进模型可以获得较好的提取性能。与常用的关键词提取模型相比,本文的模型能够获得更高的准确率和更优的F-score值。但系统存在一些不足,如算力需求较大。后续研究将对本模型的权重求解过程进行进一步优化,以提高该模型在更多类型组成的数据集中进行关键词提取的适用度,降低算力要求。