CN110659828B - 一种基于评论数据的软件特征评价方法 - Google Patents

一种基于评论数据的软件特征评价方法 Download PDF

Info

Publication number
CN110659828B
CN110659828B CN201910899186.1A CN201910899186A CN110659828B CN 110659828 B CN110659828 B CN 110659828B CN 201910899186 A CN201910899186 A CN 201910899186A CN 110659828 B CN110659828 B CN 110659828B
Authority
CN
China
Prior art keywords
word
evaluation
feature
software
polarity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910899186.1A
Other languages
English (en)
Other versions
CN110659828A (zh
Inventor
何鹏程
任洪敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Maritime University
Original Assignee
Shanghai Maritime University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Maritime University filed Critical Shanghai Maritime University
Priority to CN201910899186.1A priority Critical patent/CN110659828B/zh
Publication of CN110659828A publication Critical patent/CN110659828A/zh
Application granted granted Critical
Publication of CN110659828B publication Critical patent/CN110659828B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/374Thesaurus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06395Quality analysis or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于评论数据的软件特征评价方法,包含步骤:S1、采集软件产品的描述信息及若干条评论数据;S2、对描述信息和评论数据进行分词;S3、根据评论数据分词结果生成对应的软件评论特征集合;S4、根据描述信息的分词结果建立特征描述集合;根据特征描述集合从评论数据的分词结果中,提取特征词‑观点词对;S5、根据构建的极性词典判断提取的特征词‑观点词对的评价极性及其极性强度;S6、根据特征描述集合与软件评论特征集合的相似度,生成非一致性特征集合;S7、根据建立的多个软件应用质量评价指标,将非一致性特征集合分类;S8、可视化展示评价极性、极性强度的统计结果,非一致性特征集合的分类结果。

Description

一种基于评论数据的软件特征评价方法
技术领域
本发明涉及一种软件评价方法,特别涉及一种基于评论数据的软件特征评价方法。
背景技术
随着计算机技术和软件行业的飞速发展,软件已深入各个行业,深刻影响着人们的生活。开源软件及移动端软件等等各种软件应用服务被广泛使用,同时用户对软件的需求量越来越大,对软件的质量要求也越来越高,人们生活中无时无刻不在使用软件,软件已经成为不可或缺的一部分。目前,国内涌现了大批软件应用市场为人们提供应用下载服务,然而面对软件市场上的大量应用,用户选择的产品的依据通过软件产品描述信息和评论信息,由于软件产品描述信息过于专业化和笼统,且信息量也过于简单,对于用户做决策参考意义不大。仅仅根据软件产品的描述信息也无法准确获取符合自己需求的产品信息。然而,评论信息是人们对软件产品使用后对产品的喜好评价及反馈,细致的反映了软件产品的优缺点。这些评论很好的为人们在选择产品的时候提供了决策。如今,随着时间的积累在网上沉淀了大量的评论数据。
对于软件开发者来说,软件评论是开发者和用户之间交流和了解的桥梁,用户通常会将自己的需求反映在评论中,开发者可以通过对软件评论的分析,挖掘出用户的新的关注点,同时了解自己对于所开发的软件在市场中的优势和劣势,从而使开发者能够开发出符合市场和需求的软件产品,提高软件产品质量。对于用户来说,当用户在选择软件的时候,这些软件的评论为用户选择软件提供了巨大的参考。
然而面对众多的评论及评分,用户的评价很难直接体现出来,这些评论的有效性以及描述的准确性是用户关注的焦点。为了寻找到真正满足自己需求的高质量应用,用户需要花费大量的时间浏览,既费时又费力,而且用户对评论的情感极难以判断,阻碍着用户对应用的选择。考虑到软件产品评论的数量一直处在不断增长的阶段,这时,向用户提供与视觉信息进行快速交互的功能,为方便用户能够利用与生俱来的视觉感知的并行化处理能力快速获取评论中所蕴含的符合自己需求的信息,然后准确的定位到符合自己需求的应用。对于软件评论的数据挖掘及其评价状态可视化具有重大意义。
在这样的需求下,以有效获取软件评论信息为目标的软件评价分析可视化技术可以帮助开发者和用户更直观的甄别出软件评论中的有用信息。可以帮助用户快速的搜索到符合自己偏好信息的软件功能,为用户在下载软件时提供决策支持服务和搜索服务。与此同时,开发者可以利用这些用户对软件产品属性的可视评价反馈,可以有针对性的对软件进行下一版本的更新。
发明内容
本发明的目的是提供一种基于评论数据的软件特征评价可视化方法,根据用户对软件的评数据进行细致分析,整理并统计出用户关于软件特征评价的评价极性及评价的极性强度。在用户挑选软件时,帮助用户直观的获取产品评论评价信息,降低阅读成本。同时本发明还从用户评论中提取出不包含在软件描述信息中的特征词,并根据设定的多个软件应用质量评价指标进行分类,为开发者提供了未来改进软件产品的方向。
为了达到上述目的,本发明提供一种基于评论数据的软件特征评价方法,如图1、图2所示,包含步骤:
S1、利用爬虫工具从软件应用仓库采集软件产品的描述信息及若干条用户对该软件的评论数据,并预处理所述描述信息和评论数据;
S2、通过分词软件对预处理后的描述信息和评论数据进行分词,使用停用词表过滤分词结果,并为分词、过滤后得到的词语标注词性;
S3、基于Apriori算法,从对评论数据进行分词、过滤所得的词语中提取频繁项集,建立候选特征集;根据所述候选特征集生成该条评论数据的软件评论特征集合Evaluation_Features;
S4、将步骤S2中对描述信息分词、过滤得到的动词和名词作为特征词,建立特征描述集合Describing_Features;从评论数据的分词结果中,提取包含在所述特征描述集合Describing_Features中的词作为该评论数据的特征词;通过依存句法分析方法,从该条评论数据中识别与该特征词具有依存关系的观点词,建立特征词-观点词对;
S5、构建极性词典,根据所述极性词典判断提取的所述特征词-观点词对的评价极性及其极性强度;
S6、计算特征描述集合Describing_Features与所述软件评论特征集合Evaluation_Features的相似度;根据计算所得的相似度与设定第一阈值,判断软件评论特征集合Evaluation_Features为一致性特征集合Consistent_features或非一致性特征集合Nonuniform_features;
S7、建立多个软件应用质量评价指标,将所述非一致性特征集合Nonuniform_features根据所述软件应用质量评价指标进行分类;
S8、根据统计的评论数据的评价极性、极性强度,可视化展示软件产品的评价结果;并可视化展示所述非一致性特征集合Nonuniform_features的分类结果。
所述步骤S1具体包含:
S11、利用爬虫工具从软件应用仓库采集软件产品的描述信息及用户对该软件的评论数据;
S12、将描述信息和评论数据转换为简体字,去除描述信息和评论数据中无意义的符号,并删除长度小于三个字符的描述信息、评论数据。
所述步骤S3包含:
S31、基于Apriori算法,从对描述信息进行分词、过滤所得的词语中提取频繁项集;根据所述频繁项集建立候选特征集;
S32、对所述候选特征集进行距离剪枝,删除候选特征集中距离值大于设定的第二阈值的频繁项集;
S33、删除候选特征集中的冗余频繁项集;
S34、对步骤S33所得候选特征集中的频繁项集,根据其所包含的词语在不同评论数据中的语序进行统频;当该频繁项集的某种语序出现的频率大于设定的第三阈值,将该种语序作为该频繁项集的合理语序;
S32、根据具有合理语序的频繁项集建立软件评论特征集合Evaluation_Features。
步骤S4所述依存关系具体是指:
当特征词出现在定语结构中,该定语结构中的形容词与该特征词具有依存关系,为该特征词的观点词;
当特征词出现在主谓结构中并作为主语,则该主谓结构中的谓语或补语与该特征词具有依存关系,为该特征词的关键词;
当特征词出现在动宾结构中作为宾语,则该动宾结构的动词与该特征词具有依存关系,为该特征词的关键词。
步骤S5具体包含:
S51、根据知网公布的评价词汇资源,构造基础极性词典;所述基础极性词典包含若干个褒义评价词、若干个贬义评价词;
S52、根据从网络用于词典中挑选评价词语,以及从随机挑选的网络评语中提取的若干个具有观点倾向的网络词语,建立网络极性词典;所述网络极性词典包含若干个褒义评价词、若干个贬义评价词;
S53、通过人工方式,构建软件领域极性词词典,其包含在软件领域内的若干个褒义评价词和若干个贬义评价词;
S54、当特征词-观点词对中的观点词出现在所述基础极性词典、网络极性词典、软件领域极性词词典任一之中,直接得知该观点词的评价极性,所述评价极性是指褒义性或贬义性;否则进入S56;
S55、当特征词-观点词对中的观点词未出现在所述基础极性词典、网络极性词典、软件领域极性词词典任一之中,从基础极性词典、网络极性词典、软件领域极性词词典中随机选取相同数目的褒义评价词、贬义评价词,建立第一极性字典;进入S56;
S56、计算该观点词与所述第一极性词典中每个评价词的相似度;当第一极性词典中存在某个评价词,使该观点词与该评价词的相似度大于设定的第四阈值,以该评价词的评价极性作为该观点词的评价极性;否则,进入S57;
S57、计算该观点词的极性得分
Score(Word)=Positive(Word)-Negative(Word);
其中Word代表该观点词;
Figure GDA0003482022890000041
pwi为第一极性词典中的褒义评价词,p为第一极性词典中的褒义评价词的个数;Similarity(Word,pwi)表示该观点词与褒义评价词pwi的相似度;
Figure GDA0003482022890000051
nwi为第一极性词典中的贬义评价词;Similarity(Word,nwi)表示该观点词与贬义评价词nwi的相似度;
当Score(Word)>0该观点词的评价极性为褒义性,否则该观点词的评价极性为贬义性。
所述步骤S5还包含:
S58、建立否定词词典、程度副词词典;根据表达的程度强度对程度副词词典进行分类,得到若干个副词类;对每个副词类中的副词赋予相同的程度值,所述程度值代表程度强度;
S59、计算得到特征词-观点词对的极性强度SenScore(<feature,senWord>)=(-0.5)num*Score(senWord)*Score(degWord)其中,feature、senWord分别表示特征词-观点词对中的特征观点词,degWord表示特征词-观点词对所在的评论数据的句子中,修饰所述特征词-观点词对的程度副词,SenScore()表示极性强度,Score(senWord)表示观点词senWord的极性得分,Score(degWord)表示程度副词degWord的程度值,num表示特征词-观点词对所在的评论数据的句子中否定词的个数。
所述步骤S6包含:
S61、令特征描述集合Describing_Features={DF1,DF2,…,DFn};其中n表示特征描述集合Describing_Features中的动词和名词总数;DFi表示一个特征词,i∈[1,n];
S62、令软件评论特征集合Evaluation_Features={EF1,EF2,…,EFm};其中m表示软件评论特征集合Evaluation_Features中包含的评论对象个数;EFj表示软件评论特征集合Evaluation_Features中的一个频繁项,j∈[1,m];
S63、根据知网中文词典Hownet,通过深度学习的方法,计算得到DFi与EFj的相似度Simlaritynm
S64、计算相似度平均值Ave=∑Simlaritynm/nm;
S65、当Ave大于预设的第一阈值,则该软件评论特征集合Evaluation_Features为一致性特征集合Consistent_features;否则为非一致性特征集合Nonuniform_features。
所述步骤S7包含:
S71、建立t个软件应用质量评价指标C1~Ct
S72、令非一致性特征集合Nonuniform_features={NF1,...,NFp};其中p为非一致性特征集合Nonuniform_features所包含评论对象的个数,i∈[1,p];
S73、从NF1~NFp中任选t个软件评论特征集合,建立质心集合Original_Centroid={OC1,…,OCt};OCj∈Nonuniform_features,且对应于Cj,j∈[1,t];
S74、计算NFi与Cj的距离S(NFi,OCj),i∈[1,p],j∈[1,t];
S75、当S(NFi,OCz)=min{S(NFi,OCj)},j∈[1,t],则将NFi划分至与OCz对应的第z类输出簇;z∈[1,t];
S76、计算第一类输出簇~第t类输出簇的聚类中心,OC1′,…,OCt′;用OCj′更新OCj,j∈[1,t];
S77、重复步骤S74~S76,直到聚类中心不再变化。
所述步骤S8包含:
S81、统计各个评价极性、各个极性强度所包含的评论数据的数量;通过表格、色块、文字的形式可视化展示统计结果;
S82、可视化的展示各个评价极性、各个极性强度所包含的评论数据的数量;
S83、可视化的展示第一类输出簇~第t类输出簇对应的评论数据的数量;
S84、可视化的展示第一类输出簇~第t类输出簇对应的评论数据的内容。
与现有技术相比,本发明的基于评论数据的软件特征评价方法,能够完整的反映软件产品特征全貌,为用户在下载软件时更好地甄别软件特征是否符合自己的需求提供决策支持,为开发者进行下一次软件的开发提供了针对性有效的消息。本发明具有如下优点:
(1)通过对软件评论语义模式的统计和分析,提出了一种针对软件评论的特征词和观点词抽取的方法。
(2)探索了一套基于评论数据的软件产品评价模式,从用户评论中提取软件评论特性关键词,根据该软件评论特性关键词的评价极性及极性强度,对用户评论的软件特征进行细致分析,提供了更加准确、全面的关于软件特征评价的倾向性描述。
(3)从用户评论中提取了与软件描述特征关键词不一致的软件评论特征关键词作为冷类特征集,将冷类特征集作为用户对软件提出的新需求,并基于多项软件应用质量评价指标对冷类特征集再分类。细致的挖掘出用户潜在的产品需求倾向程度,为开发者提供了未来改进软件产品的方向。
(4)进行了基于软件评论挖掘的可视化展示,为用户提供了直观的获取产品评论评价信息,降低用户的阅读成本。
附图说明
为了更清楚地说明本发明技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图:
图1为本发明的基于评论数据的软件特征评价方法流程图;
图2为本发明的基于评论数据的软件特征评价方法流程的框架图;
图3为本发明的实施例一中,可视化的的展示软件产品的评价结果、非一致性特征集合的分类结果示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了达到上述目的,本发明提供一种基于评论数据的软件特征评价方法,包含步骤:
S1、利用爬虫工具从软件应用仓库采集软件产品的描述信息及若干条用户对该软件的评论数据,并预处理所述描述信息和评论数据;
所述步骤S1具体包含:
S11、利用爬虫工具从软件应用仓库采集软件产品的描述信息及用户对该软件的评论数据;在本发明的实施例一中,所述评论数据包含:评论标题、评论内容、评论时间、评论人、评论得分。
S12、将描述信息和评论数据转换为简体字,去除描述信息和评论数据中无意义的符号,并删除长度小于三个字符的描述信息、评论数据。
S2、通过分词软件对预处理后的描述信息和评论数据进行分词,使用停用词表过滤分词结果,并为分词、过滤后得到的词语标注词性;本发明的实施例一中,采用的是分词软件ICTCLAS进行分词。
S3、基于Apriori算法,从对评论数据进行分词、过滤所得的词语中提取频繁项集,建立候选特征集;每个频繁项集包含从评论数据中提取的若干个词语。根据所述候选特征集生成该条评论数据的软件评论特征集合Evaluation_Features;
所述步骤S3包含:
S31、基于Apriori算法,从对描述信息进行分词、过滤所得的词语中提取频繁项集,此为现有技术;根据所述频繁项集建立候选特征集;
S32、对所述候选特征集进行距离剪枝,删除候选特征集中距离值大于设定的第二阈值的频繁项集;此为现有技术;
S33、删除候选特征集中的冗余频繁项集;
S34、对步骤S33所得候选特征集中的频繁项集,根据其所包含的词语在不同评论数据中的语序进行统频;当该频繁项集的某种语序出现的频率大于设定的第三阈值,将该种语序作为该频繁项集的合理语序;
频繁项集又根据其包含的词语数目k,分类为频繁K项集;对于K>=2的频繁K项集,还需要考虑其所包含的词语的顺序。在本发明的实施例一中,对于频繁二项集{省电、功能},需要确定最终的特征是“省电功能”还是“功能省电”。此时根据统计的“省电功能”、“功能省电”各自出现的频率,来判定该频繁二项集的合理语序。
S35、根据具有合理语序的频繁项集建立软件评论特征集合Evaluation_Features。
S4、将步骤S2中对描述信息分词、过滤得到的动词和名词作为特征词,建立特征描述集合Describing_Features;从评论数据的分词结果中,提取包含在所述特征描述集合Describing_Features中的词作为该评论数据的特征词;通过依存句法分析方法,从该条评论数据中识别与该特征词具有依存关系的观点词,建立特征词-观点词对;本发明的实施例一中使用Stanford Parser的中文自然语言处理工具来得到具有依存关系的观点词。
步骤S4所述依存关系具体是指:
当特征词出现在定语结构中,该定语结构中的形容词与该特征词具有依存关系,为该特征词的观点词。在本发明的实施例一中,对于评论语句“真是一款好软件”,其中包括了定语结构“好软件”,则可以识别出特征词-观点词对“软件-好”。
当特征词出现在主谓结构中并作为主语,则该主谓结构中的谓语或补语与该特征词具有依存关系,为该特征词的关键词;
当特征词出现在动宾结构中作为宾语,则该动宾结构的动词与该特征词具有依存关系,为该特征词的关键词。在本发明的实施例一中,对于评论语句“比较喜欢隐私保护功能,不怕别人愉看手机”中,就存在宾语结构“喜欢隐私保护功能”,因此识别出特征词-观点词对“隐私保护功能-手机”。
S5、构建极性词典,根据所述极性词典判断提取的所述特征词-观点词对的评价极性及其极性强度;
步骤S5具体包含:
S51、根据知网公布的评价词汇资源,构造基础极性词典;所述基础极性词典包含若干个褒义评价词、若干个贬义评价词;
S52、根据从网络用于词典中挑选评价词语,以及从随机挑选的网络评语中提取的若干个具有观点倾向的网络词语,建立网络极性词典;本发明的实施例一中,从500条随机浏览的网络评语中提取具有观点倾向的网络词语。所述网络极性词典包含若干个褒义评价词、若干个贬义评价词;
S53、通过人工方式,构建软件领域极性词词典,其包含在软件领域内的若干个褒义评价词和若干个贬义评价词。由于某些词语只有结合其使用的领域才能判断出其表达的评价极性。如“大”这个词,在“屏幕很大”与“内存占用很大”中就表现出完全相反的极性。本发明的实施例一中通过人工的方式,构建了一个软件领域常用的极性词词典。
S54、当特征词-观点词对中的观点词出现在所述基础极性词典、网络极性词典、软件领域极性词词典任一之中,直接得知该观点词的评价极性,所述评价极性是指褒义性或贬义性;否则进入S56;
S55、当特征词-观点词对中的观点词未出现在所述基础极性词典、网络极性词典、软件领域极性词词典任一之中,从基础极性词典、网络极性词典、软件领域极性词词典中随机选取相同数目的褒义评价词、贬义评价词,建立第一极性字典;本发明的实施例一中,从每个词典中各选取了22条褒义评价词、22条贬义评价词;进入S56;
S56、计算该观点词与所述第一极性词典中每个评价词的相似度;当第一极性词典中存在某个评价词,使该观点词与该评价词的相似度大于设定的第四阈值,以该评价词的评价极性作为该观点词的评价极性;否则,进入S57;
S57、计算该观点词的极性得分
Score(Word)=Positive(Word)-Negative(Word);
其中Word代表该观点词;
Figure GDA0003482022890000101
pwi为第一极性词典中的褒义评价词,p为第一极性词典中的褒义评价词的个数;Similarity(Word,pwi)表示该观点词与褒义评价词pwi的相似度,其通过知网HowNet计算软件得来,此为现有技术;
Figure GDA0003482022890000102
nwi为第一极性词典中的贬义评价词;Similarity(Word,nwi)表示该观点词与贬义评价词nwi的相似度;
当Score(Word)>0该观点词的评价极性为褒义性,否则该观点词的评价极性为贬义性。
所述步骤S5还包:
S58、建立否定词词典、程度副词词典;根据表达的程度强度对程度副词词典进行分类,得到若干个副词类;对每个副词类中的副词赋予相同的程度值,所述程度值代表程度强度。
在考虑特征词-观点词对的极性强度时,需要考虑程度词和否定词的影响。例如对于评论语句“界面比较好看”,“界面非常好看”,“界面不好看”,抽取出的都为“界面-好看”这一特征词-观点词对,但前两句的评价强度是递增的,最后一句评价极性会反转。显然,为了更准确表达用户的评价倾向,必须要考虑修饰评价词的程度副词和否定副词。
在本发明的实施例一中,将程度副词词典分为了4类,赋值从0到1,分别为{0.2,0.5,0.8,1.0}。
S59、计算得到特征词-观点词对的极性强度SenScore(<feature,senWord>)=(-0.5)num*Score(senWord)*Score(degWord)其中,feature、senWord分别表示特征词-观点词对中的特征观点词,degWord表示特征词-观点词对所在的评论数据的句子中,修饰所述特征词-观点词对的程度副词,SenScore()表示极性强度,Score(senWord)表示观点词senWord的极性得分,Score(degWord)表示程度副词degWord的程度值,num表示特征词-观点词对所在的评论数据的句子中否定词的个数。
我们知道双重否定表示肯定,通过句子中否定词的个数是奇数还是偶数能决定是否发生反转。但是一般情况下并不能直接取反,例如,“不好看”并不代表“难看”,“不是不好看”也不并能等价于“好看”,因此设置否定词的反转参数为-0.5。
S6、计算特征描述集合Describing_Features与所述软件评论特征集合Evaluation_Features的相似度;根据计算所得的相似度与设定第一阈值,判断软件评论特征集合Evaluation_Features为一致性特征集合Consistent_features或非一致性特征集合Nonuniform_features;
一致性特征集合Consistent_features又称为热类,非一致性特征集合Nonuniform_features称为软件新特征或者冷类,视为用户潜在得对软件提出的多维度新需求。
所述步骤S6具体包含:
S61、令特征描述集合Describing_Features={DF1,DF2,…,DFn};其中n表示特征描述集合Describing_Features中的动词和名词总数;DFi表示一个特征词,i∈[1,n];
S62、令软件评论特征集合Evaluation_Features={EF1,EF2,…,EFm};其中m表示软件评论特征集合Evaluation_Features中包含的评论对象个数;EFj表示软件评论特征集合Evaluation_Features中的一个频繁项,j∈[1,m];
S63、根据知网中文词典Hownet,通过深度学习的方法,计算得到DFi与EFj的相似度Simlaritynm;此为现有技术;
S64、计算相似度平均值Ave=∑Simlaritynm/nm;
S65、当Ave大于预设的第一阈值,则该软件评论特征集合Evaluation_Features为一致性特征集合Consistent_features;否则为非一致性特征集合Nonuniform_features。
S7、建立多个软件应用质量评价指标,将所述非一致性特征集合Nonuniform_features根据所述软件应用质量评价指标进行分类;
所述步骤S7包含:
S71、建立t个软件应用质量评价指标C1~Ct。在本发明的实施例一中,建立五个软件应用质量评价指标C1~C5。C1代表“功能”,是软件的基础指标,包含稳定性,流畅度,启动速度下载速度,功能丰富度等具体指标。C2代表“设计”,包括界面美观性,配色一致性,逻辑清晰性等具体指标。C3代表“服务”,指用户从软件初次选择到确定下载然后软件反复体验这个周期中的质量过程满意度;C4代表“安全”,包含软件是否存在安全漏洞,类似病毒,扣费,恶意攻击广告等安全性指标。C5代表其他。
S72、令非一致性特征集合Nonuniform_features={NF1,…,NFp};其中p为非一致性特征集合Nonuniform_features所包含评论对象的个数,i∈[1,p];
S73、从NF1~NFp中任选t个软件评论特征集合,建立质心集合Original_Centroid={OC1,…,OCt};OCj∈Nonuniform_features,且对应于Cj,j∈[1,t];
S74、计算NFi与Cj的距离S(NFi,OCj),i∈[1,p],j∈[1,t];
S75、当S(NFi,OCz)=min{S(NFi,OCj)},j∈[1,t],则将NFi划分至与OCz对应的第z类输出簇;z∈[1,t];
S76、计算第一类输出簇~第t类输出簇的聚类中心,OC1′,...,OCt′;用OCj′更新OCj,j∈[1,t];
S77、重复步骤S74~S76,直到聚类中心不再变化。
S8、根据统计的评论数据的评价极性、极性强度,可视化展示软件产品的评价结果;并可视化展示所述非一致性特征集合Nonuniform_features的分类结果。
所述步骤S8包含:
S81、统计各个评价极性、各个极性强度所包含的评论数据的数量;通过表格、色块、文字的形式可视化展示统计结果;
S82、可视化的展示各个评价极性、各个极性强度所包含的评论数据的数量;
S83、可视化的展示第一类输出簇~第t类输出簇对应的评论数据的数量;
S84、可视化的展示第一类输出簇~第t类输出簇对应的评论数据的内容。
如图3所示,在本发明的实施例一中,可视化界面分为a区~d区。
其中在a区选择需要搜索的软件类型,如“影音娱乐”类软件、“输入法”类软件、“社交通讯”类软件。
在b区通过图表的形式,展示同一软件类型下对多个软件的软件功能的评价极性及极性强度。在本发明的实施例一中,将提取的特征词-观点词对根据软件功能进行分类显示。特征词-观点词的评价极性可以通过设置“软件”与“功能”所对应的矩形块的填充颜色来表示。设置填充颜色为红色或蓝色,红色表示用户评价消极,蓝色表示用户评价积极。并通过矩形块填充颜色的深浅表示用户评价极性的倾向强度。同时还可以在矩形块中显示数字代表着此评价强度的评论数量。并且,通过点击某一矩形块,在C区会生成该评价极性强度下的词云图。
在本发明的实施例一中,在d区通过雷达图可视化的展示对于非一致性特征集合Nonuniform_features(冷类)的聚类结果。蛛状图分为五个第一分区,分别对应“功能、设计、服务、安全、其他”共五个评价指标。每个第一分区又被分为5个第二分区,通过在第二分区显示不同的颜色表示不同输出簇的评价极性,蛛状图的轴坐标值和第二分区颜色的深浅均可以表示极性强度。当鼠标悬停于第二分区时,在d区会显示对应的评论数量和涉及的特征词。当点击这一块时,c区域会详细显示与特征词对应的具体的评论内容。通过雷达图清晰反映了用户对“功能、设计、服务、安全、其他”五个维度的需求倾向强度。
与现有技术相比,本发明的基于评论数据的软件特征评价方法,能够完整的反映软件产品特征全貌,为用户在下载软件时更好地甄别软件特征是否符合自己的需求提供决策支持,为开发者进行下一次软件的开发提供了针对性有效的消息。本发明具有如下优点:
(1)通过对软件评论语义模式的统计和分析,提出了一种针对软件评论的特征词和观点词抽取的方法。
(2)探索了一套基于评论数据的软件产品评价模式,从用户评论中提取软件评论特性关键词,根据该软件评论特性关键词的评价极性及极性强度,对用户评论的软件特征进行细致分析,提供了更加准确、全面的关于软件特征评价的倾向性描述。
(3)从用户评论中提取了与软件描述特征关键词不一致的软件评论特征关键词作为冷类特征集,将冷类特征集作为用户对软件提出的新需求,并基于多项软件应用质量评价指标对冷类特征集再分类。细致的挖掘出用户潜在的产品需求倾向程度,为开发者提供了未来改进软件产品的方向。
(4)进行了基于软件评论挖掘的可视化展示,为用户提供了直观的获取产品评论评价信息,降低用户的阅读成本。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (7)

1.一种基于评论数据的软件特征评价方法,其特征在于,包含步骤:
S1、利用爬虫工具从软件应用仓库采集软件产品的描述信息及若干条用户对该软件的评论数据,并预处理所述描述信息和评论数据;
S2、通过分词软件对预处理后的描述信息和评论数据进行分词,使用停用词表过滤分词结果,并为分词、过滤后得到的词语标注词性;
S3、基于Apriori算法,从对评论数据进行分词、过滤所得的词语中提取频繁项集,建立候选特征集;根据所述候选特征集生成该条评论数据的软件评论特征集合Evaluation_Features;
S4、将步骤S2中对描述信息分词、过滤得到的动词和名词作为特征词,建立特征描述集合Describing_Features;从评论数据的分词结果中,提取包含在所述特征描述集合Describing_Features中的词作为该评论数据的特征词;通过依存句法分析方法,从该条评论数据中识别与该特征词具有依存关系的观点词,建立特征词-观点词对;
S5、构建极性词典,根据所述极性词典判断提取的所述特征词-观点词对的评价极性及其极性强度;
步骤S5包含:
S51、根据知网公布的评价词汇资源,构造基础极性词典;所述基础极性词典包含若干个褒义评价词、若干个贬义评价词;
S52、根据从网络用于词典中挑选评价词语,以及从随机挑选的网络评语中提取的若干个具有观点倾向的网络词语,建立网络极性词典;所述网络极性词典包含若干个褒义评价词、若干个贬义评价词;
S53、通过人工方式,构建软件领域极性词词典,其包含在软件领域内的若干个褒义评价词和若干个贬义评价词;
S54、当特征词-观点词对中的观点词出现在所述基础极性词典、网络极性词典、软件领域极性词词典任一之中,直接得知该观点词的评价极性,所述评价极性是指褒义性或贬义性;否则进入S56;
S55、当特征词-观点词对中的观点词未出现在所述基础极性词典、网络极性词典、软件领域极性词词典任一之中,从基础极性词典、网络极性词典、软件领域极性词词典中随机选取相同数目的褒义评价词、贬义评价词,建立第一极性词典 ;进入S56;
S56、计算该观点词与所述第一极性词典中每个评价词的相似度;当第一极性词典中存在某个评价词,使该观点词与该评价词的相似度大于设定的第四阈值,以该评价词的评价极性作为该观点词的评价极性;否则,进入S57;
S57、计算该观点词的极性得分
Score(Word)=Positive(Word)-Negative(Word);
其中Word代表该观点词;
Figure FDA0003482022880000021
pwi为第一极性词典中的褒义评价词,p为第一极性词典中的褒义评价词的个数;Similarity(Word,pwi)表示该观点词与褒义评价词pwi的相似度;
Figure FDA0003482022880000022
nwi为第一极性词典中的贬义评价词;Similarity(Word,nwi)表示该观点词与贬义评价词nwi的相似度;
当Score(Word)>0该观点词的评价极性为褒义性,否则该观点词的评价极性为贬义性;
S58、建立否定词词典、程度副词词典;根据表达的程度强度对程度副词词典进行分类,得到若干个副词类;对每个副词类中的副词赋予相同的程度值,所述程度值代表程度强度;
S59、计算得到特征词-观点词对的极性强度
SenScore(<feature,senWord>)=(-0.5)num*Score(senWord)*Score(degWord)
其中,feature、senWord分别表示特征词-观点词对中的特征观点词,degWord表示特征词-观点词对所在的评论数据的句子中,修饰所述特征词-观点词对的程度副词,SenScore()表示极性强度,Score(senWord)表示观点词senWord的极性得分,Score(degWord)表示程度副词degWord的程度值,num表示特征词-观点词对所在的评论数据的句子中否定词的个数;
S6、计算特征描述集合Describing_Features与所述软件评论特征集合Evaluation_Features的相似度;根据计算所得的相似度与设定第一阈值,判断软件评论特征集合Evaluation_Features为一致性特征集合Consistent_features或非一致性特征集合Nonuniform_features;
S7、建立多个软件应用质量评价指标,将所述非一致性特征集合Nonuniform_features根据所述软件应用质量评价指标进行分类;
S8、根据统计的评论数据的评价极性、极性强度,可视化展示软件产品的评价结果;并可视化展示所述非一致性特征集合Nonuniform_features的分类结果。
2.如权利要求1所述的基于评论数据的软件特征评价方法,其特征在于,所述步骤S1具体包含:
S11、利用爬虫工具从软件应用仓库采集软件产品的描述信息及用户对该软件的评论数据;
S12、将描述信息和评论数据转换为简体字,去除描述信息和评论数据中无意义的符号,并删除长度小于三个字符的描述信息、评论数据。
3.如权利要求1所述的基于评论数据的软件特征评价方法,其特征在于,所述步骤S3包含:
S31、基于Apriori算法,从对描述信息进行分词、过滤所得的词语中提取频繁项集;根据所述频繁项集建立候选特征集;
S32、对所述候选特征集进行距离剪枝,删除候选特征集中距离值大于设定的第二阈值的频繁项集;
S33、删除候选特征集中的冗余频繁项集;
S34、对步骤S33所得候选特征集中的频繁项集,根据其所包含的词语在不同评论数据中的语序进行统频;当该频繁项集的某种语序出现的频率大于设定的第三阈值,将该种语序作为该频繁项集的合理语序;
S32、根据具有合理语序的频繁项集建立软件评论特征集合Evaluation_Features。
4.如权利要求1所述的基于评论数据的软件特征评价方法,其特征在于,步骤S4所述依存关系具体是指:
当特征词出现在定语结构中,该定语结构中的形容词与该特征词具有依存关系,为该特征词的观点词;
当特征词出现在主谓结构中并作为主语,则该主谓结构中的谓语或补语与该特征词具有依存关系,为该特征词的关键词;
当特征词出现在动宾结构中作为宾语,则该动宾结构的动词与该特征词具有依存关系,为该特征词的关键词。
5.如权利要求1所述的基于评论数据的软件特征评价方法,其特征在于,所述步骤S6包含:
S61、令特征描述集合Describing_Features={DF1,DF2,…,DFn};其中n表示特征描述集合Describing_Features中的动词和名词总数;DFi表示一个特征词,i∈[1,n];
S62、令软件评论特征集合Evaluation_Features={EF1,EF2,…,EFm};其中m表示软件评论特征集合Evaluation_Features中包含的评论对象个数;EFj表示软件评论特征集合Evaluation_Features中的一个频繁项,j∈[1,m];
S63、根据知网中文词典Hownet,通过深度学习的方法,计算得到DFi与EFj的相似度Simlaritynm
S64、计算相似度平均值Ave=∑Simlaritynm/nm;
S65、当Ave大于预设的第一阈值,则该软件评论特征集合Evaluation_Features为一致性特征集合Consistent_features;否则为非一致性特征集合Nonuniform_features。
6.如权利要求1所述的基于评论数据的软件特征评价方法,其特征在于,所述步骤S7包含:
S71、建立t个软件应用质量评价指标C1~Ct
S72、令非一致性特征集合Nonuniform_features={NF1,…,NFp};其中p为非一致性特征集合Nonuniform_features所包含评论对象的个数,i∈[1,p];
S73、从NF1~NFp中任选t个软件评论特征集合,建立质心集合Original_Centroid={OC1,…,OCt};OCj∈Nonuniform_features,且对应于Cj,j∈[1,t];
S74、计算NFi与Cj的距离S(NFi,OCj),i∈[1,p],j∈[1,t];
S75、当S(NFi,OCz)=min{S(NFi,OCj)},j∈[1,t],则将NFi划分至与OCz对应的第z类输出簇;z∈[1,t];
S76、计算第一类输出簇~第t类输出簇的聚类中心,OC1′,…,OCt′;用OCj′更新OCj,j∈[1,t];
S77、重复步骤S74~S76,直到聚类中心不再变化。
7.如权利要求6所述的基于评论数据的软件特征评价方法,其特征在于,所述步骤S8包含:
S81、统计各个评价极性、各个极性强度所包含的评论数据的数量;通过表格、色块、文字的形式可视化展示统计结果;
S82、可视化的展示各个评价极性、各个极性强度所包含的评论数据的数量;
S83、可视化的展示第一类输出簇~第t类输出簇对应的评论数据的数量;
S84、可视化的展示第一类输出簇~第t类输出簇对应的评论数据的内容。
CN201910899186.1A 2019-09-23 2019-09-23 一种基于评论数据的软件特征评价方法 Active CN110659828B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910899186.1A CN110659828B (zh) 2019-09-23 2019-09-23 一种基于评论数据的软件特征评价方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910899186.1A CN110659828B (zh) 2019-09-23 2019-09-23 一种基于评论数据的软件特征评价方法

Publications (2)

Publication Number Publication Date
CN110659828A CN110659828A (zh) 2020-01-07
CN110659828B true CN110659828B (zh) 2022-03-08

Family

ID=69038857

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910899186.1A Active CN110659828B (zh) 2019-09-23 2019-09-23 一种基于评论数据的软件特征评价方法

Country Status (1)

Country Link
CN (1) CN110659828B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112417300A (zh) * 2020-12-10 2021-02-26 平安普惠企业管理有限公司 产品漏洞方案查询方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866989A (zh) * 2012-08-30 2013-01-09 北京航空航天大学 基于词语依存关系的观点抽取方法
CN103455562A (zh) * 2013-08-13 2013-12-18 西安建筑科技大学 一种文本倾向性分析方法及基于该方法的商品评论倾向判别器
CN105279148A (zh) * 2015-10-19 2016-01-27 昆明理工大学 一种app软件用户评论一致性判断方法
CN109783807A (zh) * 2018-12-21 2019-05-21 昆明理工大学 一种针对app软件缺陷的用户评论挖掘方法
CN109885767A (zh) * 2019-02-18 2019-06-14 上海海事大学 一种基于GitHub的软件资产推荐的方法及系统
US10394689B1 (en) * 2016-06-14 2019-08-27 Open Invention Network Llc Collaborative data sharing and data modification application
CN110175325A (zh) * 2019-04-26 2019-08-27 南京邮电大学 基于词向量和句法特征的评论分析方法及可视化交互界面

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9064237B2 (en) * 2012-01-23 2015-06-23 Microsoft Technology Licensing, Llc Collaborative communication in a web application

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866989A (zh) * 2012-08-30 2013-01-09 北京航空航天大学 基于词语依存关系的观点抽取方法
CN103455562A (zh) * 2013-08-13 2013-12-18 西安建筑科技大学 一种文本倾向性分析方法及基于该方法的商品评论倾向判别器
CN105279148A (zh) * 2015-10-19 2016-01-27 昆明理工大学 一种app软件用户评论一致性判断方法
US10394689B1 (en) * 2016-06-14 2019-08-27 Open Invention Network Llc Collaborative data sharing and data modification application
CN109783807A (zh) * 2018-12-21 2019-05-21 昆明理工大学 一种针对app软件缺陷的用户评论挖掘方法
CN109885767A (zh) * 2019-02-18 2019-06-14 上海海事大学 一种基于GitHub的软件资产推荐的方法及系统
CN110175325A (zh) * 2019-04-26 2019-08-27 南京邮电大学 基于词向量和句法特征的评论分析方法及可视化交互界面

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Examining the relationship between findbugs warnings and app ratings;Hammad Khalid;《IEEE software》;20161231;全文 *
基于Git的跨版本迁移的软件评审设计与实现;关婷婷;《现代计算机(专业版)》;20180705;全文 *
基于评论挖掘的软件评价系统;卢忠浩;《计算机应用与软件》;20140715;第31卷(第7期);全文 *

Also Published As

Publication number Publication date
CN110659828A (zh) 2020-01-07

Similar Documents

Publication Publication Date Title
Kumar et al. Sentiment analysis of multimodal twitter data
US8484228B2 (en) Extraction and grouping of feature words
US9639846B2 (en) System and method for providing targeted content
AU2015204283A1 (en) Text mining system and tool
CN114417004A (zh) 一种知识图谱和事理图谱的融合方法、装置和系统
CN112989208B (zh) 一种信息推荐方法、装置、电子设备及存储介质
CN111460158B (zh) 一种基于情感分析的微博话题公众情感预测方法
CN111626050B (zh) 基于表情词典与情感常识的微博情感分析方法
CN115017303A (zh) 基于新闻文本进行企业风险评估的方法、计算设备和介质
Emmery et al. Simple queries as distant labels for predicting gender on twitter
Chen et al. Research on credit evaluation model of online store based on SnowNLP
CN110659828B (zh) 一种基于评论数据的软件特征评价方法
CN112527963B (zh) 基于词典的多标签情感分类方法及装置、设备、存储介质
CN109829033B (zh) 数据展示方法和终端设备
CN104462083A (zh) 用于内容比较的方法、装置和信息处理系统
Jayasekara et al. Opinion mining of customer reviews: feature and smiley based approach
WO2023159766A1 (zh) 餐饮数据分析方法、装置、电子设备及存储介质
CN116303951A (zh) 对话处理方法、装置、电子设备和存储介质
Lamrharia et al. Business intelligence using the fuzzy-Kano model
Zhang et al. Ideagraph plus: A topic-based algorithm for perceiving unnoticed events
Li et al. Confidence estimation and reputation analysis in aspect extraction
Chiarello et al. Design and implementation of a text mining-based tool to support scoping reviews
CN110990710B (zh) 资源推荐方法及装置
CN112685540A (zh) 搜索方法、装置、存储介质以及终端
CN113538106A (zh) 基于评论整合挖掘的商品精细化推荐方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant