APP下载

考虑产品属性层次性的评论挖掘及需求获取方法

2020-04-08李先飞

计算机集成制造系统 2020年3期
关键词:层次结构极性文档

纪 雪,高 琦+,李先飞,高 菲

(1.山东大学 机械工程学院,山东 济南 250061;2.山东大学 高效洁净机械制造教育部重点实验室,山东 济南 250061)

0 引言

用户需求是企业进行产品开发的依据,是市场营销决策的基础。传统需求获取方法由于成本高、周期长,已远不能满足企业对需求信息的要求[1]。计算机网络技术的发展使得Web成为获取用户需求数据、把握市场走向的重要渠道。研究表明,与其他Web数据相比,用户的在线评论含有更丰富、更可靠的信息[2-3]。且近年来随着自然语言处理技术的日渐成熟,基于在线评论挖掘来获取用户需求的方法得到越来越多学者的关注。

在线评论中的信息具有丰富多样性,包含用户对于产品、服务的大量主观评价,这对于设计人员了解本企业产品的优势和劣势,确定下一代产品的市场目标、开发需求具有重要意义。涂海丽等[4]构建了基于在线评论的用户需求挖掘模型,通过对评论中的主观句进行情感分析,得到不同产品属性的用户满意度情况,分析其所属KANO质量特征类型,并提出相应的改进建议。Netzer等[5]认为可以基于在线评论实施市场调研,评论中反映出了用户对于不同品牌产品的偏好程度,通过分析评论中各品牌产品的出现次数、共现次数、变化趋势等,可归纳出产品的市场结构,并以轿车和减肥药作为案例进行验证。Jin等[6]试图基于用户评论进行竞品的比较和分析,通过分析两种产品的评论数据,对比其中对于同一产品属性的情感描述,从而得知用户对这两种产品的偏好。李少波等[7]提出了产品在线评论数据驱动的感性工学方法,以在线评论为数据源对产品感性词进行搜集,建立产品感性语义空间与产品参数空间之间的映射模型,模拟用户对于目标产品的心理评估机制。Zhou等[8]提出一种基于用例推理来获取用户潜在需求的双层模型,首先通过情感分析挖掘评论中的产品属性和常见用例,以识别明确的用户需求,然后通过对常见用例和非常见用例进行语义相似性和差异性的对比,推理、识别出潜在的用户需求。

在利用评论数据获取大量有效信息的同时,学者们也发现在线评论具有数据体量大、价值密度低的特点[7],其中含有的大量冗余、无效信息会影响评论挖掘、分析的效果和效率。Liu等[9]为了筛选出更有利于设计人员分析产品的评论,构建了基于产品属性、语言特征、信息质量特征和信息理论特征的评论有用性模型。在此基础上,Qi等[10-11]又考虑了评论者特征和元数据特征,提出了可以预测评论有用性的自动筛选模型。Timoshenko等[12]为了提高分析评论内容、识别用户需求的效率,提出一种基于机器学习来选择有效评论内容的方法,采用卷积神经网络筛选掉评论中的无效信息,对相似语句进行聚类以避免重复表达。

综上所述,基于在线评论挖掘来获取用户需求的过程是以产品属性为核心的:在线评论包含用户对于产品属性的主观评价,是用户对产品属性满意程度的描述;用户需求是基于产品属性来组织的,反映下一代产品开发过程中的关注点[13]。从在线评论转化到用户需求的过程,是通过特征级的文本情感分析(Feature-based Sentiment Analysis)[14]实现:提取在线评论中的产品属性词以及对应的情感词,情感词中表达出的正面/负面的情感倾向反映了用户对于当前产品属性满意或者不满意程度,了解这些信息有助于设计人员确定下一代产品的开发需求。

然而,当前研究却忽视了产品属性的一个重要特点——层次性。如文献[4,6-8,10-11]中只基于单层的产品属性集合来挖掘评论、获取需求,是不符合实际情况的。不同属性描述的产品角度不同、表达的概念粒度不同,具有一定的层次关系。而这种层次关系,决定了无论是对产品做出评价、还是对需求进行表达,都难以只通过一层属性描述清晰。尤其对于复杂产品来说,这种层次性更是不容忽略。因此,基于在线评论挖掘来获取需求的过程中需要考虑产品属性的层次性:

