基于依存句法树抽取APP软件用户评论的核心评价内容

2021-06-07 23:42罗压琼
现代信息科技 2021年24期

摘  要:随着手机软件的广泛使用,应用市场中APP软件用户评论数据急剧增加,获取用户使用软件真实反馈,能够为开发者、下载者提供准确的修改意见和参考,减少时间花费。通过对大量APP软件用户评论进行研究,首先基于APP软件用户评论中的评价对象和评价观点定义了核心评价内容,其次使用依存句法树实现了对核心评价内容的抽取。实验结果表明,能够有效抽取APP软件用户评论中的核心评价内容,验证了方法的有效性和可行性。

关键词:APP软件;用户评论;评价对象;评价观点;核心评价内容

中图分类号:TP391.1       文献标识码:A文章编号:2096-4706(2021)24-0016-05

Abstract: With the widespread use of mobile phone software, there is a sharp increase in the user comment data of APP software in the application market. Obtaining the real feedback of users using the software can provide accurate modification opinions and reference for developers and downloaders, and reduce their time cost. Through the research on a large number of APP software user comments, firstly, the core evaluation content is defined based on the evaluation object and evaluation viewpoint in APP software user comments. Secondly, the dependency syntax tree is used to extract the core evaluation content. The experimental results show that it can effectively extract the core evaluation content of APP software user comments, and verify the effectiveness and feasibility of the method.

Keywords: APP software; user comment; evaluation object; evaluation viewpoint; core evaluation content

0  引  言

APP軟件应用的普及,使得APP软件用户评论急剧增加,通过APP软件用户评论抽取评价内容,并形成用户使用软件之后的综合反馈成为当前研究热点。

姜巍等人[1]认为从海量、非结构化、有噪声的评论中抽取出有用性的软件特征及用户观点对于评论分析是尤为重要。Jiang等人[2]认为APP软件的用户评论中意见表达方式复杂多样,为了获取有意义的用户反馈,对用户评论的软件功能意见表达进行自动挖掘是非常必要的。崔建苓等人[3]提出基于评论挖掘的需求获取方法,针对APP存在的相关问题分类汇总,得到更多软件相关的价值信息。钱宇等[4]认为APP市场上用户发表的评论在APP软件更新和重新设计中极其重要,且开发者对于用户评论主要是软件功能方面的意见被采纳较多。

综上所述,应用市场APP软件的用户评论,具有数量大、更新快、内容多样等特点,海量的APP软件用户评论中包含了较多冗余内容,造成分析处理困难和反馈结果代表性不强等问题。为了获得具有代表性的APP用户使用综合反馈,需要进一步抽取出APP软件用户评论中的核心评价内容,即以评价对象为中心,在整条APP软件用户评论中,抽取出既能体现评价观点,又具有和评价对象间存在句法相关性的,称为核心评价内容。所以我们对APP软件用户评论中核心评价内容的抽取主要是基于评价对象和评价观点进行深层次的挖掘。该内容不仅可以引导未下载APP软件的用户看完核心评价内容后对APP软件进行下载使用,而且也可以从另一方面反映出APP软件存在的具体问题,给予开发者较确切的反馈结果。

文章的主要贡献有:

(1)针对评价对象和评价观点,给出了更深层次的核心评价内容的定义。

(2)应用核心评价内容的定义,针对APP软件用户评论特性采用依存句法树的方法进行核心评价内容的抽取。

1  相关工作

针对用户评论的评价内容抽取,国内外学者开展了相关研究。Suprayogi等[5]认为大量的评论会让人很难找到和理解评论所包含的信息,提出了一个利用机器学习技术对评论内容分类的信息抽取模型。Poche等人[6]使用一种基于抽取频率的冗余控制摘要技术SumBasic,去捕捉视频中用户评论中的主要关注点,提供高质量的评价内容。纪志伟[7]设计了一种基于初始观点词性规则自动迭代发现新的用户观点词性规则的方法,以此抽取用户评论观点形成评价内容。刘伟[8]等针对Web用户评论,使用深度加权的树相似性算法将评论记录从网页中抽取出来,然后通过比较DOM(Document Object Model)树中节点的一致性来实现对用户评论内容的抽取。陈琪等[9]为了从用户抱怨评论中提取有效信息,提出一种基于支持向量机和主题模型的评论分析方法 RASL(review analysis method based on SVM and LDA)。

