基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法转让专利

申请号 : CN202011265113.6

文献号 : CN112306731B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈翔贾焱鑫林浩杨光葛骅田丹牛义仁陈雪娇唐泽黾

申请人 : 南通大学

摘要 :

本发明提供了基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,首先从项目所在的缺陷跟踪系统中搜集历史缺陷报告,并抽取描述信息summary属性和严重程度severity属性对应内容得到缺陷报告训练数据集,然后进行预处理及生成对应向量,最后执行两阶段判别过程构建严重程度预测模型。本发明的有益效果为:本发明在两阶段判别过程采用朴素贝叶斯算法,该算法易实现、效果好,可保证预测模型的准确率;该发明的严重程度预测模型对相同的数据进行两次运用,一方面实现对同一批数据的二次利用,有利于提升模型的表现;另一方面实现两阶段判别可在大类分类正确的情况下减轻多分类朴素贝叶斯预测模型的压力,进一步提高预测模型的准确率。

权利要求 :

1.基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,其特征在于,所述预测方法包括以下步骤:

(1)、从项目所在的缺陷跟踪系统中,搜集历史缺陷报告,针对每一份缺陷报告,抽取所述缺陷报告的描述信息summary和严重程度severity两个属性的信息,构建缺陷报告训练数据集;

(2)、对所述缺陷报告训练数据集进行预处理,得到所述缺陷报告中每个描述信息summary所对应的分词;

(3)、基于在OntoNotes 5和GloVe Common Crawl数据集上使用卷积神经网络训练生成的Spacy词向量,以所述分词为特征将缺陷报告训练数据集中的每个描述信息summary表示为对应向量;

具体为:针对单个分词,使用Spacy词向量对其进行相应分词的词向量表示,然后对每个描述信息summary包含的所有分词的对应词向量进行加权平均,得到相应的描述信息summary的对应向量;

(4)、基于所述向量,执行两阶段判别过程,构建缺陷报告严重程度预测模型;

(5)、针对输入的新的缺陷报告,执行步骤(2)、(3),得到该缺陷报告所对应的向量,然后输入步骤(4)所构建的缺陷报告严重程度预测模型,得到新缺陷报告所对应的严重程度;

所述步骤(4)中基于所述向量,执行两阶段判别过程,构建缺陷报告严重程度预测模型,具体包括如下步骤:

4‑1)第一阶段根据所述向量和所述缺陷报告训练数据集中缺陷报告对应的大类类别,采用朴素贝叶斯分类算法,构建基于二分类朴素贝叶斯的预测模型M;

4‑2)第二阶段根据所述的大类类别将缺陷报告训练数据集进一步细分为两个数据集:仅含有大类类别为1数据的训练数据集D1和仅含有大类类别为0数据的训练数据集D2,首先基于训练数据集D1,使用训练数据集D1中所包含的对应小类类别,采用朴素贝叶斯分类算法,构建基于多分类朴素贝叶斯的预测模型M1,随后基于训练数据集D2,使用训练数据集D2中所包含的对应小类类别,采用朴素贝叶斯算法,构建基于多分类朴素贝叶斯的预测模型M2;

4‑3)根据4‑1)所述的基于二分类朴素贝叶斯的预测模型M和4‑2)所述的两个基于多分类朴素贝叶斯的预测模型M1和M2进行组合,构建缺陷报告严重程度预测模型。

2.根据权利要求1所述的基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,其特征在于,所述步骤(2)具体包括如下步骤:

2‑1)删除所述缺陷报告训练数据集中严重程度severity取值为Normal或者取值为空的缺陷报告;

2‑2)根据所述缺陷报告训练数据集中的严重程度severity取值自定义其类别,首先确定其大类类别,其次确定其小类类别;

具体为:缺陷报告严重程度severity取值一般有7类,按照严重程度从高到低分别为:Block、Critical、Major、Normal、Minor、Trivial和Enhancement;由于不考虑Normal严重程度,因此对剩余的6种严重程度进行类别确定,将Blocker、Critical、Major的大类类别设置为1,小类类别依次设置为1、2和3;将Minor、Trivial、Enhancement的大类类别设置为0,小类类别依次设置为1、2和3;

