CN110413792B - 一种高影响力缺陷报告识别方法 - Google Patents
一种高影响力缺陷报告识别方法 Download PDFInfo
- Publication number
- CN110413792B CN110413792B CN201910728451.XA CN201910728451A CN110413792B CN 110413792 B CN110413792 B CN 110413792B CN 201910728451 A CN201910728451 A CN 201910728451A CN 110413792 B CN110413792 B CN 110413792B
- Authority
- CN
- China
- Prior art keywords
- classification
- ova
- vector
- svm
- error
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种高影响力缺陷报告识别方法,本方法将不平衡学习技术与多类分类方法相结合,解决了错误报告组件分类问题。使用四种不平衡处理策略RUS、ROS、SMOTE和Adacost算法来处理数据并获得平衡的数据集。然后使用基于NBM,KNN和SVM分类器的OVO和OVA多类别分类方法对平衡之后的数据集进行错误报告组件分类。通过探究不平衡学习策略和分类别分类算法的不同组合,找到具有错误报告组件分类最佳性能的变体。通过使用错误组件分类来确定为错误报告分配合适的开发人员,从而更好地解决了错误报告的分类问题。该方法不仅可以减少原始训练集的单词维度,提高训练集的质量,也提高错误报告的分类性能。
Description
技术领域
本发明涉及bug报告分类技术领域,尤其涉及一种高影响力缺陷报告识别方法。
背景技术
由于软件系统的复杂程度越来越高,其逻辑关系也变得越来越复杂,很多bug不可避免的出现的越来越多。bug报告在错误存储库中堆积的越来越多,很多bug不能及时的得到解决。因此,bug修复已经刻不容缓。在软件开发周期中,修复bug的周期将近占据总时间的一半。由于bug报告数量巨大,修复bug时间紧迫,人力资源有限,因此如何有效的将bug报告分配给合适的开发人员已经成为一项巨大的挑战。
但是错误存储库中的bug报告数量很多,通过找到高影响力的bug报告,可以帮助开发人员及早的了解它们,纠正它们,并最大限度的减少bug报告对软件造成的损害。但是由于高影响力的bug报告只占少数,因此,识别出高影响力的bug报告仍然是一个艰巨的任务。
发明内容
根据现有技术存在的问题,本发明公开了一种高影响力缺陷报告识别方法,具体包括以下步骤:
S1:采用向量空间模型将缺陷报告转换成向量;
S2:采用不平衡学习策略对向量进行不平衡处理,其中不平衡学习策略方法包括基于数据层面的随机欠采样RUS、随机过采样ROS、合成少数过采样SMOTE和基于算法层面的Adacost算法,
S3:使用基于SVM、NBM、KNN分类器的多类别分类集成方法OVO和OVA方法对缺陷报告进行分类;
S4:将S2中不平衡学习策略与S3中的多类别分类集成方法相结合,分析不同的组合方式的分类结果,分类效果最好的一组即为最优组合方式,利用最优组合方式对缺陷报告进行分类。
所述将S2中不平衡学习策略方法与S3中的多类别分类方法相组合具体有如下组合方式:
将随机欠采样RUS与基于SVM(或NBM或KNN)分类器的OVA方法相结合对向量进行处理时:使用随机欠采样RUS技术删除样本中的多数类样本,再将处理之后的数据使用基于SVM(或NBM或KNN)分类器的OVA分类方法进行分类,分别对其中一个类别和剩余类别用SVM(或NBM或KNN)分类器进行分类,根据构建出的n个SVM(或NBM或KNN)分类器得到数据属于当前类别的概率,选择针对验证集中概率值最大的一个类别即为分类的结果;
按照上述方式将随机过采样ROS与基于SVM(或NBM或KNN)分类器的OVA方法相结合对向量进行处理、将合成少数过采样SMOTE与基于SVM(或NBM或KNN)分类器的OVA方法相结合对向量进行处理、将基于算法层面的Adacost算法与基于SVM(或NBM或KNN)分类器的OVA方法相结合对向量进行处理。
由于采用了上述技术方案,本发明提供的一种高影响力缺陷报告识别方法,本发明提出的方法将不平衡学习技术与多类分类方法相结合,解决了错误报告组件分类问题。使用四种不平衡处理策略RUS、ROS、SMOTE和Adacost算法来处理数据并获得平衡的数据集。然后使用基于NBM,KNN和SVM分类器的OVO和OVA多类别分类方法对平衡之后的数据集进行错误报告组件分类。通过探究不平衡学习策略和分类别分类算法的不同组合,找到具有错误报告组件分类最佳性能的变体。通过使用错误组件分类来确定为错误报告分配合适的开发人员,从而更好地解决了错误报告的分类问题。该方法不仅可以减少原始训练集的单词维度,提高训练集的质量,也提高错误报告的分类性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明方法的流程图。
具体实施方式
为使本发明的技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:
如图1所示的一种高影响力缺陷报告识别方法,具体包括如下步骤:
S1:数据预处理:大量的错误报告被错误提交者提交到错误存储库中,首先对错误报告进行预处理,利用向量空间模型将错误报告文本转换成向量。
S2:数据的不平衡处理:使用四种不平衡学习策略,分别为基于数据层面的随机欠采样RUS、随机过采样ROS、合成少数过采样SMOTE技术和基于算法层面的Adacost算法对数据进行不平衡处理,将不平衡处理后的向量定义为训练集和测试集。
其中随机欠采样RUS方法直接对训练集中的大多数样本进行欠采样,即删除多数类中的一些样本,以便正例和负例的数量接近,然后进行学习。即从多数类Smaj中随机选择一些样本组成样本集E,然后将样本集E从Smaj中移除,得到新的数据集Snew=Smaj-E。
随机过采样ROS方法直接对训练集中的少量样本进行过采样,即增加一些少数样本,使得正例和负例的数量接近,然后进行学习。即从少数类Smin中随机选择一些样本,然后通过复制所选择的样本生成样本集E,将它们添加到Smin中来扩大原始数据集从而得到新的少数类数据集Snew=Smin+E
合成少数过采样技术SMOTE的基本思想是对于少数类中的每一个样本xi,根据欧式距离公式计算它到少数类样本集Smin中的所有样本的距离,得到其k近邻。然后对于每一个随机选择出来的k近邻与xi按照如下公式构建一个新样本xnew:
Adacost算法是通过反复迭代来学习分类器,根据当前分类器的表现更新样本的权重,权重更新策略为增加代价高的误分类样本权重,降低代价高的正确分类的样本权重,即代价高样本权重增加的大降低的慢。
S3:使用基于SVM、NBM、KNN分类器的多类别分类方法OVO和OVA方法对训练集数据进行训练。由于不同分类算法对不同类别的发现能力不通,使用不平衡学习策略与基于SVM,NBM,KNN分类器的多类别分类方法相结合,通过探究不同的组合方式即变体来提升错误报告组件的分类效率,每种变体包含一种不平衡学习策略和一种特定的分类算法。
OVO方法的方式:假设有m个类别,针对两两类别建立二项分类器,得到k=m*(m-1)/2个分类器,当对新数据进行分类时,依次使用这k个分类器进行分类,每次分类相当于一次投票,分类结果是哪个就相当于对哪个类别投了一票。在使用所有k个分类器进行分后,相当于进行了k次投票,则选择得票最多的那个类别作为最终的分类结果。
OVA方法的方式:假设有n个类别,那么就建立n个二项分类器,每个分类器针对其中一个类别和剩余类别进行分类。当进行类别预测时,利用这n个二项分类器进行分类,得到数据属于当前类别的概率,选择其中概率值最大的一个类别作为最终的预测结果。
S4:将S2中不平衡学习策略方法与S3中的多类别分类方法相组合、分析不同的组合方式的分类效率并选取分类效率最高的一组作为最优分类组。用其对测试数据集中的错误报告组件进行分类,实现错误报告组件分类的最好性能。由于每个开发人员平均执行2-3个组件,因此错误报告组件的合理分配可以有效的提升错误报告的分类效率。
S5:采用最优分类组对测试集数据进行分类。
进一步的,不平衡处理技术与多类别分类方法OVA的组合方式:
随机欠采样RUS和基于SVM(或NBM,或KNN)分类器的OVA方法:首先将文本转换成向量,然后在使用RUS技术处理向量,即删除样本中的多数类样本,以便正例和负例的数量接近,将处理之后的数据使用基于SVM(或NBM,或KNN)分类器的OVA分类方法进行分类,即分别对其中一个类别和剩余类别用SVM(或NBM,或KNN)分类器进行分类,根据构建出的n个SVM(或NBM,或KNN)分类器,得到数据属于当前类别的概率,选择其中概率值最大的一个类别即为分类的结果。
随机过采样ROS和基于SVM(或NBM,或KNN)分类器的OVA方法:首先将文本转换成向量,然后在使用RUS技术处理向量,即增加一些少数样本,使得正例和负例的数量接近,将处理之后的数据使用基于SVM(或NBM,或KNN)分类器的OVA分类方法进行分类,分别对其中一个类别和剩余类别用SVM(或NBM,或KNN)分类器进行分类,根据构建出的n个SVM(或NBM,或KNN)分类器,得到数据属于当前类别的概率,选择其中概率值最大的一个类别即为分类的结果。
合成少数过采样SMOTE和基于SVM(或NBM,或KNN)分类器的OVA方法:首先将文本转换成向量,然后在使用SMOTE技术处理向量,即对于少数类中的每一个样本,通过欧式距离公式得到该样本的K近邻,再根据每一个随机取出来的k近邻样本构建新样本,将处理之后的数据使用基于SVM(或NBM,或KNN)分类器的OVA分类方法进行分类,分别对其中一个类别和剩余类别用SVM(或NBM,或KNN分类器进行分类,根据构建出的n个SVM(或NBM,或KNN)分类器,得到数据属于当前类别的概率,选择其中概率值最大的一个类别即为分类的结果)。
基于算法层面的Adacost和基于SVM(或NBM,或KNN)分类器的OVA方法:首先将文本转换成向量,然后在使用Adacost算法更新样本的权重,增加代价高的误分类样本权重,降低代价高的正确分类的样本权重,将处理之后的数据使用基于SVM(或NBM,或KNN)分类器的OVA分类方法进行分类,即分别对其中一个类别和剩余类别用SVM(或NBM,或KNN)分类器进行分类,根据构建出的n个SVM(或NBM,或KNN)分类器,得到数据属于当前类别的概率,选择其中概率值最大的一个类别即为分类的结果)。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (2)
1.一种高影响力缺陷报告识别方法,其特征在于包括以下步骤:
S1:采用向量空间模型将缺陷报告转换成向量;
S2:采用不平衡学习策略对向量进行不平衡处理,其中不平衡学习策略方法包括基于数据层面的随机欠采样RUS、随机过采样ROS、合成少数过采样SMOTE和基于算法层面的Adacost算法,
S3:使用基于SVM、NBM、KNN分类器的多类别分类集成方法OVO和OVA方法对缺陷报告进行分类;
S4:将S2中不平衡学习策略与S3中的多类别分类集成方法相结合,分析不同的组合方式的分类结果,分类效果最好的一组即为最优组合方式,利用最优组合方式对缺陷报告进行分类。
2.根据权利要求1所述的识别方法,其特征还在于:所述将S2中不平衡学习策略方法与S3中的多类别分类方法相组合具体有如下组合方式:
将随机欠采样RUS与基于SVM分类器的OVA方法相结合对向量进行处理时:使用随机欠采样RUS技术删除样本中的多数类样本,再将处理之后的数据使用基于SVM分类器的OVA分类方法进行分类,分别对其中一个类别和剩余类别用SVM分类器进行分类,根据构建出的n个SVM分类器得到数据属于当前类别的概率,选择针对验证集中概率值最大的一个类别即为分类的结果;
按照上述方式将随机过采样ROS与基于SVM分类器的OVA方法相结合对向量进行处理、将合成少数过采样SMOTE与基于SVM分类器的OVA方法相结合对向量进行处理、将基于算法层面的Adacost算法与基于SVM分类器的OVA方法相结合对向量进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910728451.XA CN110413792B (zh) | 2019-08-08 | 2019-08-08 | 一种高影响力缺陷报告识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910728451.XA CN110413792B (zh) | 2019-08-08 | 2019-08-08 | 一种高影响力缺陷报告识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110413792A CN110413792A (zh) | 2019-11-05 |
CN110413792B true CN110413792B (zh) | 2022-10-21 |
Family
ID=68366389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910728451.XA Active CN110413792B (zh) | 2019-08-08 | 2019-08-08 | 一种高影响力缺陷报告识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110413792B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112070716A (zh) * | 2020-08-03 | 2020-12-11 | 西安理工大学 | 一种基于深度学习的印刷缺陷智能识别方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491914A (zh) * | 2018-11-09 | 2019-03-19 | 大连海事大学 | 基于不平衡学习策略高影响缺陷报告预测方法 |
CN109934286A (zh) * | 2019-03-12 | 2019-06-25 | 大连海事大学 | 基于文本特征提取和不平衡处理策略的Bug报告严重程度识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10379999B2 (en) * | 2016-01-11 | 2019-08-13 | Oracle International Corporation | Duplicate bug report detection using machine learning algorithms and automated feedback incorporation |
-
2019
- 2019-08-08 CN CN201910728451.XA patent/CN110413792B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491914A (zh) * | 2018-11-09 | 2019-03-19 | 大连海事大学 | 基于不平衡学习策略高影响缺陷报告预测方法 |
CN109934286A (zh) * | 2019-03-12 | 2019-06-25 | 大连海事大学 | 基于文本特征提取和不平衡处理策略的Bug报告严重程度识别方法 |
Non-Patent Citations (2)
Title |
---|
基于代价极速学习机的软件缺陷报告分类方法;张天伦等;《软件学报》;20190515(第05期);全文 * |
基于集成混合采样的软件缺陷预测研究;戴翔等;《计算机工程与科学》;20150515(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110413792A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pahde et al. | Multimodal prototypical networks for few-shot learning | |
Zhang et al. | Apricot: A weight-adaptation approach to fixing deep learning models | |
Haktanirlar Ulutas et al. | A review of clonal selection algorithm and its applications | |
CN112199536A (zh) | 一种基于跨模态的快速多标签图像分类方法和系统 | |
CN110853703A (zh) | 一种对蛋白质二级结构进行半监督学习预测方法 | |
Das et al. | A harmony search based wrapper feature selection method for holistic bangla word recognition | |
CN115563610B (zh) | 入侵检测模型的训练方法、识别方法和装置 | |
Baldini et al. | Stochastic Information Granules Extraction for Graph Embedding and Classification. | |
CN111767216B (zh) | 一种可缓解类重叠问题的跨版本深度缺陷预测方法 | |
CN112232395B (zh) | 一种基于联合训练生成对抗网络的半监督图像分类方法 | |
CN103971136A (zh) | 一种面向大规模数据的并行结构化支持向量机分类方法 | |
CN111582315B (zh) | 样本数据处理方法、装置及电子设备 | |
CN112836735A (zh) | 一种优化的随机森林处理不平衡数据集的方法 | |
CN110245493A (zh) | 一种基于深度置信网络的Android恶意软件检测的方法 | |
Pichel et al. | Sparse matrix classification on imbalanced datasets using convolutional neural networks | |
CN110413792B (zh) | 一种高影响力缺陷报告识别方法 | |
US20220101133A1 (en) | Dynamic quantization for energy efficient deep learning | |
US20230076290A1 (en) | Rounding mechanisms for post-training quantization | |
Ying et al. | FrauDetector+ An Incremental Graph-Mining Approach for Efficient Fraudulent Phone Call Detection | |
Pal et al. | Synthetic samples generation for imbalance class distribution with LSTM recurrent neural networks | |
CN116415181A (zh) | 一种多标签数据分类方法 | |
CN113627538B (zh) | 训练非对称生成对抗网络产生图像的方法及电子装置 | |
Chaudhuri et al. | Functional Test Generation for AI Accelerators using Bayesian Optimization∗ | |
Hatamikhah et al. | Concept drift detection via improved deep belief network | |
CN114330650A (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 |