(1)产品属性具有层次性 无论是基于产品属性进行组织的在线评论还是用户需求本质上都是具有层次结构的[13,15]。这种层次结构体现了产品属性被逐级分解、逐步细化以及分类组合的过程,对于设计人员深入、细致、全面地了解用户对产品的评价、以及用户需求很有帮助。

(2)考虑产品属性间的层次性 加入这种考虑使得属性概念被划分得更细致,属性范畴被定义地更严格,属性体系被构建地更全面,因此,每个属性所对应的情感词也可以被更准确地捕获。从而避免出现不同粒度的属性和情感词被匹配到一起,或某些粒度属性所对应的情感词无法被提取到的现象。这将在一定程度上提高用户满意度数据计算的准确性,从而利于更好地确定用户需求。

本文提出了一种考虑层次性的在线评论挖掘及用户需求获取方法。首先,采用基于层次主题模型的半监督方法对大量文本评论数据进行挖掘,得到产品属性层次结构树。其次,基于依存句法分析抽取每个产品属性对应的情感极性相关词并进行量化表示,然后再基于属性间的加权层次关系对缺失的情感极性值进行补充。最后,对每个产品属性的总体情感极性进行统计计算,得到用户满意度,从而确定用户需求。

1 构建产品属性层次结构树

有研究表明,在获取、整理并结构化用户需求的过程中,由产品开发团队构建的、与由用户自己构建的产品属性层次结构是不同的[16]:前者构建的层次结构更偏向于技术角度,反映产品的开发过程;后者构建的层次结构更偏向于应用角度,反映产品的使用功能。相比之下,由用户自己构建的产品属性层次结构更适合被应用到产品开发过程中[16]。

传统的由用户参与整理需求的方法成本较高。通过设计人员阅读在线评论、提炼用户普遍关注的产品属性的方法虽然可行,但考虑到在线评论数据量大、且每篇评论中含有大量无用信息,这种方法也是费时费力的。因此,本文提出一种半监督的方法构建产品属性层次结构树,具体思路如下:在线评论是由用户基于对产品的主观了解和认知体系,发表的具有一定逻辑结构的文本,从多方面、多角度对产品进行了评价。评论中提到的产品属性反映了用户的关注点,而评论内容的逻辑结构一般是基于属性间的层次关系来组织的。因此,首先采用层次主题模型(hierarchical Latent Dirichlet Allocation,hLDA)方法对文本评论数据进行挖掘,抽取出具有一定层次结构的评论主题层次树。这反映了大量在线评论中用户们普遍关注的主题,为设计人员快速了解评论内容提供了便利;其次,考虑到评论主题并不能准确代表产品属性,因此需要通过领域专家对主题层次树进行修剪、提炼和补充,形成产品属性层次结构树。

1.1 基于hLDA生成评论主题层次树

hLDA层次主题模型由Blei[17]于2004年提出,该模型以潜在狄利克雷分布(Latent Dirichlet Allocation,LDA)为基础[18-19],认为每个文档由多个主题组成,每个主题由多个词组成。进一步地,hLDA通过将语料库的文档词汇随机分配到各主题节点上,反复迭代,直至主题树结构和每个主题对应的词汇概率分布稳定下来,最终形成如图1所示的主题层次关系。其中,每个节点代表一个主题,包含两类信息:①与该主题有关的文档数量;②该主题下词汇的概率分布。更一般的主题更加靠近根节点,更特殊的主题更靠近叶子节点。分布到同一条主题路径上的文档共享相同的主题,具有较高的语义相似度[20]。

基于hLDA对大量文本评论进行挖掘可以了解用户评论的主要内容:首先,hLDA是基于词袋的假设,根据词频的信息实现主题分析。因此通过聚类起来的主题、以及频率较高的词汇,可以了解到用户普遍关注的、描述某些产品属性的话题。其次,树状结构的层次信息是一种父节点与子节点之间的衍生与继承关系[21],与评论逻辑结构相似,即属性概念间的层次关系,因此可以通过主题层次树了解到产品属性相关话题的层次结构。基于上述分析,本文采用hLDA方法来生成评论主题层次树,具体过程如图2所示。

采用hLDA生成评论主题层次树的具体步骤如下:

步骤1语料库的搜集。选取同类、相似产品的大量评论文档构建语料库。