2‑3)对所述缺陷报告训练数据集的描述信息summary进行文本预处理,首先将所述描述信息summary进行分词,其次借助停用词表来过滤掉停用词,停用词是指在文本中经常出现,但含有极少文本信息的高频词,最后对单词进行规范化,去除词缀,得到单词对应的分词。

3.根据权利要求1所述的基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,其特征在于,所述步骤(5)具体包括如下步骤:

5‑1)针对新输入的缺陷报告,执行步骤(2)、(3)得到该缺陷报告所对应的向量;

5‑2)首先使用基于二分类朴素贝叶斯的预测模型M预测出大类类别,如果预测得到的大类类别取值为1,则继续使用基于多分类朴素贝叶斯的预测模型M1预测出其对应的小类类别;如果预测得到的大类类别取值为0,则继续使用基于多分类朴素贝叶斯的预测模型M2预测出其对应的小类类别。

4.根据权利要求1所述的基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,其特征在于,所述步骤(3)中基于在OntoNotes 5和GloVe Common Crawl数据集上使用卷积神经网络训练生成的Spacy词向量,以所述分词为特征将缺陷报告训练数据集中的每个描述信息summary表示为对应向量,具体包括如下步骤:

3‑1) 将OntoNotes 5和GloVe Common Crawl数据集分为训练集和测试集,基于训练集,使用Mutil‑Task CNN算法训练模型,基于测试集,输出模型的预测偏差;

3‑2)若偏差超过了预期设定值,则将得到的偏差作为新的训练参数传回模型,基于训练集重新训练模型;若偏差未超过预期设定值,则模型训练效果符合预期设想,输出模型参数,得到Spacy词向量。

说明书 :

基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法

技术领域

[0001] 本发明涉及软件质量保障技术领域,尤其涉及基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法。

背景技术

[0002] 软件缺陷与软件开发如同双生子一般形影不离,会在或大或小的程度上影响软件质量,需要得到技术人员的及时修复,且软件缺陷执行修复操作贯穿了整个软件开发的生
命周期。因此,为了确保开发出来的软件的质量,如何提高软件缺陷修复效率是一个非常关
键的问题。
[0003] 目前,为了解决这个问题,即为了快速定位、修复软件开发过程中出现的缺陷,很多大型项目都使用软件缺陷报告跟踪系统来记录缺陷信息。缺陷报告跟踪系统中软件缺陷
报告的严重程度主要包括Blocker、Critical、Major、Normal、Minor、Trivial和
Enhancement 七个级别,其中Normal级别由于是默认归类缺陷标签,在研究过程中往往会
被归类为不可信缺陷,Blocker、Critical和Major级别的缺陷归类为严重缺陷,而其他级别
的缺陷归类为非严重缺陷。在进一步分类缺陷报告时,以开发人员手动定性分类为代表操
作的传统分类方式具有受个人主观因素影响大、耗时长、效率低、时间和精力成本高的缺
点,因此寻找自动化的替代方案已成为当务之急。
[0004] 近年来在软件缺陷报告严重程度预测领域,大多数研究工作者采用分类或回归的方法一次性实现对软件缺陷报告严重程度的预测,该方法只用训练集一次即可构建相应的
严重程度预测模型,存在预测模型表现不好的结果。
[0005] 如何解决上述技术问题为本发明面临的课题。

发明内容

