时间:2024-05-04
杨 超 李天卓 谈森鹏 杨新凯
(上海师范大学 上海 201400)
互联网的出现极大地改变了人们的生活,尤其电商平台的不断发展,越来越影响着人们的衣食住行。与传统的购物方式相比,网络购物有很多优势,但同时也存在很多缺点,其中一点便是消费者无法判断所购买商品的质量。此时,电商平台提供的在线评论功能成为人们了解该商品的最为重要的途径。在线评论允许用户书写评论来表达自己对所购买商品的观点,如商品的质量、商家的服务态度、配送速度等等。
由于在线评论可以引导消费者的购买行为,好的评论会给商家和个体带来好的声誉,从而带来巨大的商业利益,差的评论会给商家或个体带来利益的损失。一些商家为了利益会雇佣写手为自家商品撰写好评,或为其他商家撰写差评[1]。因此,正确地区分虚假评论和真实评论对现在互联网有急切的需求。
通常情况下,虚假评论识别被认为是一个二分类的问题,通过训练集训练出一个分类器,对新输入的评论进行预测,判断是否为虚假评论[2]。
虚假评论产生的方式有两种:一种是注册很多账号,利用每个账号发布少量的虚假评论;另外一种是注册少量的账号发表大量的评论。所以,从虚假评论产生的方式熵看,仅仅考虑文本内容是不够的,因为第二种方式发表的评论内容比较随意,基于文本内容不易识别;仅仅依靠行为信息也是不够的,我们很难发现第一种方式的虚假评论[3]。为了有效识别虚假评论,我们需要将评论文本内容和评论者行为信息结合起来,提高识别的准确率。
2007 年美国伊利诺斯大学的Bing Liu 教授团队首次提出虚假评论检测问题[4],之后虚假评论检测就成为了一个研究热点。近些年,虚假评论识别成为越来越多的学者研究的内容之一,国内外的学者在虚假评论识别上做了大量的工作,取得了一些进展。
Jindal[5]等在研究中发现在商品评论中存在大量的虚假评论数据。他们利用商品的相关评论数据,将评论文本、产品特征和评论者特征信息综合考虑进行建模,可以区复制观点和非复制观点。并将复制观点归为虚假评论。
OTT[6]等利用众包平台(Amazon Mechanical Turk)集了关于酒店的评论数据集,成为虚假评论识别中的“黄金”数据集。该数据集包含400 条人工编写的虚假评论和400 条真实评论。在该数据集上,他们将虚假评论问题视为文本分类问题,提取n-gram 特征、词性特征(POS 特征)和文本特征,并基于这些特征采用朴素贝叶斯和支持训练集进行分类,取得了较高的分类准确率。
任亚峰[7~8]等提出了一种基于语言结构和情感极性的虚假评论识别方法,从自然语言处理角度出发,分析评论文本的正面情感和负面情感的影响,并使用遗传算法,通过复制、交叉和变异实现种群的进化,从而提高识别的准确。
宋海霞[9]借助Co-Training的半监督学习方法,将评论文本和评论者评论行为特征进行融合,提出了内容和行为特征的虚假评论识别方法。
本节介绍我们提出的模型框架和其中的细节内容。虚假评论识别的数据分为两个部分,一个是评论文本内容数据,一个是评论者的行为数据。这两种数据的类型是不同的,因此我们需要分别对它们进行处理。然后对处理好的数据进行拼接后来对评论进行虚假评论的分类工作。本文虚假评论的框架如图1所示。
图1 虚假评论识别框架
由于文本内容是非结构化的数据,我们的模型无法直接进行处理。因此,在输入到卷积神经网络之前,我们需要将文本内容进行编码,使用连续的实数来向量来对一个单词进行表示,称为词向量。目前使用最为广泛的词向量模型为word2vec[10~11]。经过编码的文本数据输入到CNN 模型中,可以学习到一个稠密的评论文本内容的向量表示。
本文采用预先训练好的谷歌词向量Google-News-vectors-negative300.bin,将评论文本内容用词向量的形式表示。这样,每一条评论文本就可以表示为一个二维的词向量矩阵的形式。然后将这个词向量矩阵输入到卷积神经网络中,卷积神经网络的示意图如下,卷积神经网络经过卷积操作和池化操作可以很好地提取出文本的自然语言相关特征。
图2 卷积神经网络
卷积操作:
池化操作:
我们从数据集中抽取一些关于评论者行为的特征,如表1所示。
表1 评论者行为特征
其中,评分一致性的计算公式如下:
其中,rating 表示的是每条评论的评分,sentiment是计算每条评论的情感得分。
本文实验使用的数据集来自于Mukherjee等爬取的Yelp 网站关于99 家餐厅的64445 条评论,其中包括8035 条虚假评论,56410 条真实评论[12~14]。为了数据平衡,本文选取全部的虚假评论,并随机的从真实评论种选取8035条,共16070条数据构造本文实验数据集。
表2 数据集统计表
本文实验环境为Ubuntu16.04 平台的Python3.5。采用的编程环境为Pycharm。实验的python 库包括pandas、numpy、scikit-learn、keras、gensim。采用5折交叉验证。
为了检测虚假评论识别的准确度,本文选用了查准率(P)、查全率(R)以及F1值作为评价标准[15]。
表3 性能评估列联表
其中:TP 是被正确判别为虚假评论的数据条数,FP 是被错误判别虚假评论的数据条数,FN 是被错误判别为真实评论的数据条数,TN 是被正确判断为非虚假评论的数据条数。
TF_SVM:提取评论文本特征(Text Feature),然后使用提取的特征进行分类。
UBF_SVM:提取用户行为特征(User behavioral feature),然后使用提取的特征进行分类。
TUBF_SVM:提取评论文本内容和评论者行为特征,然后使用提取的特征进行分类。
CNN:仅仅使用单个卷积神经网络对评论文本内容进行虚假评论识别。
DCNN:使用双卷积神经网络进行虚假评论识别。
DCNN+SVM:双卷积神经网络+SVM。
表4 实验结果
经过实验发现,1)采用评论文本特征的虚假评论识别准确率比采用评论者行为特征的识别准确率要高,这说明从文本角度进行分析虚假评论更容易区分,也说明虚假评论与非虚假评论用词特点有一定的区别;2)将文本特征和评论者行为特征结合,可以提高虚假评论识别的准确率;3)使用卷积神经网络比传统的机器学习取得更好的效果;4)本文提取的双卷积神经网络相较于其他模型有更好的表现。
为了能够尽可能减少虚假评论的负面影响,本文基于评论文本内容和评论者行为特征设计了一种全新的虚假评论识别方法。基于神经网络的研究正在各个领域大量应用,本文考虑到卷积神经网络的优势,将评论文本内容和评论者行为特征经过卷积神经网络的处理,可以有效地发现虚假评论的特征。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!