当前研究针对用户评论进行评价内容抽取,其抽取出的结果仅针对某一方面的信息,并不包含用户评论中针对评价对象的详细说明,或是评价观点产生的原因。例如,文献[6]通过识别用户评论中的关注点,认为用户评论中的关注点就是评价内容,并未包含原因。文献[7,8]只通过评价观点或者评价对象就代表评价内容这是一种片面的反馈。文献[5,9]抽取评价内容基于类别的划分,再进行评价内容抽取,导致内容抽取受到分类的局限性较大。

文章针对上述研究存在的不足,为进一步抽取APP软件用户评论中对评价对象的详细说明,基于评价对象和评价观点,提出了一种应用依存句法树抽取APP软件核心评价内容的方法。

2  核心评价内容的定义

在线网络环境下,由于APP软件用户评论表达随意、形式多种多样,其用户评论中所包含的信息让人难以理解。通过阅读大量抽取出评价对象及评价观点的APP软件用户评论,我们发现,基于APP软件用户评论的特性,只有评价对象和评价观点代表整条用户评论的核心内容,是不完整的,没有解决用户的核心痛点问题。因此,为了便于挖掘APP软件用户评论的核心评价内容,得到高质量的用户反馈,本文将给出核心评价内容的定义如下:

核心评价内容(content):体现对评价对象的详细说明,抽取出用户对评价对象产生评价观点的原因的评论表达方式,包含词、词性、词之间的关系3个属性。评论库中共有n条用户评论,每条评论都有核心评价内容组成。

content=(1≤i≤n);

contenti=(1≤j≤m).

其中,word代表與评价对象相关的词,speech代表相关词的词性,relation代表依存句法中与核心词之间存在的关系。从定义可以看出,要确定一条APP软件用户评论的核心评价内容,评价对象和评价观点是不可或缺的。

在APP软件用户评论中,从词性的角度分析,评价对象主要以名词或是名词短语的形式出现,多为APP软件的功能点。而评价观点多倾向于形容词或是副词等各种组合情况去描述对APP软件使用之后的态度。

胡甜媛等制定的评价对象及评价观点抽取规则能实现对用户评论的自动抽取[10],具有较高的准确率,因此本文采用该抽取规则识别APP软件用户评论中的评价对象和评价观点。基于核心评价内容的定义,可以结合评价对象和评价观点,得到具有代表性强,高质量的评价内容。

3  基于评价对象和评价观点抽取核心评价内容

根据现有研究中对APP软件用户评论的处理方法技术,其中使用依存句法分析用户评论能够详细描述词与词之间的关系,通过对大量APP软件用户评论中的评价对象和评价观点进行观察总结,发现用户评论中基于评价对象和观点中抽取评价内容是满足一定的句法关系的,且这些句法关系是有规律可循的、可总结的、而非杂乱无章的,其中短语是构成句子的基础[11],发现用户评论的句法关系中包含的短语是描述整条用户评论的主要核心内容。其中依存句法树对于中文用户评论分析效果是简单高效的,不仅能得到词与词之间的关联程度,还能表示词的重要性,故本文选取依存句法树的方法来描述词与词之间的关系。

若仅使用依存句法树进行分析,树中结点包含太多的冗余结点,即用户评论中没有实际意义的词。这些词都存在于依存句法树中,造成抽取核心评价内容复杂困难。因此,为了能抽取出整条用户评论中的对评价对象的详细说明,即产生评价观点的原因,需要对原始的依存句法树进行剪枝处理。

剪枝处理需要先对结点进行标记操作。由于核心评价内容是对评价对象的详细说明,需要先定位出评价对象所在的词的位置。通过分析大量APP软件用户评论发现,距离中心词越近,词之间的关联度越高。因此,查找其周围的词与评价对象的相关性,需要利用树的特性,先查找到以评价对象为中心的亲戚结点信息。查找到所有亲戚结点之后,依然存在冗余问题,还需要对各类结点进行分析,分析过程如下。

