APP下载

基于聚类与句子加权的欺骗性评论检测

2019-06-10张建鑫

软件导刊 2019年2期
关键词:聚类神经网络

张建鑫

摘 要:消费者在购物前往往会参考产品评论,欺骗性评论容易误导顾客使其作出错误决定。现有检测欺骗性垃圾评论的方法大多采用机器学习方法,难以学习评论的潜在语义。因此提出一个基于聚类与注意力机制的神经网络模型学习评论语义表示。该模型使用基于密度峰值的快速搜索聚类算法找出词向量空间语义群,通过KL-divergence计算权重,然后综合句子中单词与单词所属的语义群得到句子表示。实验结果表明,该模型准确率达82.2%,超过现有基准,在欺骗性垃圾评论识别中具有一定使用价值。

关键词:欺骗性评论;聚类;句子加权;神经网络

DOI:10. 11907/rjdk. 182701

中图分类号:TP306文献标识码:A文章编号:1672-7800(2019)002-0034-04

Abstract:Consumers prefer to read product reviews before shopping. Deceptive comments can easily mislead customers to make wrong decisions. Existing methods for detecting fraudulent spam comments mostly use machine learning, but it is difficult to learn the underlying semantics of comments. This paper proposes a neural network model based on clustering and attention mechanism to learn the semantic representation of comments. Specifically, this paper first makes the fast search clustering algorithm based on density peaks to find the semantic group in the word vector space, and calculates the weight by KL-divergence. Then it synthesizes the words in the sentence and the semantic group to which the word belongs to get the sentence representation. The experimental results show that the accuracy of the proposed model reaches 82.2%, which exceeds the current benchmark. Therefore, it has certain value in the identification of fraudulent spam comments.

Key Words:deceptive review detection;clustering;sentence weighting;neural network

0 引言

欺騙性评论检测是自然语言处理领域一项紧迫且有意义的任务。随着用户评论不断增长,欺骗性垃圾信息的出现引起了广泛关注。欺骗性评论是一种虚假评论,故意将其写得真实可信,使受众难以辨别。因此检测欺骗性评论的研究是必要且有意义的[1-2]。

评论通常是简短的文本。检测的目的是区分文本是否为虚假评论。由于虚假评论具有隐藏性与多样性,比如人类手工标注的评论数据集中必定存在一定数量的影响分类器的误例。大多数现有方法遵循Ott等[3]利用机器学习算法构建分类器的方法。任亚峰等[4]提出一种创新的PU学习框架识别虚假评论;Ott、Shojaee及Li等[5-7]使用词袋特征、词性特征及文体特征等多种特征进行模型训练,在众包平台构造的数据集上,获得74%~79.6%的检测准确率;Li&Hammad[8]、Mukherjee等[9]运用元数据特征对评论文本进行数据分析及虚假评论检测。但以上方法均无学习文本的语义表示。

基于神经网络模型良好性能的自然语言处理任务,如语言建模[12-13]、情感分析任务[14-15]与文本分类,本文提出一种新模型,通过使用词向量聚类与句子加权的新方法学习评论语义表示,并检测垃圾评论。通过学习文档级的表示可以捕获全局特征并考虑词序与句子顺序。

1 相关知识介绍

1.1 词向量聚类

在嵌入空间中,相邻单词通常语义相关[16]。因此,可利用聚类方法发现语义群,但是在选择聚类算法的过程中存在问题,如语义群数量事先未知,词向量维度通常很高,导致模型计算量巨大。为了解决以上问题,本文采用基于密度峰值搜索的快速算法[17-18]实现词嵌入聚类。

聚类算法假定聚类中心被局部密度较低的邻居包围,它们与任意一个局部密度较高的点之间的距离相对较大,正好满足词向量分布特性。该算法需要计算局部密度及密度较高点的距离。

局部密度[ρi]定义为:

其中函数

[dij]是数据点之间的距离, [dc]是截止距离。

与密度较高点的距离[δi]计算公式为:

1.2 句子加权

在区分垃圾评论与真实评论时,有些词极其重要。因为在语义表示中,单词词义不同会导致单词在句子中作用不同。因此,单词不同的句子权重也不同。

对于文本T来说,获得语义表示的方法中存在的关键问题为:T的语义通常由一些关键短语确定。如果只是简单地将T的单词进行语义表示,可能会引起歧义,并影响整个语句的语义表示。本文根据句子中单词及单词所属的语义群计算句子权重,采用KL-divergence作为语义群与单词的权重。KL-divergence的值代表特征在划分文档中的能力。