步骤2评论文档的预处理。语料库中的原始评论文档需要转化为符合hLDA模型输入文件的格式:首先对评论文档分句、分词,去除停用词。然后,将语料库中每个词语赋予唯一编号,并统计其在每篇评论文档中出现的次数,即将评论文档转化为一个无重复词的词表文件。最后,生成hLDA模型的输入文件,为一个二维矩阵,如图3所示。

步骤3采用hLDA进行层次主题挖掘。首先采用hLDA进行文档数据建模,在该过程中需关注以下几个参数的设置:

(1)层次树的深度LL反映了产品属性层次结构的层次数量。从用户评价角度来说,除对产品做出整体评价外,通常还会细分1~2层产品属性进行评价;从需求获取的角度来说,整理出的产品属性层次结构通常为2~3层[22]。考虑到一些主题可能会在接下来的步骤中被删减,因此,这里的L取3或4。

(2)主题先验超参η和nCRP超参γ这两个参数控制生成树的大小,η反映了相应的主题方差,γ反映了创建新路径的可能性。因此,当η越小、γ越大时,生成树也就越庞大,针对这样的主题树提炼形成的产品属性层次结构树也会比较大。在需求获取过程中,整理出的产品属性层次结构通常包含20个左右的产品属性[22]。考虑到接下来的步骤中,一些主题可能被删减,或一个主题中可能会提取出多个属性,因此在实施hLDA的过程中,可以在保证总主题数为20个左右的前提下,反复尝试选取合适的η和γ参数[23]。

文本建模后,为估计评论文档的潜在主题,需要进行概率后验推理过程,利用可观察变量来推理出隐含变量。Gibbs抽样是蒙特卡洛算法的一种简单实现形式,通过Gibbs抽样的方法,可以获取文本中主题—词的概率分布和文档—主题路径分布[24]。最终,生成如图1所示的评论主题层次树。

1.2 构建产品属性层次结构树

评论主题层次树反映的是相关话题及话题之间的层次关系,并不能直接体现产品属性词及其层级结构,因此需要对评论主题层次树进行进一步地提炼。具体步骤(如图4)如下:

步骤1基于每个主题下的文档数量修剪原始主题层次树(图4a到4b的过程)。每个主题下文档数量越少,反映该主题在整个语料库中的覆盖率较低。因此在修剪过程中,可以根据最终主题为15个左右的原则,自底层向顶层,将每个主题与同层次其他主题下文档数量进行比对,对文档数量较小的主题进行删除。

步骤2基于每个主题下高概率词汇提炼产品属性(图4b到4c的过程)。每个主题下词汇的出现概率越高,也就是用户对该词汇使用次数多,反映出用户的关注点。对于产品属性相关的词汇,可以直接提炼出产品属性;对于描述主观情感、或使用场景的词汇,可以反向推测出其对应产品属性。

步骤3修补初始产品属性层级结构(图4c到4d的过程)。构建出来的初始产品属性层次结构树可能会出现“层次缺口”,即从根节点到每个叶节点的路径,所跨越的层次数量是不一致的。因此需要对具有这样“缺口”的路径进行产品属性的补充,可能是叶节点的上层属性、或者是下层属性,最终形成产品属性层级结构,如图4d所示。参考文献[22]的建议,该产品属性层次结构树中包含20个左右的产品属性。

2 确定产品属性的情感极性值

构建出的产品属性层次结构树反映了用户们普遍关注的产品属性,接下来需要进一步分析每篇评论中对这些产品属性所做出的评价,即实施特征级的文本情感分析。相关研究已有很多[25],按照所使用的技术大致可以分为基于词典的方法[26-27]、基于规则的方法[28-29]和基于机器学习的方法[30-31]。考虑到在线评论大都是产品领域相关的,且含有大量不规范的网络用语,因此本文选择基于词典和基于规则的方法进行情感分析。

另外,考虑到每个用户关注的产品属性不同,未必会对产品属性层次结构树中的所有属性做出评价,因此还需要对缺失的情感评价进行补充。

2.1 抽取情感评价单元

产品属性词和对应的情感词,通常被称为一个情感评价单元[32]。本文借助产品领域词典,识别评论中的产品属性词;借助情感词典,识别评论中的情感词;采用哈工大社会计算与信息检索研究中心研制的在线语言技术平台(Language Technology Platform, LTP)中依存句法分析功能[33],识别产品属性词与情感词之间的对应关系。具体步骤如下:

步骤1基于产品领域词典,识别产品属性词。一些产品属性词可能会有多种描述方式,可事先构建产品属性词的同义词集,识别过程中将这些同义词归为一类产品属性。这里只识别产品属性层次结构树中出现的产品属性,对于用户已进行评价、但未出现的属性,不进行识别。如果未识别到产品属性层次结构树中的产品属性词,则认为用户未对其作出评论,其情感极性词标识为“Undefined”。

步骤2定位产品属性词所在的句子,并对该句子进行依存句法分析。哈工大LTP平台中定义了24种语义依存关系[34],通过分析词语之间的依存关系,可得到句子中的主、谓、宾、定、状、补结构。

步骤3依据句法分析结果,识别产品属性词对应的情感极性词。与产品属性词的对应依赖关系为ATT(定中关系)、ADV(状中关系)、VOB(动宾关系)或SBV(主谓关系),且依赖的语法元素为情感极性词典中的词语,识别为产品属性词所对应的情感极性词。这里的情感极性词典可以参考现有的知网(Hownet)情感词典或台湾大学简体中文情感极性词典(NTSUSD)。对于某些特殊产品评论,也可以专门构建领域相关的情感极性词典。如果未识别到词典中的情感极性词,则将情感极性词标记为“Undefined”。

步骤4依据句法分析结果,识别程度副词和否定词。修饰情感极性词的程度副词和否定词也将影响情感分析的强度和极性,需要识别出来。与情感极性词对应依赖关系为ADV(状中关系)的副词或否定词,识别为程度副词或否定词。如果未识别到情感词对应的程度副词或否定词,则标记为“Undefined”。如果步骤3中未识别到情感极性词,则此处也不存在程度副词和否定词,均标记为“Undefined”。

2.2 量化情感极性相关词

用户发表的针对产品属性的情感评价,不但具有正面、负面的情感极性之分,也会表达出不同的情感强弱程度,这与评论中的用词表达[4,7,35]、句式表达(如讽刺句[36]、比较句[37]、递进句、转折句[38])、标点符号[39]等都有关系,本文中仅考虑用词表达的影响。

本文采用文献[4]中量化情感极性的方法,通过情感极性词、修饰其的程度副词、以及否定词计算情感极性值。在2.1节已识别出这3类词,因此只需要对其进行进一步的量化表示,量化方法如表1所示。

表1 情感极性相关词的量化表示

续表1

情感极性词参考知网(HowNet)情感词典,分为正向和负向两类,量化值分别为1和-1。如果未识别到情感极性词,这里先暂时标记为Null。对于程度副词,参考知网(HowNet)程度副词词典进行不同程度的量化,分为2,1.5,1,0.5四个等级。如果存在否定词,则取相反的极性。

基于表1,对于每个产品属性来说,其对应情感极性值SentiValue的计算方法如式(1)所示。

(1)

其中当情感极性词的量化值为Null时,则属性的情感极性值也为Null。针对这些值的处理,将在2.3节进行介绍。

2.3 计算缺失的情感极性值

每个用户关注的产品属性不同,因此未必会对产品属性层次结构树中的所有属性都做出评价。基于2.2节,已经计算出了用户做出评价的产品属性所对应的情感极性值,对于未做评价的产品属性,其情感极性值暂时标识为Null。对于同一篇用户评论来说,缺失的情感评价可能分布在产品属性层次结构树中的各个层级中;而对于大量的用户评论来说,这种缺失值分布的差异性会给统计分析造成困难。如果将这些未做评价的产品属性直接忽略、不予统计,可能会丢失到一些有用信息。因此,本文考虑对这些缺失的情感评价进行补充。

产品属性之间的层次关系,使得其对应的情感评价之间也会存在层次关系。对于具有父子关系的产品属性来说,父节点属性的情感评价由各个子节点属性的情感评价综合而成;而各个子节点属性的情感评价可由父节点属性的情感评价分解得到。因此,可借助这样的层次关系,基于已经计算出的属性情感极性值,转化计算出缺失的情感极性值。

2.3.1 确定属性权重

对于具有父子关系的产品属性来说,每个子节点属性对父节点属性情感极性的影响程度不同,即权重不同,因此,首先需要确定产品属性层次结构树中的各个属性权重。常用方法包括层次分析法、德尔菲法、熵值法等。本文采用层次分析法确定各个属性的权重[40]。