首先在原始的依存句法树中找到包含评价对象的结点,然后以此结点为中心查找其亲戚结点(父亲结点、兄弟结点、孩子结点)作为与评价对象相关的结点进行标记。

对于亲戚结点中的结点,若结点信息中包含的关系是“标点符号”,则都不进行标记。其中对于兄弟结点,若包含了“并列关系”,我们就更改中心位置为该结点,查找该兄弟结点的亲戚结点,若在此亲戚结点中查找到了包含“主谓关系”的结点,将该结点与APP软件简介的特征词计算相似度,若阈值大于0.5,说明发现了未被识别的评价对象,再次以新评价对象为中心,查找各结点进行相关词标记。若未查找到包含“主谓关系”的结点,我们认为该兄弟结点是针对原始评价对象进行评论,也属于相关词,应该进行标记。

若是在原始的依存句法树中就未找到评价对象的结点,我们就查找包含“主谓关系”的结点,利用上述软件简捷方法查看是否存在新的评价对象,对该评论进行合理标记。

经过结点标记之后,我们通过遍历整棵依存句法树,将未被标记的结点进行剪枝操作,然后由此结点产生的边也进行相应的删除,调整棵树的结构,将评价对象所在的结点调整至根结点位置,其他相关结点保持关系不变。例如,用户评论“都是非常好,就是歌曲有点少”,其中评论对象为“歌曲”,评价观点为“有点少”,其画出的原始依存句法树如图1(a)所示,通过标记之后剪枝留下的处理后的依存句法树如图1(b)所示。

根据处理后的句法依存树,我们发现,部分依存句法树上结点并不是核心表述,抽取APP软件用户评论核心评价内容时还需要充分考虑评价对象、评价观点、词性以及词间依存关系。因此,我们通过遍历整棵处理后的依存句法树构建抽取算法思想如下:

首先我们遍历整棵处理后的依存句法树,通过判断当前结点是否为APP软件用户评论中的相关评价对象,若是评价对象,我们继续往下遍历,若不是,我们查看是否属于APP软件的评价观点或者最后的树结点,若符合则认为核心评价内容就为整棵树的结点信息组成,若以上都不满足,我们通过查找当前结点的下一结点加入词性判断,即是否为否定副词,合并新的评价对象,若不存在该词性且该结点为新的评价对象,则计算该结点与软件简介之间的语义相似度,判断是否为与软件相关的评价对象,然后计算两个评价对象间的最短路径,其路径通过的结点信息就是我们的核心评价内容的组成。

4  实验结果与分析

4.1  实验设置

实验设置具体如下:

实验数据。本文采用的实验数据来自网络爬虫爬取的APP应用市场所有软件的用户评论,选取其中的66 001条评论进行实验,其中人工标注的评论为24 532条作为验证集。

(1)文本预处理。本文先将用户评论中进行粗粒度筛选去除部分垃圾评论,再用Jieba分词将用户评论进行分词及词性识别,根据词性组合规则得到用户评论的评价对象和评价观点,然后使用Hanlp工具包得到依存句法树等预处理工作。

(2)评价标准。评价标准主要采用准确率(Accuracy)来验证本文方法的有效性。准确率的计算公式如式1所示:

Accuracy=TP/(TP+FP) (1)

其中,TP表示本文方法的实验抽取与人工标注抽取的评价内容是一致的评论条数,FP表示本文方法的实验抽取与人工标注抽取的评价内容不是一致的评论条数,(TP+FP)表示总的人工标注的评论条数。

4.2  结果分析

4.2.1  本文方法分析

在本文实验中,我们共选取了66 001条APP软件用户评论进行实验,首先对这66 001条用户评论进行识别评价对象和评价观点存入数据库备用。然后根据每一条识别出评价对象和评价观点的用户评论应用本文方法,抽取出APP软件用户评论核心评价内容。部分用户评论经过标记后的结点信息如表1所示。