如图1所示,本文模型首先在嵌入空间中使用聚类算法发现语义群,并使用KL-divergence计算语义群权重。在卷积层将输入评论的每个句子转换为固定长度矢量。根据句子权重计算公式得出每个句子的权重,最后通过上下文确定词向量语义构成,计算文本语义表示。卷积层通过卷积核对语义表示进行卷积计算,提取高层次局部特征,利用K-Max Pooling对卷积层输出特征图进行下采样,生成全局特征。最后,采用Softmax损失函数作为分类器。

1.3 架构描述

卷积层计算如式(4)所示,将卷积核与输入矩阵向量作内积计算。

在卷积神经网络中,经过卷积操作后放进池化层,以提取局部均值与最大值,根据计算出来的值分为均值池化层与最大值池化层。为获取具有固定长度的最相关全局特征,本文使用K-Max池化操作对特征进行下采样,如式(5)所示。

使用正切函数计算特征,从而得到输入评论文本的特征表示。

通过上述层次序列之后,获得具有固定大小的语义表示。在模型网络最后一层与权重连接,如式(7)所示。

最后输出层输出模型预测结果。为将向量转换为概率分布,使用Softmax函数。输出向量的每个分量均可视为标签得分。

为最小化交叉熵与所有样本实际分布,在网络训练中使用交叉熵函数。因为交叉熵函数被证明能够加速反向传播算法,并提供良好的整体网络性能与相对较短的停滞期,特别是对于分类任务。

2 实验

2.1 实验数据集

本文通过垃圾评论检测实验,评估基于聚类与句子加权的语义表示模型。本文采用Li[19]发布的黄金标准垃圾评论审查数据集。该数据集包含3个领域的统计数据。数据集分布如表1所示。

2.2 基准方法

将本文模型与如下基准方法进行比较。

(1)CNN模型。Kim[20]提出将卷积神经网络用于分类模型。首先选择词向量作为原始特征,然后通过卷积神经网络进一步提取特征,最后训练出基于卷积神经网络的分类模型。

(2)LSTM模型[21]。该方法是具有一个隐含层的长短期记忆网络模型。LSTM网络比简单的循环架构更易于学习长期依赖。

(3)Bi-LSTM模型。双向LSTM 模型是 LSTM 模型的变种,在处理很多自然语言任务时表现出良好性能。

2.3 实验评估方法

本文采用准确率、精度、召回率及F1值评估模型有效性。准确率代表模型预测垃圾评论样本和非垃圾评论的能力;精度反映模型预测垃圾评论的正确性能力;召回率反映在真实垃圾评论样本中正确预测垃圾评论样本的覆盖范围。

2.4 实验结果与分析

本文使用10折交叉验证法,通过与基准方法比较从而评价模型。从表2实验结果可以看到,本文模型在餐厅领域获得最佳结果,但在医生领域表现结果不理想。LSTM与Bi-LSTM等复杂模型的表现比CNN简单模型逊色,其主要原因是过度拟合。对于小数据集,包含众多参数的基于神经网络的模型未必是好的选择。

本文模型在准确率、精度、召回率方面均超过了其它基准方法。主要原因归结于两个方面:①聚类算法的使用捕获了内部深层次联系;②句子加权的使用使模型能更好理解文本信息。

考虑到不同聚类算法对欺骗性评论检测的影响,为得到最理想的结果,本文对两个比较有代表性的聚类算法进行对比:K-means算法和DBSCAN算法。由图2可以看出模型使用聚类算法比不使用聚类算法效果更好,因为通过聚类算法有助于理解文本语义,提高模型识别能力。但是不同聚类算法在嵌入空间中聚类效果不同。从图2可以看出,基于DBSCAN聚类算法的模型优于基于K-means算法的模型。

同时本文还对比了两种句子加权算法。在使用同类聚类算法条件下,从图3可看出基于KL-divergence的加权优于其它方法,使用句子加权方法可提高模型准确率。

2.5 超参数影响

本部分通过实验研究超参数(预设阈值与隐藏层长度)在本文模型检测实验中的效果。考虑聚类算法中阈值对算法性能的影响,本文对其进行实验,结果如图4所示,从中可知,当欧氏距离太小时,模型表示不理想;当欧氏距离太大时,模型准确率趋于平稳。

本文考虑到网络隐藏层长度对算法性能有影响,使用卷积神经网络作为基础模型,如图5所示。随着隐藏层长度增加,模型准确率与F1值随之提高,但变化幅度不大且趋于稳定。

3 结语