2.3.2 情感极性转化

在已经建立起权重的整个产品属性层次结构树中,如果能够将叶节点属性的所有情感极性值补全,则可认为整个层次结构树中的所有属性的情感极性值均可以通过加权关系计算出来。因此,首先对叶节点属性的缺失情感极性值进行补充。

本文定义,由一个父节点与其所有子节点构成的层级结构,称为一个层次单元,如图5所示。对于一个最底层的层次单元来说(即某个叶节点所在的层次单元):假设其中的父节点属性FAtt对应的情感极性值为FValue。该父节点属性对应的子节点属性(即叶节点属性)记为CAttk(k=1,2,…,p),对应的情感极性值为CValuek。每个叶节点属性对于父节点属性的权重为wk。

对于这样的一个层次单元来说,其中的情感极性值的分布情况可以有如图6所示的几种情况。图6中所示,如果节点属性对应情感极性值是基于用户评论量化得到的(即通过2.1和2.2节的方法计算得到),则在图中表示为Known。由2.2节易知,Known的取值范围在[-2,2]区间内。如果基于式(1)计算出来的值为Null,则在图6中表示为Null。

则计算叶节点属性的情感极性值可以分为以下几种情况进行讨论:

(1)当所有叶节点的情感极性值均已知

如图6a所示,如果父节点属性的情感极性值FValue为Null,则可以根据式(2)中的加权和关系计算出父节点属性的情感极性值:

(2)

如图6b所示,如果父节点的情感极性值是基于用户评论量化得到的,即FValue为Known,则父子节点之间可以不必遵循式(2)所示的加权和关系。

(2)当父节点的情感极性值已知,子节点的情感极性值未知或部分未知

如图6c所示,对于仅有1个叶节点的情感极性值未知的情况,可以基于式(2)所示的加权和关系求得。特别地,如果求得的CValuei范围处于(-∞,-2)区间,则CValuek取-2;如果求得的CValuek范围处于(2,+∞)区间,则CValuek取2。

如图6d和图6e所示,如果通过式(2)的加权关系无法计算出CValuek,则未知的CValuek通过[-2,2]之间的随机数产生,且需要保证满足式(2)的加权和关系。这种采用随机数的考虑,源于在对评论进行大量的分析中发现,上下层属性不一致的情况十分常见。因此,采用随机数来模拟用户评论的情感极性值,更符合实际情况。

(3)当父节点情感极性值未知,部分或全部叶节点的情感极性值未知

如图6f和图6g,由于缺失的情感极性值太多,通过加权关系式(2)无法计算出缺失的情感值。此时,将所有缺失的叶节点的情感极性值看作0。而父节点的情感极性值,按照式(2)计算得到。

上述几种情况,描述了补全叶节点属性情感极性值的方法。如果想获得较高层级的产品属性的情感极性值,则可以根据这些叶节点属性的情感极性值进行计算。

3 计算属性满意度及获取用户需求

经过前面的步骤,实现了从每篇产品评论中提取到用户关注的产品属性及对应情感极性值。下面基于大量产品评论,统计每个属性的平均情感极性值,即用户群体对这个产品属性的平均满意程度。假设产品属性层次结构树中共有n个产品属性,共有N篇待统计的产品评论。在第j(j=1,2,…,N)篇评论中,第i(i=1,2,…,n)个属性对应的情感极性值为SentiValueij,且该篇评论的支持人数为Supportj,则第i个属性的平均满意度AttSati计算公式为:

(3)

基于产品属性层次结构树,以及每个属性对应的平均满意度值,企业可以了解到自身产品的优势和劣势,从而可以确定下一代产品的开发需求,做出合理的产品开发决策[41-42]:

(1)产品属性层次结构树中的属性 该属性是用户的主要关注点。企业首先应当保证自己的产品具备这些属性,这是产品进入市场的基本条件。

(2)对于满意度为负值的产品属性 该属性表示用户对产品普遍不满意。且该值越小,表明用户越是不满。企业在下一步的产品开发中,应考虑对其进行重点改进。

(3)对于满意度为正值的产品属性 该属性表示用户当前对产品比较满意。对于这些属性,企业可以专门搜集、查看对其表达不满的产品评论,从中寻找自己的上升空间,争取比竞争对手做的更好。

4 应用案例

