CN109241281A - 软件失效原因生成方法、装置及设备 - Google Patents

软件失效原因生成方法、装置及设备 Download PDF

Info

Publication number
CN109241281A
CN109241281A CN201810860283.5A CN201810860283A CN109241281A CN 109241281 A CN109241281 A CN 109241281A CN 201810860283 A CN201810860283 A CN 201810860283A CN 109241281 A CN109241281 A CN 109241281A
Authority
CN
China
Prior art keywords
software failure
failure
word
text
class
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.)
Granted
Application number
CN201810860283.5A
Other languages
English (en)
Other versions
CN109241281B (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201810860283.5A priority Critical patent/CN109241281B/zh
Publication of CN109241281A publication Critical patent/CN109241281A/zh
Application granted granted Critical
Publication of CN109241281B publication Critical patent/CN109241281B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种软件失效原因生成方法、装置及设备,其中,方法包括:获取多个软件失效文本;对多个软件失效文本进行分词,以生成多个软件失效文本分别对应的多个分词集合;根据多个分词集合对多个软件失效文本进行聚类以生成多个失效类;以及提取多个失效类的类簇标签,并根据失效类的类簇标签生成失效类的失效原因。由此,实现了自动生成失效类的失效原因,提高软件失效原因生成的效率和准确性,减少人工成本。

Description

软件失效原因生成方法、装置及设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种软件失效原因生成方法、装置及设备。
背景技术
软件失效是指软件在运行过程中产生的一种不希望或者不可接受的外部行为,它是软件错误的最终体现。通过对软件失效用例进行总结,获取软件失效原因并建立软件失效模式库,供开发人员参考借鉴,可以帮助他们在后续开发过程中有意识地避开可能出现的软件缺陷,减少类似软件失效的发生。
相关技术中,软件失效原因依靠专业人员进行人工总结,效率较低,面对大规模软件失效描述,处理成本高,准确率低。
发明内容
本发明实施例旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明实施例的第一个目的在于提出一种软件失效原因生成方法,以提高软件失效原因生成的效率和准确性,减少人工成本。
本发明实施例的第二个目的在于提出一种软件失效原因生成装置。
本发明实施例的第三个目的在于提出一种计算机设备。
本发明实施例的第四个目的在于提出一种非临时性计算机可读存储介质。
为达上述目的,本发明第一方面实施例提出了一种软件失效原因生成方法,包括:
获取多个软件失效文本;
对所述多个软件失效文本进行分词,以生成所述多个软件失效文本分别对应的多个分词集合;
根据所述多个分词集合对所述多个软件失效文本进行聚类以生成多个失效类;以及
提取所述多个失效类的类簇标签,并根据所述失效类的类簇标签生成所述失效类的失效原因。
本发明实施例的软件失效原因生成方法,首先获取多个软件失效文本,并对多个软件失效文本进行分词,以生成多个软件失效文本分别对应的多个分词集合。进而,根据多个分词集合对多个软件失效文本进行聚类以生成多个失效类。进一步地,提取多个失效类的类簇标签,并根据失效类的类簇标签生成失效类的失效原因。本实施例中,根据软件失效文本的分词结果实现文本聚类,进而获取失效类的类簇标签以生成失效类的失效原因,实现了自动生成失效类的失效原因,提高软件失效原因生成的效率,减少人工成本。并且,通过分词、文本聚类的方式,获取类簇标签生成失效原因,提高了软件失效原因生成的准确性。
为达上述目的,本发明第二方面实施例提出了一种软件失效原因生成装置,包括:
获取模块,用于获取多个软件失效文本;
分词模块,用于对所述多个软件失效文本进行分词,以生成所述多个软件失效文本分别对应的多个分词集合;
聚类模块,用于根据所述多个分词集合对所述多个软件失效文本进行聚类以生成多个失效类;以及
生成模块,用于提取所述多个失效类的类簇标签,并根据所述失效类的类簇标签生成所述失效类的失效原因。
本发明实施例的软件失效原因生成装置,首先获取多个软件失效文本,并对多个软件失效文本进行分词,以生成多个软件失效文本分别对应的多个分词集合。进而,根据多个分词集合对多个软件失效文本进行聚类以生成多个失效类。进一步地,提取多个失效类的类簇标签,并根据失效类的类簇标签生成失效类的失效原因。由此,实现了自动生成失效类的失效原因,提高软件失效原因生成的效率和准确性,减少人工成本。
为达上述目的,本发明第三方面实施例提出了一种计算机设备,包括处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如第一方面实施例所述的软件失效原因生成方法。
为达上述目的,本发明第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如第一方面实施例所述的软件失效原因生成方法。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1为本发明实施例所提供的一种软件失效原因生成方法的流程示意图;
图2为本发明实施例所提供的另一种软件失效原因生成方法的流程示意图;
图3为本发明实施例所提供的另一种软件失效原因生成方法的流程示意图;
图4为本发明实施例所提供的另一种软件失效原因生成方法的流程示意图;
图5为一种软件失效模式生成的实际应用示意图;
图6为一种失效表现和失效原因的对应关系示意图;
图7为本发明实施例所提供的一种软件失效原因生成装置的结构示意图;
图8为本发明实施例所提供的另一种软件失效原因生成装置的结构示意图;
图9示出了适于用来实现本发明实施例的示例性计算机设备的框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的软件失效原因生成方法、装置及设备。
图1为本发明实施例所提供的一种软件失效原因生成方法的流程示意图,如图1所示,该软件失效原因生成方法包括:
步骤101,获取多个软件失效文本。
本实施例中,为了获取软件失效原因,需要获取软件失效文本。
在本发明的一个实施例中,可以从系统日志或应用程序日志中,获取多个软件失效文本。例如,可以获取“点击图标出现死机现象”作为软件失效文本。
步骤102,对多个软件失效文本进行分词,以生成多个软件失效文本分别对应的多个分词集合。
作为一种可能的实现方式,可以通过相关分词算法,比如基于字符串匹配的分词方法、基于统计的分词方法等,对多个软件失效文本进行分词处理。
作为另一种可能的实现方式,可以直接使用NLPIR(中科院分词系统)对多个软件失效文本进行分词处理,以生成多个软件失效文本分别对应的多个分词集合。
例如,对软件失效文本“点击图标出现死机现象”进行分词,生成对应的分词集合{点击,图标,出现,死机,现象}。再例如,对软件失效文本“输入字符出现闪退现象”进行分词,生成对应的分词集合{输入,字符,出现,闪退,现象}。
步骤103,根据多个分词集合对多个软件失效文本进行聚类以生成多个失效类。
在本发明的一个实施例中,可以采用相关文本聚类算法,根据多个分词集合对多个软件失效文本进行聚类,以生成多个失效类。其中,文本聚类算法包括但不限于划分法、层次法、密度算法等。
作为一种示例,可以根据多个分词集合获取多个软件失效文本之间的相似度,基于相似度获取多个软件失效文本之间的距离,进而采用相关文本聚类算法对多个软件失效文本进行聚类以生成多个失效类。
本实施例中,通过对多个软件失效文本进行聚类以生成多个失效类,使得同一失效类中的软件失效文本之间的距离尽可能小,不同失效类中软件失效文本之间的距离尽可能大,以达到聚类的效果。例如,分词集合A={点击,图标,出现,死机,现象},B={左键,点击,图标,出现,死机,现象},C={输入,字符,出现,闪退,现象},经过聚类后,可以生成包括A和B对应软件失效文本的第一失效类,以及包括C对应软件失效文本的第二失效类。
步骤104,提取多个失效类的类簇标签,并根据失效类的类簇标签生成失效类的失效原因。
其中,提取多个失效类的类簇标签的实现方式有多种。
在本发明的一个实施例中,可以获取关键词作为失效类的类簇标签。例如,可以根据词语出现频率、词性、词语位置等,通过相关算法对失效类中的词语进行打分,进而获取分值最高的词语作为失效类的类簇标签。例如,类簇标签可以为“点击”、“死机”等。
在本发明的一个实施例中,还可以提取软件失效文本中的代表性文本,作为失效类的类簇标签。例如,可以从软件失效文本中筛选出符合预设字数的文本,进而通过相关算法对筛选出的文本进行打分,获取分值最高的文本作为失效类的类簇标签。例如,类簇标签可以为“点击图标出现死机”等。
需要说明的是,上述提取类簇标签的实现方式仅仅是示例性的,可以通过其中任一种方式提取类簇标签,也可以结合多种方式提取类簇标签,每个失效类可以只有一个类簇标签,也可以有多个类簇标签,此处不做限制。
本实施例中,由于已经提取出可以代表失效类的类簇标签,因此,可以根据失效类的类簇标签生成失效类的失效原因。例如,失效类的类簇标签为“点击”、“死机”,因此,可以对类簇标签与预设失效原因词语库进行匹配,获取失效类的失效原因为“点击”。
本实施例中,根据软件失效文本的分词结果实现文本聚类,进而获取失效类的类簇标签以生成失效类的失效原因,实现了自动生成失效类的失效原因,提高软件失效原因生成的效率,减少人工成本。并且,通过分词、文本聚类的方式,提高了软件失效原因生成的准确性。
综上所述,本发明实施例的软件失效原因生成方法,首先获取多个软件失效文本,并对多个软件失效文本进行分词,以生成多个软件失效文本分别对应的多个分词集合。进而,根据多个分词集合对多个软件失效文本进行聚类以生成多个失效类。进一步地,提取多个失效类的类簇标签,并根据失效类的类簇标签生成失效类的失效原因。由此,实现了自动生成失效类的失效原因,提高软件失效原因生成的效率和准确性,减少人工成本。
为了更加清楚的解释本发明,下面对软件失效文本聚类进行说明。
图2为本发明实施例所提供的另一种软件失效原因生成方法,如图2所示,在生成多个分词集合之后,该方法包括:
步骤201,对多个分词集合进行停用词过滤。
在本发明的一个实施例中,可以预先设置数据库,并将停用词信息存储在数据库中,进而,将分词集合中的词语与数据库中的停用词信息进行匹配,将匹配成功的词语从分词集合中删除,以实现停用词过滤。
实际应用中,研究人员在进行研究的过程中,常常需要根据研究领域文本的特点,构建一份专用的停用词表。其中,停用词表可以根据实际需求自行设置。例如可以直接采用哈工大公开发表的停用词表,在其基础上进行改造,以生成一份适用于测试领域的停用词表,利用该停用词表对分词集合进行停用词过滤。
步骤202,分别根据多个分词集合计算多个软件失效文本之间的相似度值。
在本发明的一个实施例中,可以采用Jaccard系数计算多个软件失效文本之间的相似度值。
本实施例中,计算Jaccard系数的步骤如图3所示。
步骤301,对第i个软件失效文本和第j个软件失效文本中每个分词集合中的词语进行同义词转换。
本实施例中,在计算Jaccard系数时,可以先对分词集合中的词语进行同义词转换。
作为一种可能的实现方式,可以使用知网同义词词林计算分词集合中词语的相似度,当相似度大于预设阈值时,对词语进行同义词转换。例如,死机和宕机的词语相似度为0.89,可以进行同义词转换。
作为另一种可能的实现方式,可以预先设置同义词转换表,并将词语之间的对应关系存储在同义词转换表中,进而将分词集合中的词语与同义词转换表进行匹配,将匹配成功的词语进行同义词转换。例如,将“宕机”“死机”进行同义词转换后均变为“死机”。
可以理解,Jaccard系数完全依赖于词语的字面意思,并没有考虑到词语的语义信息。例如,宕机和死机,进入和载入,计算Jaccard系数时认为它们是不同的,而在一定条件下,根据语义信息可以认为它们是相等的。因此,通过先对分词集合中的词语进行同义词转换,可以提高软件失效文本相似度值的准确性,从而使得文本聚类结果更加准确。
步骤302,计算第i个软件失效文本和第j个软件失效文本中每个分词集合中词语的相似度并存放在二维数组之中,其中,第i个软件失效文本和第j个软件失效文本均属于多个软件失效文本。
步骤303,对二维数组中各个词语的相似度值进行排序,并依次从二维数组中将相似度值最大的词语删掉,直至二维数组中词语的相似度最大值小于预设阈值,或二维数组中的一个句子列表为空。
步骤304,将从二维数组中删掉的词语的数量作为分子计算Jaccard系数。
作为一种示例,分词集合{左键,点击,死机}{点击,死机}。二维数组存有6个词语相似度值,对应“左键-点击”“左键-死机”“点击-点击”“点击-死机”“死机-点击”“死机-死机”,进而对各个词语的相似度值进行排序,获知“点击-点击”“死机-死机”的相似度值最大且大于等于预设阈值,则删除“点击”和“死机”,此时二维数组中的一个句子列表为空,以二维数组中删掉的词语数量2作为分子,总词语数量3作为分母,计算Jaccard系数为S=2/3=66.7%。
作为另一种示例,分词集合{点击,图标,出现,死机,现象}{左键,点击,图标,出现,闪退,现象}。二维数组中存有30个词语相似度值,进而对各个词语的相似度值进行排序,删除“点击”“图标”“出现”“现象”,此时二维数组中词语的相似度最大值小于预设阈值,以二维数组中删掉的词语数量4作为分子,总词语数量7作为分母,计算Jaccard系数为S=4/7=57.1%。
作为另一种示例,分词集合a为{点击,图标,出现,死机,现象},分词集合b为{左键,点击,图标,出现,宕机,现象},其中死机和宕机可以进行同义词转换,转换后的分词集合b为{左键,点击,图标,出现,死机,现象}。则Jaccard系数为S=5/6=83.3%。
本实施例中,可以根据Jaccard算法分别根据多个分词集合计算多个软件失效文本之间的相似度值。例如,可以计算获取分词集合之间的Jaccard系数,并根据Jaccard系数计算对应的软件失效文本之间的相似度值。
步骤203,根据多个软件失效文本之间的相似度值对多个软件失效文本进行聚类。
作为一种示例,以K-means算法为例,软件失效文本个数为n,需要生成的失效类的个数为K。先从n个软件失效文本中随机选择K个,作为K个失效类的初始类簇中心。之后对于每一个软件失效文本,根据上述步骤中获取的多个软件失效文本之间的相似度值,获取该软件失效文本和每一个类簇中心的相似度值,根据相似度值获取该软件失效文本和每一个类簇中心的距离。进而,将该软件失效文本划分到距离最小的失效类中,重新计算该失效类的类簇中心,依次处理完所有的软件失效文本,并得到划分好的K个失效类。最终使得同一个失效类中的成员之间的距离尽可能小,不同失效类中成员之间的距离尽可能大,从而达到聚类的效果,由此,实现了对多个软件失效文本进行聚类以生成多个失效类。
本发明实施例的软件失效原因生成方法,通过对停用词进行过滤,使得分词结果更加准确,提高了软件失效原因生成的准确性。通过引入同义词转换对Jaccard系数进行改进,并使用改进后的Jaccard系数计算文本相似度,进而实现软件失效文本的聚类,提高了聚类的准确性,进一步提高了软件失效原因生成的准确性。
为了更加清楚的解释本发明,下面对获取类簇标签进行详细说明。
图4为本发明实施例所提供的另一种软件失效原因生成方法,如图4所示,该方法包括:
步骤401,获取失效类的对应的分词集合。
作为一种可能的实现方式,在对多个软件失效文本进行分词以生成多个分词集合时,可以存储软件失效文本与分词集合之间的对应关系,进而通过查询失效类中的软件失效文本与分词集合的对应关系,获取失效类对应的分词集合。
步骤402,根据分词集合中每个词语的出现频率、词性和词语位置对每个词语进行打分,以生成每个词语的分值。
在本发明的一个实施例中,可以获取每个词语的出现频率,比如根据出现词语A的分词集合的个数获取词语A的出现频率。进而,根据分词集合中每个词语的出现频率对每个词语进行打分,以生成每个词语的分值。例如,出现频率越高的词语分值越高。
在本发明的一个实施例中,可以获取每个词语的词性,并根据分词集合中每个词语的词性对每个词语进行打分,以生成每个词语的分值。例如,名词加动词的组合,可以很好表达文本的主题,因此,对于名词和动词生成的分值较高。
在本发明的一个实施例中,还可以获取每个词语的词语位置,并根据分词集合中每个词语的词语位置进行打分,以生成每个词语的分值。例如,本发明实施例提供的是软件失效原因生成方法,而软件失效原因的描述通常位于文本的前半部分,因此,对于位于前半部分的词语生成的分值较高。
需要说明的是,上述对分词集合中每个词语进行打分的实现方式仅仅是示例性的,可以通过其中任一种方式进行打分,也可以结合多种方式进行打分,此处不做限制。
步骤403,根据每个词语的分值对分词集合中的词语进行排序,并根据排序结果生成失效类的类簇标签。
可选地,可以根据步骤402中生成的每个词语的分值由高到低进行排序,进而选取排序靠前的词语作为失效类的类簇标签。例如,类簇标签可以为“点击”、“死机”等。其中,生成失效类的类簇标签的词语数量可以根据需要进行选取,此处不作限制。由此,实现了根据关键词生成失效类的类簇标签。
基于上述实施例,进一步地,根据本发明实施例的软件失效原因生成方法,还可以构建测试领域关键词字典,并获取软件失效原因和软件失效表现,以生成软件失效模式,如图5所示,结合实际应用场景说明如下:
本实施例中,可以先获取目标软件的软件异常类型。
例如,可以结合目标软件的特性、以往的失效模式、该类软件失效发生的机理,获取软件异常类型。比如,软件异常类型可以采用IEEE(Institute of Electrical andElectronics Engineers,电气和电子工程师协会)软件异常分类的八种软件异常类型,分别是:操作系统失败、程序挂起、程序故障、输出异常、未达到性能要求、产品失效、系统错误和其他。
进而,针对每一种软件异常类型,构建关键词字典。
可以理解,由于不同失效原因可能导致相同的失效表现。例如,输入错误,可能导致程序闪退,而程序故障,也有可能导致闪退。因此,仅靠“闪退”一词,无法确定属于哪一类异常的字典。例如,在输入错误一类中,使用“输入”+“闪退”这两个关键词组合来表示这类情况,在程序故障一类中,使用“故障”+“闪退”的组合来表示这类情况。由此,通过收集目标软件的历史失效案例,实现关键词字典的构建以及软件缺陷的初步分类。
进一步地,根据关键词出现频率、词性以及关键词出现的位置,对关键词字典中的关键词进行打分,以生成每一个关键词的分值。其中,可以根据目标软件的特点,对关键词出现的位置进行系数的设定,比如,文本末尾设置系数较高,其次是文本中部。
进一步地,根据本发明实施例的软件失效原因生成方法,生成失效类的失效原因,需要说明的是,前述实施例的解释说明同样适用于本实施例,此处不不再赘述。
作为一种示例,还可以提取软件失效文本中的代表性文本,作为失效类的类簇标签。例如,根据关键词字典对软件失效文本对应的分词集合进行匹配,对于匹配成功的关键词,结合前述实施例中生成的分词集合中每个词语的分值,根据关键词的分值进行额外加分;进而根据分词集合中所有词语的算术平均分获取软件失效文本的分值,选取得分最高且文本长度不小于15字的前五个软件失效文本作为类簇标签。可以理解,当软件失效文本为短文本时,仅仅采取关键词作为代表,无法很好的表现出失效类的特点,本示例中还可以结合关键词和代表性文本作为失效类的类簇标签,提高了软件失效原因获取的准确性。
进一步地,对关键词字典中语义相近的关键词组合进行合并,根据关键词字典获取失效表现与失效案例的对应关系;根据失效类的失效原因获取软件失效原因与失效案例的对应关系,进一步生成软件失效模型。
举例而言,如图6所示,对某一类软件异常,获取软件失效表现个数为M,软件失效原因个数为N,则理论上可以生成的软件失效模式个数最大为M*N。M个软件失效表现表示为{M1,M2……Mm},N个软件失效原因表示为{N1,N2,….Nn},根据得到的对应关系,对任意一个失效案例f,当它同时出现在Mi和Nj的对应项中时(0<i<m,0<j<n),可以得到一个软件失效模式Mi-Nj,从而结合关键词字典和类簇标签,可以生成软件失效模式。
为了实现上述实施例,本发明还提出一种软件失效原因生成装置。图7为本发明实施例所提供的一种软件失效原因生成装置的结构示意图,如图7所示,该装置包括:获取模块100,分词模块200,聚类模块300,生成模块400。
其中,获取模块100,用于获取多个软件失效文本。
分词模块200,用于对多个软件失效文本进行分词,以生成多个软件失效文本分别对应的多个分词集合。
聚类模块300,用于根据多个分词集合对多个软件失效文本进行聚类以生成多个失效类。
生成模块400,用于提取多个失效类的类簇标签,并根据失效类的类簇标签生成失效类的失效原因。
在图7的基础上,图8所示的软件失效原因生成装置还包括:过滤模块500。
其中,过滤模块500,用于对多个分词集合进行停用词过滤。
进一步地,聚类模块300还包括:计算单元310,用于分别根据多个分词集合计算多个软件失效文本之间的相似度值;
处理单元320,用于根据多个软件失效文本之间的相似度值对多个软件失效文本进行聚类。
进一步地,计算单元310具体用于:计算Jaccard系数;根据Jaccard算法分别根据多个分词集合计算多个软件失效文本之间的相似度值。
进一步地,计算单元310具体用于:
计算第i个软件失效文本和第j个软件失效文本中每个分词集合中词语的相似度并存放在二维数组之中,其中,第i个软件失效文本和第j个软件失效文本均属于多个软件失效文本;
对二维数组中各个词语的相似度值进行排序,并依次从二维数组中将相似度值最大的词语删掉,直至二维数组中词语的相似度最大值小于预设阈值,或二维数组中的一个句子列表为空;
将从二维数组中删掉的词语的数量作为分子计算Jaccard系数。
进一步地,计算单元310还用于:对第i个软件失效文本和第j个软件失效文本中每个分词集合中的词语进行同义词转换。
进一步地,生成模块400具体用于:
获取失效类的对应的分词集合;
根据分词集合中每个词语的出现频率、词性和词语位置对每个词语进行打分,以生成每个词语的分值;
根据每个词语的分值对分词集合中的词语进行排序,并根据排序结果生成失效类的类簇标签。
需要说明的是,前述实施例对软件失效原因生成方法的解释说明同样适用于本实施例的软件失效原因生成装置,此处不再赘述。
本发明实施例的软件失效原因生成装置,首先获取多个软件失效文本,并对多个软件失效文本进行分词,以生成多个软件失效文本分别对应的多个分词集合。进而,根据多个分词集合对多个软件失效文本进行聚类以生成多个失效类。进一步地,提取多个失效类的类簇标签,并根据失效类的类簇标签生成失效类的失效原因。由此,实现了自动生成失效类的失效原因,提高软件失效原因生成的效率和准确性,减少人工成本。
为了实现上述实施例,本发明还提出一种计算机设备,包括处理器和存储器;其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如前述任一实施例所述的软件失效原因生成方法。
为了实现上述实施例,本发明还提出一种计算机程序产品,当计算机程序产品中的指令被处理器执行时实现如前述任一实施例所述的软件失效原因生成方法。
为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前述任一实施例所述的软件失效原因生成方法。
图9示出了适于用来实现本发明实施例的示例性计算机设备的框图。图9显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图9所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local AreaNetwork;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (16)

1.一种软件失效原因生成方法,其特征在于,包括:
获取多个软件失效文本;
对所述多个软件失效文本进行分词,以生成所述多个软件失效文本分别对应的多个分词集合;
根据所述多个分词集合对所述多个软件失效文本进行聚类以生成多个失效类;以及
提取所述多个失效类的类簇标签,并根据所述失效类的类簇标签生成所述失效类的失效原因。
2.如权利要求1所述的软件失效原因生成方法,其特征在于,在所述根据所述多个软件失效文本的分词集合对所述多个软件失效文本进行聚类之前,还包括:
对所述多个分词集合进行停用词过滤。
3.如权利要求1所述的软件失效原因生成方法,其特征在于,所述根据所述多个分词集合对所述多个软件失效文本进行聚类以生成多个失效类,包括:
分别根据所述多个分词集合计算所述多个软件失效文本之间的相似度值;
根据所述多个软件失效文本之间的相似度值对所述多个软件失效文本进行聚类。
4.如权利要求3所述的软件失效原因生成方法,其特征在于,所述分别根据所述多个分词集合计算所述多个软件失效文本之间的相似度值,包括:
计算Jaccard系数;
根据所述Jaccard算法分别根据所述多个分词集合计算所述多个软件失效文本之间的相似度值。
5.如权利要求4所述的软件失效原因生成方法,其特征在于,所述计算Jaccard系数,包括:
计算第i个软件失效文本和第j个软件失效文本中每个分词集合中词语的相似度并存放在二维数组之中,其中,所述第i个软件失效文本和第j个软件失效文本均属于所述多个软件失效文本;
对所述二维数组中各个词语的相似度值进行排序,并依次从所述二维数组中将相似度值最大的词语删掉,直至所述二维数组中词语的相似度最大值小于预设阈值,或所述二维数组中的一个句子列表为空;
将从所述二维数组中删掉的词语的数量作为分子计算所述Jaccard系数。
6.如权利要求5所述的软件失效原因生成方法,其特征在于,在所述计算第i个软件失效文本和第j个软件失效文本中每个分词集合中词语的相似度之前,还包括:
对所述第i个软件失效文本和第j个软件失效文本中每个分词集合中的词语进行同义词转换。
7.如权利要求1所述的软件失效原因生成方法,其特征在于,所述提取所述多个失效类的类簇标签,包括:
获取所述失效类的对应的分词集合;
根据所述分词集合中每个词语的出现频率、词性和词语位置对所述每个词语进行打分,以生成每个词语的分值;
根据所述每个词语的分值对所述分词集合中的词语进行排序,并根据排序结果生成所述失效类的类簇标签。
8.一种软件失效原因生成装置,其特征在于,包括:
获取模块,用于获取多个软件失效文本;
分词模块,用于对所述多个软件失效文本进行分词,以生成所述多个软件失效文本分别对应的多个分词集合;
聚类模块,用于根据所述多个分词集合对所述多个软件失效文本进行聚类以生成多个失效类;以及
生成模块,用于提取所述多个失效类的类簇标签,并根据所述失效类的类簇标签生成所述失效类的失效原因。
9.如权利要求8所述的软件失效原因生成装置,其特征在于,还包括:
过滤模块,用于对所述多个分词集合进行停用词过滤。
10.如权利要求8所述的软件失效原因生成装置,其特征在于,所述聚类模块包括:
计算单元,用于分别根据所述多个分词集合计算所述多个软件失效文本之间的相似度值;
处理单元,用于根据所述多个软件失效文本之间的相似度值对所述多个软件失效文本进行聚类。
11.如权利要求10所述的软件失效原因生成装置,其特征在于,所述计算单元具体用于:
计算Jaccard系数;
根据所述Jaccard算法分别根据所述多个分词集合计算所述多个软件失效文本之间的相似度值。
12.如权利要求11所述的软件失效原因生成装置,其特征在于,所述计算单元具体用于:
计算第i个软件失效文本和第j个软件失效文本中每个分词集合中词语的相似度并存放在二维数组之中,其中,所述第i个软件失效文本和第j个软件失效文本均属于所述多个软件失效文本;
对所述二维数组中各个词语的相似度值进行排序,并依次从所述二维数组中将相似度值最大的词语删掉,直至所述二维数组中词语的相似度最大值小于预设阈值,或所述二维数组中的一个句子列表为空;
将从所述二维数组中删掉的词语的数量作为分子计算所述Jaccard系数。
13.如权利要求12所述的软件失效原因生成装置,其特征在于,所述计算单元还用于:
对所述第i个软件失效文本和第j个软件失效文本中每个分词集合中的词语进行同义词转换。
14.如权利要求8所述的软件失效原因生成装置,其特征在于,所述生成模块具体用于:
获取所述失效类的对应的分词集合;
根据所述分词集合中每个词语的出现频率、词性和词语位置对所述每个词语进行打分,以生成每个词语的分值;
根据所述每个词语的分值对所述分词集合中的词语进行排序,并根据排序结果生成所述失效类的类簇标签。
15.一种计算机设备,其特征在于,包括处理器和存储器;
其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如权利要求1-7中任一项所述的软件失效原因生成方法。
16.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的软件失效原因生成方法。
CN201810860283.5A 2018-08-01 2018-08-01 软件失效原因生成方法、装置及设备 Active CN109241281B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810860283.5A CN109241281B (zh) 2018-08-01 2018-08-01 软件失效原因生成方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810860283.5A CN109241281B (zh) 2018-08-01 2018-08-01 软件失效原因生成方法、装置及设备

Publications (2)

Publication Number Publication Date
CN109241281A true CN109241281A (zh) 2019-01-18
CN109241281B CN109241281B (zh) 2022-09-23

Family

ID=65073334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810860283.5A Active CN109241281B (zh) 2018-08-01 2018-08-01 软件失效原因生成方法、装置及设备

Country Status (1)

Country Link
CN (1) CN109241281B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113420155A (zh) * 2021-08-25 2021-09-21 深圳市信润富联数字科技有限公司 轮毂缺陷成因预测方法、电子装置、装置及可读存储介质
CN113434431A (zh) * 2021-07-13 2021-09-24 大商所飞泰测试技术有限公司 一种基于fmea的证券期货行业软件可靠性测试设计方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102760142A (zh) * 2011-04-29 2012-10-31 北京百度网讯科技有限公司 一种针对搜索请求抽取搜索结果主题标签的方法和装置
CN105159827A (zh) * 2015-08-21 2015-12-16 北京航空航天大学 一种面向gui软件的可靠性加速测试方法
CN107436922A (zh) * 2017-07-05 2017-12-05 北京百度网讯科技有限公司 文本标签生成方法和装置
CN108009228A (zh) * 2017-11-27 2018-05-08 咪咕互动娱乐有限公司 一种内容标签的设置方法、装置及存储介质
US20180137281A1 (en) * 2015-07-13 2018-05-17 Nippon Telegraph And Telephone Corporation Software analysis system, software analysis method, and software analysis program
CN108255728A (zh) * 2018-01-18 2018-07-06 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 软件的失效模式的识别方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102760142A (zh) * 2011-04-29 2012-10-31 北京百度网讯科技有限公司 一种针对搜索请求抽取搜索结果主题标签的方法和装置
US20180137281A1 (en) * 2015-07-13 2018-05-17 Nippon Telegraph And Telephone Corporation Software analysis system, software analysis method, and software analysis program
CN105159827A (zh) * 2015-08-21 2015-12-16 北京航空航天大学 一种面向gui软件的可靠性加速测试方法
CN107436922A (zh) * 2017-07-05 2017-12-05 北京百度网讯科技有限公司 文本标签生成方法和装置
CN108009228A (zh) * 2017-11-27 2018-05-08 咪咕互动娱乐有限公司 一种内容标签的设置方法、装置及存储介质
CN108255728A (zh) * 2018-01-18 2018-07-06 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 软件的失效模式的识别方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434431A (zh) * 2021-07-13 2021-09-24 大商所飞泰测试技术有限公司 一种基于fmea的证券期货行业软件可靠性测试设计方法
CN113434431B (zh) * 2021-07-13 2022-10-21 大商所飞泰测试技术有限公司 一种基于fmea的证券期货行业软件可靠性测试设计方法
CN113420155A (zh) * 2021-08-25 2021-09-21 深圳市信润富联数字科技有限公司 轮毂缺陷成因预测方法、电子装置、装置及可读存储介质

Also Published As

Publication number Publication date
CN109241281B (zh) 2022-09-23

Similar Documents

Publication Publication Date Title
Chen et al. Generating hierarchical explanations on text classification via feature interaction detection
CN109783795B (zh) 一种摘要获取的方法、装置、设备及计算机可读存储介质
Cheng et al. Risk prediction with electronic health records: A deep learning approach
CN108427720B (zh) 系统日志分类方法
JP5448105B2 (ja) 検索キーワードから文書データを検索する方法、並びにそのコンピュータ・システム及びコンピュータ・プログラム
US10157178B2 (en) Identifying categories within textual data
US10558756B2 (en) Unsupervised information extraction dictionary creation
CN106021572B (zh) 二元特征词典的构建方法和装置
US8606779B2 (en) Search method, similarity calculation method, similarity calculation, same document matching system, and program thereof
Alami et al. Cybercrime profiling: Text mining techniques to detect and predict criminal activities in microblog posts
CN106557777B (zh) 一种基于SimHash改进的Kmeans文档聚类方法
WO2009154570A1 (en) System and method for aligning and indexing multilingual documents
KR102046692B1 (ko) 다언어 특질 투영된 개체 공간 기반 개체 요약본 생성 방법 및 시스템
CN115380260A (zh) 用于网络游戏的用户输入文本的语言检测
CN109815481B (zh) 对文本进行事件抽取的方法、装置、设备和计算机存储介质
US10558747B2 (en) Unsupervised information extraction dictionary creation
Garrido et al. Temporally anchored relation extraction
CN110210041A (zh) 互译句对齐方法、装置及设备
CN109063184A (zh) 多语言新闻文本聚类方法、存储介质及终端设备
CN109241281A (zh) 软件失效原因生成方法、装置及设备
CN107180087A (zh) 一种搜索方法及装置
CN107506345A (zh) 语言模型的构建方法和装置
CN112052397A (zh) 用户特征生成方法、装置、电子设备及存储介质
CN110263345B (zh) 关键词提取方法、装置及存储介质
CN112685374A (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