[0006] 本发明的目的在于提供基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,本发明采用两阶段判别方法进行严重程度预测模型的构建,首先从项目所在的缺陷跟
踪系统中搜集历史缺陷报告,并抽取描述信息summary属性和严重程度severity属性对应
内容得到缺陷报告训练数据集,然后进行预处理及生成对应向量,最后执行两阶段判别过
程构建严重程度预测模型;该发明在两阶段判别过程采用朴素贝叶斯算法,该算法易实现、
效果好,可保证预测模型的准确率;该发明的严重程度预测模型对相同的数据进行两次运
用,一方面实现对同一批数据的二次利用,有利于提升模型的表现;另一方面实现两阶段判
别可在大类分类正确的情况下减轻多分类朴素贝叶斯预测模型的压力,进一步提高预测模
型的准确率。
[0007] 本发明是通过如下措施实现的:基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,其中,所述预测方法包括以下步骤:
[0008] (1)、从项目所在的缺陷跟踪系统中,搜集历史缺陷报告,针对每一份缺陷报告,抽取所述缺陷报告描述信息summary和严重程度severity两个属性的信息,构建缺陷报告训
练数据集;
[0009] (2)、对所述缺陷报告训练数据集进行预处理,得到所述缺陷报告中每个描述信息 summary所对应的分词;
[0010] (3)、基于在OntoNotes 5和GloVe Common Crawl数据集上使用卷积神经网络训练生成的Spacy词向量,以所述分词为特征将缺陷报告训练数据集中的每个描述信息summary 
表示为对应向量;
[0011] 具体为:针对单个分词,使用Spacy词向量对其进行相应分词的词向量表示,然后对每个描述信息summary包含的所有分词的对应词向量进行加权平均,得到相应的描述信
息 summary的对应向量;
[0012] (4)、基于所述向量,执行两阶段判别过程,构建缺陷报告严重程度预测模型;
[0013] (5)、针对输入的新的缺陷报告,执行步骤(2)、(3),得到该缺陷报告所对应的向量,然后输入步骤(4)所构建的缺陷报告严重程度预测模型,得到新缺陷报告所对应的严重
程度。
[0014] 作为本发明提供的基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法进一步优化方案,所述步骤(2)具体包括如下步骤:
[0015] 2‑1)删除所述缺陷报告训练数据集中严重程度severity取值为Normal或者取值为空的缺陷报告。
[0016] 2‑2)根据所述缺陷报告训练数据集中的严重程度severity取值自定义其类别,首先确定其大类类别,其次确定其小类类别;
[0017] 具体为:缺陷报告严重程度severity取值一般有7类,按照严重程度从高到低分别为: Block、Critical、Major、Normal、Minor、Trivial和Enhancement;由于不考虑Normal 
严重程度,因此对剩余的6种严重程度进行类别确定,将Blocker、Critical、Major的大类类
别设置为1,小类类别依次设置为1、2和3;将Minor、Trivial、Enhancement的大类类别设置
为0,小类类别依次设置为1、2和3;
[0018] 2‑3)对所述缺陷报告训练数据集的描述信息summary进行文本预处理,首先将所述描述信息summary进行分词,其次借助停用词表来过滤掉停用词,停用词是指在文本中经
常出现,但含有极少文本信息的高频词,最后对单词进行规范化,去除词缀,得到单词对应
的分词。
[0019] 作为本发明提供的基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法进一步优化方案,所述步骤(5)具体包括如下步骤:
[0020] 5‑1)针对新输入的缺陷报告,执行步骤(2)、(3)得到该缺陷报告所对应的向量;
[0021] 5‑2)首先使用基于二分类朴素贝叶斯算法的预测模型M预测出大类类别,如果预测得到的大类类别取值为1,则继续使用多分类预测模型M1预测出其对应的小类类别;如果
预测得到的大类类别取值为0,则继续使用多分类预测模型M2预测出其对应的小类类别。
[0022] 作为本发明提供的基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法进一步优化方案,所述步骤(3)中基于在OntoNotes 5和GloVe Common Crawl数据集上使用卷
积神经网络训练生成的Spacy词向量,以所述分词为特征将缺陷报告训练数据集中的每个
描述信息summary表示为对应向量,具体包括如下步骤:
[0023] 3‑1)将OntoNotes 5和GloVe Common Crawl数据集分为训练集和测试集,基于训练集,使用Mutil‑Task CNN算法训练模型,基于测试集,输出模型的预测偏差;
[0024] 3‑2)若偏差超过了预期设定值,则将得到的偏差作为新的训练参数传回模型,基于训练集重新训练模型;若偏差未超过预期设定值,则模型训练效果符合预期设想,输出模
型参数,得到Spacy词向量。
[0025] 作为本发明提供的基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法进一步优化方案,所述步骤(4)中基于所述向量,执行两阶段判别过程,构建缺陷报告严重程
度预测模型,具体包括如下步骤:
[0026] 4‑1)第一阶段根据所述向量和所述缺陷报告训练数据集中缺陷报告对应的大类类别,采用朴素贝叶斯分类算法,构建基于二分类朴素贝叶斯的预测模型M。
[0027] 4‑2)第二阶段根据所述的大类类别将缺陷报告训练数据集进一步细分为两个数据集:仅含有大类类别为1数据的训练数据集D1和仅含有大类类别为0数据的训练数据集
D2。首先基于训练数据集D1,使用训练数据集D1中所包含的对应小类类别,采用朴素贝叶斯
分类算法,构建基于多分类朴素贝叶斯的预测模型M1。随后基于训练数据集D2,使用训练数
据集D2中所包含的对应小类类别,采用朴素贝叶斯算法,构建基于多分类朴素贝叶斯的预
测模型M2。
[0028] 4‑3)根据4‑1)所述的基于二分类朴素贝叶斯的预测模型M和4‑2)所述的两个基于多分类朴素贝叶斯的预测模型M1和M2进行组合,构建缺陷报告严重程度预测模型。
[0029] 与现有技术相比,本发明的有益效果为:本发明首先进行数据整理与标识,剔除数据集中的噪音数据,可提升缺陷报告严重程度预测模型的表现;其次根据两阶段的思路对
数据的严重程度类别进行标注,构建两阶段严重程度预测模型,分类算法选用朴素贝叶斯
算法,该算法易实现且效果较好,该模型对相同的数据进行两次运用,一方面实现对同一批
数据的二次利用,有利于提升缺陷报告严重程度预测模型的表现;另一方面实现两阶段判
别可在大类分类正确的情况下减轻多分类朴素贝叶斯预测模型的压力,进一步提高缺陷报
告严重程度预测模型的准确率。