本文以汽车之家网站“马自达CX-4 2018款2.0 L自动两驱蓝天活力版”的口碑数据为研究对象,基于前文提出的方法对评论进行挖掘分析,获得客户需求。实现流程如图7所示,包括评论数据获取及预处理、评论数据抽取和需求获取3步。

4.1 评论数据获取及预处理

通过Python语言编写网络爬虫,抓取评论数据(这里只抓取“首次口碑”)573条。对数据进行预处理:

(1)去除网页数据标签 汽车之家的网站中,会以标签形式(如【最满意】、【最不满意】、【空间】、【油耗】等11个方面)对不同的评价角度进行标记,如图8a所示。考虑到一般的在线评论中没有这种标记,且也不会专门描述【最满意】、【最不满意】、【为什么买这款车】这几方面的内容。因此,为使本文的案例研究不失一般性,这里去掉评论中的标签,以及【最满意】、【最不满意】、【为什么买这款车】这几部分内容,将剩余内容合并为一个自然段,作为一篇评论文档,如图8b所示。

(2)构建领域词典,识别主观句 评论数据的预处理过程需要词典的支持,而评论是汽车领域相关且是发布在网络中的,其中许多词汇无法被一般的词库识别出来,因此需要构建汽车本体词典和汽车情感词典。本体词典的构建过程参考文献[26]中提出的半监督方法,构建出来的汽车本体词典将在4.2.1节中使用。这里基于构建出的汽车情感词典,识别评论文档中的主观句。图8b中的示例,每一句中都含有情感极性词,因此都是主观句。

4.2 评论数据抽取

4.2.1 构建产品属性层次结构树

(1)选择同类产品评论数据

除前面获取的573条评论,还增加了“马自达CX-4 2018款”下的其他8个车型的436条评论,作为构建产品属性层次结构树的语料库。

(2)评论数据预处理

将上述1 009条评论中的每一个词语赋予唯一的编号,统计每个词语在每篇评论文档中出现的次数,形成一个无重复词的词表文件。hLDA输入文件如图9所示。为了节省程序中的存储空间,将出现频次为0的词汇省略。

(3)采用hLDA进行主题模型挖掘

本文采用Python编写hLDA程序。经过多轮尝试,hLDA模型的关键参数设置如下:L=3,η=40,γ=1.0。再经过Gibbs抽样和概率计算,最终生成主题层次树。为呈现方便,将每个主题节点的文档覆盖数小于400的主题删掉,得到的主题树如图10所示。每个主题下,选用概率最高的前5个词来呈现,如表2所示。从图10和表2所示的结果可以看出,聚类结果具有明显的主题意义,与网站设置的模板标签基本一致。证明通过hLDA了解评论主题是可行的。

网站中还设置了“性价比”这个评价角度,然而与“性价比”这个词相近的词汇并未出现在图10和表2中。通过查看网站中用户对于“性价比”的评论内容,绝大部分还是对产品的动力、空间、操控、外观等方面性能的描述。而hLDA是基于词频来进行主题聚类的,因此“性价比”及其相近词汇并没有出现在结果中。

另外,通过表2中的结果可以看出,尽管这些词汇可以形成一个主题,但总也有与主题关系不是那么紧密的词汇出现。如主题2中可以概括为描述的是汽车的加速性能,而“外观”、“乘坐”也会被分到这个主题下。这也是基于hLDA进行主题聚类的一个缺陷。

表2 主题词汇

(4)构建产品属性层次结构树

根据图10和表2给出的结果,再基于各个主题意义及高频词汇,按照1.2节的步骤构建产品属性层次结构树,结果如图11所示。可以认为,这是在汽车方面用户比较关注的产品属性,且这样的层次关系更符合用户对于汽车的认知。

4.2.2 确定属性的情感极性值

(1)抽取情感极性相关词 以图8b中的评论文档中抽取“操控”、“方向盘”、“底盘”的情感极性为例介绍这个过程:首先,识别产品属性词“操控”、“方向盘”、“底盘”,并定位其所在的句子。在该篇评论中,没有“底盘”一词,因此只识别到两个句子。在哈工大LTP平台上对句子进行依存句法分析,结果如图12所示。

图12a中,“好”是情感词,与“操控”对应,且依赖关系为CMP。图12b中,“轻”是情感词,与“方向盘”对应,且依赖关系为SBV。这两个句子均未识别到程度副词及否定词。最终抽取到的情感极性相关词结果如图13所示(其中未识别到情感极性词,标识为“Undefined”)。