基于标记后的结点,对原始依存句法树进行剪枝,调整树结构等操作得到一颗处理过后的依存句法树。最终,根据处理过后的依存句法树结合APP软件用户评论的特性抽取核心评价内容。最后抽取结果如表2所示。

4.2.2  对比实验

基于句法语义依存分析的中文金融事件抽取的算法[12]如下:首先对某一条财经新闻标题进行依存句法分析,然后定义一条核心动词链,关于核心动词链的构建是基于依存句法结构制定规则抽取,之后基于核心动词链加入语义依存关系,构建一棵SSDP树,之后在SSDP树的基础上通过制定规则,对该树进行剪枝或是添加结点连线,生成一个SSDP图,最后基于SSDP图抽取出事件内容的主谓宾。

选取上述论文做对比实验是由于该方法使用了依存句法,且基于该句法,变换树或者图的形式处理实验对象,然后基于变换形式,总结规则抽取出实验结果。为了进一步验证我之前实验的有效性,将该对比实验的方法应用于中文用户评论数据集。本文方法与对比实验方法的实验结果准确率如表3所示。其中SSDP为对比实验方法的简称,Deal_DPtree为本文实验方法的简称,由表3可以看出,当同一批数据集采用不同的方法抽取其核心评价内容,本文方法的抽取准确率较对比实验的准确率高了10.56%,效果显著。

5  结  论

文章提出一种基于依存句法树抽取APP用户评论中核心评价内容的方法,通过评价对象结合句法分析调整依存句法树,并进行剪枝等操作。然后基于处理后的依存句法树加入词性,评价观点等抽取出核心评价内容。最后在中文APP用户评论数据集上验证了本文方法的有效性。下一步将完善结点标记,精简结点信息作为用户评论的核心评价内容,并进一步的研究自动化抽取方法,降低规则制定的局限性。

参考文献:

[1] 姜巍,张莉,戴翼,等.面向用户需求获取的在线评论有用性分析 [J].计算机学报,2013,36(1):119-131.

[2] WEI J,RUAN H,LI Z,et al. For User-Driven Software Evolution: Requirements Elicitation Derived from Mining Online Reviews [C]//Pacific-Asia Conference on Knowledge Discovery and Data Mining.Tainan:Springer International Publishing,2014:584-595.

[3] 崔建苓,杨达,李娟.RERM:一种基于评论挖掘的需求获取方法 [J].计算机应用与软件,2015,32(8):28-33.

[4] 钱宇,曹恩叶,邓文君,等.海量用户评论在APP更新设计中的参与作用挖掘 [J].系统工程理论与实践,2021,41(3):554-564.

[5] SUPRAYOGI E,BUDI I,MAHENDRA R. Information Extraction for Mobile Application User Review[C]//2018 International Conference on Advanced Computer Science and Information Systems (ICACSIS).Yogyakarta:IEEE,2018:343-348.

[6] POCHE E,JHA N,WILLIAMS G,et al. Analyzing User Comments on YouTube Coding Tutorial Videos [C]//2017 IEEE/ACM 25th International Conference on Program Comprehension (ICPC).Buenos Aires:IEEE,2017:196-206.

[7] 纪志伟.基于描述和用户评论的App应用市场信息挖掘 [D].杭州:浙江大学,2018.

[8] 刘伟,严华梁,肖建国,等.一种Web评论自动抽取方法 [J].软件学报,2010,21(12):3220-3236.

[9] 陈琪,张莉,蒋竞,等.一种基于支持向量机和主题模型的评论分析方法 [J].软件学报,2019,30(5):1547-1560.

[10] 胡甜媛,姜瑛.體现使用反馈的APP软件用户评论挖掘 [J].软件学报,2019,30(10):3168-3185.

[11] 王治敏,朱学锋,俞士汶.基于现代汉语语法信息词典的词语情感评价研究 [J].中文计算语言学期刊,2005,10(4):581-591.

[12] 万齐智,万常选,胡蓉,等.基于句法语义依存分析的中文金融事件抽取 [J].计算机学报,2021,44(3):508-530.

作者简介:罗压琼(1997.11—),女,壮族,云南个旧人,硕士研究生在读,研究方向:软件工程。