针对手工标注的缺点,为更加准确地获取文本语义表示,本文提出一种基于聚类与句子加权的卷积神经网絡学习欺骗性评论的语义表示。通过在公共数据集上与多个基准方法进行比较,结果表明,基于聚类与句子加权的神经网络比其它神经网络模型表现更好,提高了整体模型准确率、精度及F1值,证明了本文模型有效性。但是,由于本文使用嵌入空间的欧氏距离作为预设阈值,忽略了文本单词亲和度,在未来可以在嵌入空间中改进计算亲和度。

参考文献:

[1] 林政,谭松波,程学旗. 基于情感关键句抽取的情感分类研究[J]. 计算机研究与发展,2012,49(11):2376-2382.

[2] 李素科,蒋严冰. 基于情感特征聚类的半监督情感分类[J]. 计算机研究与发展,2013, 50(12):2570-2577.

[3] OTT M,CHOI Y, CARDIE C,et al. Finding deceptive opinion spam by any stretch of the imagination[C]. Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics Human Language Technologies,2011: 309-319.

[4] 任亚峰,姬东鸿,张红斌,等. 基于PU学习算法的虚假评论识别研究[J]. 计算机研究与发展,2015,52(3):639-648.

[5] 杜伟夫,谭松波,云晓春,等. 一种新的情感词汇语义倾向计算方法[J]. 计算机研究与发展,2009,46(10):1713-1720.

[5] LI J, OTT M, CARDIE C, et al. Towards a general rule for identi-fying deceptive opinion spam[C]. Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics,2014: 1566-1576.

[6] SHOJAEE S,MURAD M A A,AZMAN A B,et al. Detecting decep-tive reviews using lexical and syntactic features[C]. 2013 13th International Conference on Intelligent Systems Design and Applications,2013: 53-58.

[7] LI F, HUANG M, YANG Y, et al. Learning to identify review spam[C].IJCAI Proceedings-International Joint Conference on Artificial Intelligence, 2011: 2488.

[8] HAMMAD A S A,EL-HALEES A. An approach for detecting spam in Arabic opinion reviews[J]. The International Arab Journal of Information Technology, 2013, 12(1):1-9.

[9] MUKHERJEE A,VENKATARAMAN V,LIU B,et al. What yelp fake review filter might be doing?[C]. Proceedings of the International Conference on Weblogs and Social Media,2013: 409-418.

[10] 胡熠,陆汝占,李学宁,等. 基于语言建模的文本情感分类研究[J]. 计算机研究与发展,2007,44(9):1469-1475.

[11] MIKOLOV T, SUTSKEVER I, CHEN K, et al. Distributed representations of words and phrases and their compositionality[C]. International Conference on Neural Information Processing Systems,2013:3111-3119.

[13] MNIH A,HINTON G E. A scalable hierarchical distributed lan-guage model[C]. Advances in neural information processing sys-tems,2009: 1081-1088.

[14] BENGIO Y,DUCHARME R,VINCENT P,et al. A neural probabilistic language model[J]. Journal of Machine Learning Research, 2003, 3(2): 1137-1155.

[15] 赵妍妍,秦兵,刘挺. 文本情感分析[J]. 软件学报, 2010, 21(8):1834-1848.

[16] 张珊,于留宝,胡长军. 基于表情图片与情感词的中文微博情感分析[J]. 计算机科学,2012, 39(Z11):146-148.

[17] RODRIGUEZ A,LAIO A. Machine learning clustering by fast search and find of density peaks[J]. Science,2014,344(6191):1492.

[18] 贾培灵,建聪,彭延军. 一种基于簇边界的密度峰值点快速搜索聚类算法[J]. 南京大学学报:自然科学,2017,53(2):368-377.

[19] OTT M. Linguistic models of deceptive opinion spam[C].The Workshop on Computational Approaches to Subjectivity,2013:31-33.

[20] KIM Y. Convolutional neural networks for sentence classification[DB/OL]. https://arxiv.org/abs/1408.5882.

[21] 胡新辰. 基于LSTM的語义关系分类研究[D]. 哈尔滨:哈尔滨工业大学,2015.

(责任编辑:江 艳)

猜你喜欢

聚类神经网络
神经网络抑制无线通信干扰探究
基于DBSACN聚类算法的XML文档聚类
条纹颜色分离与聚类
基于Spark平台的K-means聚类算法改进及并行化实现
基于神经网络的拉矫机控制模型建立
基于改进的遗传算法的模糊聚类算法
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定
一种层次初始的聚类个数自适应的聚类方法研究
基于神经网络分数阶控制的逆变电源