(2)情感极性的量化 根据2.2节方法对图13中的情感极性相关词进行量化,结果如图14所示。

(3)确定产品属性层次结构树中的各个属性权重 本案例采用9分位标度法。首先构建第二层评价属性相对于第一层的判断矩阵为:

求得A1最大特征根λmax=7.268,判断矩阵的阶数n=7,查表得平均随机一致性指标RI=1.32,计算一致性检验结果:

=0.034<0.1。

符合一致性检验。根据λmax对应的特征向量计算权重为:

ω=

同理,可以得第三层评价属性相对于第二层的判断矩阵,并计算出权重。结果如图13中所示。

(4)补充缺失的情感极性值

根据2.3.2节中提出的原则,计算缺失的情感极性值。这里只计算叶节点属性,对应的11个属性的情感极性值分别为:加速性能—2,乘坐空间—0,后备厢空间—1.5,油耗—0,座椅舒适性—1,噪声控制—0,外观—1,方向盘—1,底盘—1,门板材质—2,中控台—-2。

4.3 计算属性满意度及获取需求

将“马自达CX-4 2018款2.0L自动两驱蓝天活力版”的573条评论都进行预处理以及产品属性对应情感极性的抽取。依据式(3)计算11个叶节点属性的情感极性值如表3所示。

表3 情感极性值的平均值

由表3可以看出,当前在乘坐空间、座椅舒适性、噪声方面,用户很不满意。而车身外观、方向盘的操控、油耗方面,用户比较满意。

对上述结果,可以进行一个简单的对比分析。传统的需求获取方法,是通过直接与用户进行交流沟通,明确当前产品中满意、或者不满意的产品属性。4.1节中也提到,在汽车之家网站发表口碑时,需要填写用户【最满意】和【最不满意】之处,可以近似认为这是一种传统的需求获取方法。

因此,分别对这573条评论数据中的“最满意之处”和“最不满意之处”中的产品属性词的词频进行统计,其中词频出现前5的词汇如表4所示。这与由表3分析得到的结果基本一致,证明本文提出的方法与传统的需求获取方法是一致的,从而说明本文方法有效可行。

表4 评论中“最满意之处”和“最不满意之处”的产品属性词频统计

5 结束语

本文提出了一种考虑产品属性层次性的评论挖掘及需求获取方法。首先,采用hLDA层次主题模型聚类方法,从文本评论数据中挖掘得到具有一定层次结构的评论主题层次树;通过领域专家对主题层次树进行修剪、提炼和补充,形成产品属性层次结构树。这种产品属性层次结构树反映了用户普遍关注的产品属性,对于设计人员深入细致、快速全面地了解用户对产品的评价很有帮助。其次,对于得到的产品属性层次结构树中的每个产品属性,基于依存句法分析抽取其对应的情感极性相关词,并进行情感极性的量化表示;对于用户未做评价的产品属性,即缺失的情感极性值,通过属性间的加权层次关系补充计算得到其对应的情感极性值。这在一定程度上提高了用户满意度数据计算的准确性。最后,基于大量的用户评论,计算了每个产品属性的平均情感极性值,即用户群体对这个产品属性的平均满意程度。企业基于产品属性层次结构树、以及其中每个属性的平均用户满意度水平,了解企业的优势和劣势,从而确定下一代产品的开发需求。

本文研究仅通过用户评论中关于产品属性满意度的描述获取得到用户需求,而评论中更丰富的数据资源,还有待于进一步挖掘。当前大部分在线评论网站都会设置“追加评论”功能,其中包含大量对于产品售后、维修服务的描述,分析挖掘这些数据可以获取到服务相关的需求。另外,基于时间特征对在线评论进行分析,可以间接反映出用户需求的动态变化,及时了解这些信息并反馈到产品开发设计过程中,从而使最终上市的产品更加符合市场的需求。

猜你喜欢

层次结构极性文档
有人一声不吭向你扔了个文档
基于级联网络和语义层次结构的图像自动标注方法
跟踪导练(四)
论立法修辞功能的层次结构
基于RI码计算的Word复制文档鉴别
建构利益相关者管理的三层次结构分析
表用无极性RS485应用技术探讨
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
一种新型的双极性脉冲电流源
不让他人随意下载Google文档