附图说明

[0030] 附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
[0031] 图1为本发明基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法的流程图。
[0032] 图2为本发明基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法中数据预处理阶段的流程图。
[0033] 图3为本发明基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法中卷积神经网络训练阶段的流程图。

具体实施方式

[0034] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。当然,此处所描述的具体实施例仅用以解释本发明,并不用于
限定本发明。
[0035] 实施例1
[0036] 参见图1至图3,本发明提供其技术方案为,基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法,其中,所述预测方法包括以下步骤:
[0037] (1)、从项目所在的缺陷跟踪系统中,搜集历史缺陷报告,针对每一份缺陷报告,抽取所述缺陷报告描述信息summary和严重程度severity两个属性的信息,构建缺陷报告训
练数据集;
[0038] (2)、对所述缺陷报告训练数据集进行预处理,得到所述缺陷报告中每个描述信息 summary所对应的分词;
[0039] (3)、基于在OntoNotes 5和GloVe Common Crawl数据集上使用卷积神经网络训练生成的Spacy词向量,以所述分词为特征将缺陷报告训练数据集中的每个描述信息summary 
表示为对应向量;
[0040] 具体为:针对单个分词,使用Spacy词向量对其进行相应分词的词向量表示,然后对每个描述信息summary包含的所有分词的对应词向量进行加权平均,得到相应的描述信
息 summary的对应向量;
[0041] (4)、基于所述向量,执行两阶段判别过程,构建缺陷报告严重程度预测模型;
[0042] (5)、针对输入的新的缺陷报告,执行步骤(2)、(3),得到该缺陷报告所对应的向量,然后输入步骤(4)所构建的缺陷报告严重程度预测模型,得到新缺陷报告所对应的严重
程度。
[0043] 具体地,所述步骤(2)具体包括如下步骤:
[0044] 2‑1)删除所述缺陷报告训练数据集中严重程度severity取值为Normal或者取值为空的缺陷报告。
[0045] 2‑2)根据所述缺陷报告训练数据集中的严重程度severity取值自定义其类别,首先确定其大类类别,其次确定其小类类别;
[0046] 具体为:缺陷报告严重程度severity取值一般有7类,按照严重程度从高到低分别为:Block、Critical、Major、Normal、Minor、Trivial和Enhancement;由于不考虑Normal 严
重程度,因此对剩余的6种严重程度进行类别确定,将Blocker、Critical、Major的大类类别
设置为1,小类类别依次设置为1、2和3;将Minor、Trivial、Enhancement的大类类别设置为
0,小类类别依次设置为1、2和3;
[0047] 2‑3)对所述缺陷报告训练数据集的描述信息summary进行文本预处理,首先将所述描述信息summary进行分词,其次借助停用词表来过滤掉停用词,停用词是指在文本中经
常出现,但含有极少文本信息的高频词,最后对单词进行规范化,去除词缀,得到单词对应
的分词。
[0048] 具体地,所述步骤(5)具体包括如下步骤:
[0049] 5‑1)针对新输入的缺陷报告,执行步骤(2)、(3)得到该缺陷报告所对应的向量;
[0050] 5‑2)首先使用基于二分类朴素贝叶斯算法的预测模型M预测出大类类别,如果预测得到的大类类别取值为1,则继续使用多分类预测模型M1预测出其对应的小类类别;如果
预测得到的大类类别取值为0,则继续使用多分类预测模型M2预测出其对应的小类类别。
[0051] 具体地,所述步骤(3)中基于在OntoNotes 5和GloVe Common Crawl数据集上使用卷积神经网络训练生成的Spacy词向量,以所述分词为特征将缺陷报告训练数据集中的每
个描述信息summary表示为对应向量,具体包括如下步骤:
[0052] 3‑1)将OntoNotes 5和GloVe Common Crawl数据集分为训练集和测试集,基于训练集,使用Mutil‑Task CNN算法训练模型,基于测试集,输出模型的预测偏差;
[0053] 3‑2)若偏差超过了预期设定值,则将得到的偏差作为新的训练参数传回模型,基于训练集重新训练模型;若偏差未超过预期设定值,则模型训练效果符合预期设想,输出模
型参数,得到Spacy词向量。
[0054] 具体地,所述步骤(4)中基于所述向量,执行两阶段判别过程,构建缺陷报告严重程度预测模型,具体包括如下步骤:
[0055] 4‑1)第一阶段根据所述向量和所述缺陷报告训练数据集中缺陷报告对应的大类类别,采用朴素贝叶斯分类算法,构建基于二分类朴素贝叶斯的预测模型M。
[0056] 4‑2)第二阶段根据所述的大类类别将缺陷报告训练数据集进一步细分为两个数据集:仅含有大类类别为1数据的训练数据集D1和仅含有大类类别为0数据的训练数据集
D2。首先基于训练数据集D1,使用训练数据集D1中所包含的对应小类类别,采用朴素贝叶斯
分类算法,构建基于多分类朴素贝叶斯的预测模型M1。随后基于训练数据集D2,使用训练数
据集D2中所包含的对应小类类别,采用朴素贝叶斯算法,构建基于多分类朴素贝叶斯的预
测模型M2。
[0057] 4‑3)根据4‑1)所述的基于二分类朴素贝叶斯的预测模型M和4‑2)所述的两个基于多分类朴素贝叶斯的预测模型M1和M2进行组合,构建缺陷报告严重程度预测模型。
[0058] 为了更好地实现本发明目的,本发明还提供基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法的具体实例,具体包括以下步骤:
[0059] 步骤(1)从项目eclipse的产品platform所在缺陷跟踪系统Bugzilla中,搜集历史缺陷报告,针对每一份缺陷报告,抽取所述缺陷报告描述信息summary和严重程度severity 
两个属性的信息,构建缺陷报告训练数据集,因数据较多,选择前5条进行展示说明,如表1
所示。
[0060] 表1缺陷报告训练数据集部分数据
[0061]
[0062]
[0063] 步骤(2)对所述缺陷报告训练数据集进行预处理,得到所述缺陷报告中每个描述信息 summary所对应的分词,预处理的步骤如下:
[0064] 2‑1.删除所述缺陷报告训练数据集中严重程度severity取值为Normal或者取值为空的缺陷报告。其中,删除严重程度属性为Normal的缺陷报告是因为大多数的研究者认
为 Normal是缺陷报告的默认属性标注,大部分提交者会不进行更改,由此,此类数据的质
量参差不齐。
[0065] 2‑2.根据所述缺陷报告训练数据集中的严重程度severity取值自定义其类别。首先确定其大类类别,其次确定其小类类别。具体来说,缺陷报告严重程度severity取值一般
有7类,按照严重程度从高到低分别为:Block、Critical、Major、Normal、Minor、Trivial 和
Enhancement。由于不考虑Normal严重程度,因此对剩余的6种严重程度进行类别确定,将
Blocker、Critical、Major的大类类别设置为1,小类类别依次设置为1、2和3。将Minor、 
Trivial、Enhancement的大类类别设置为0,小类类别依次设置为1、2和3。
[0066] 2‑3.对所述缺陷报告训练数据集的描述信息summary进行文本预处理,首先将所述描述信息summary进行分词,其次借助停用词表来过滤掉停用词。停用词是指在文本中经
常出现,但含有极少文本信息的高频词。最后对单词进行规范化,去除词缀,得到单词对应
的分词。
[0067] 最终得到各缺陷报告描述信息summary所各自对应的分词,如表2所示:
[0068] 表2各缺陷报告描述信息summary所各自对应的分词
[0069]
[0070] 步骤(3)基于在OntoNotes 5和GloVe Common Crawl数据集上使用卷积神经网络训练生成的Spacy词向量,以所述分词为特征将缺陷报告训练数据集中的每个描述信息
summary表示为对应向量。具体的,针对单个分词,使用Spacy词向量对其进行相应分词的词
向量表示,然后对每个描述信息summary包含的所有分词的对应词向量进行加权平均,得到
相应的描述信息summary的对应向量。生成的向量列表如表3所示,该实施例选择使用300维
的向量,表3中向量进行了省略:
[0071] 表3生成的向量
[0072] 错误报告编号 300维向量221989 [1.73303291e‑01,…,‑1.33421989e‑02]
550453 [1.73303291e‑01,…,‑1.33421989e‑02]
3328 [1.73303291e‑01,…,‑1.33421989e‑02]
150675 [1.73303291e‑01,…,‑1.33421989e‑02]
[0073] 步骤(4)基于所述向量,执行两阶段判别过程,构建缺陷报告严重程度预测模型:
[0074] 4‑1.第一阶段根据所述向量和所述缺陷报告训练数据集中缺陷报告对应的大类类别,采用朴素贝叶斯分类算法,构建基于二分类朴素贝叶斯的预测模型M。
[0075] 4‑2.第二阶段根据所述的大类类别将缺陷报告训练数据集进一步细分为两个数据集:仅含有大类类别为1的训练数据集D1和仅含有大类类别为0的训练数据集D2。首先基
于训练数据集D1,使用训练数据集D1中小类类别,采用朴素贝叶斯分类算法,构建基于多分
类朴素贝叶斯的预测模型M1。随后基于训练数据集D2,使用训练数据集D2中小类类别,采用
朴素贝叶斯算法,构建基于多分类朴素贝叶斯的预测模型M2。
[0076] 4‑3.根据4‑1所述的基于二分类朴素贝叶斯的预测模型M和4‑2所述的两个基于多分类朴素贝叶斯的预测模型M1和M2进行组合,构建缺陷报告严重程度预测模型。
[0077] 步骤(5)针对输入的新的缺陷报告,执行步骤(2)、(3),得到该缺陷报告所对应的向量,然后输入步骤(4)所构建的缺陷报告严重程度预测模型,得到新缺陷报告所对应的严
重程度。具体步骤如下:
[0078] 5‑1.针对新输入的缺陷报告,执行步骤(2)、(3)得到该缺陷报告所对应的向量。
[0079] 5‑2.首先使用基于二分类朴素贝叶斯算法的预测模型M预测出大类类别,如果预测得到的大类类别取值为1,则继续使用多分类预测模型M1预测出其对应的小类类别。如果
预测得到的大类类别取值为0,则继续使用多分类预测模型M2预测出其对应的小类类别。
[0080] 在本实施样例中,新输入的缺陷报告信息如下表4所示:
[0081] 表4新输入的缺陷报告信息
[0082]
[0083] 最终预测结果如表5所示。
[0084] 表5严重程度severity预测结果与实际预测结果对照表
[0085]
[0086] 为了评估严重程度预测模型的表现,采用预测准确率作为评估指标。
[0087] 为说明本发明的实验效果,采用K近邻分类、高斯贝叶斯、线性判别、决策树等常用的分类方法作为基准进行比较。为了使得结果尽可能客观化、标准化,直接采用了目前被广
泛使用的sklearn库中封装好的各个分类预测方法的已有函数并使用同样的输入词向量进
行训练。在相同的实验框架下,使用一致的随机种子,将缺陷报告训练数据集按照训练集:
测试集取7:3的比例,采用留出法划分为训练集、测试集,确保了条件一致。
[0088] 本发明与所用各种基准对照方法的预测准确率如表6所示。
[0089] 表6本发明方法与各基准方法预测准确率对照表
[0090]方法名称 预测准确率
基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法 72.4%
K近邻分类 71.7%
决策树 68.9%
高斯贝叶斯 59.0%
线性判别 40.7%
[0091] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。