CN109614489B - 一种基于迁移学习和特征提取的Bug报告严重程度识别方法 - Google Patents

一种基于迁移学习和特征提取的Bug报告严重程度识别方法 Download PDF

Info

Publication number
CN109614489B
CN109614489B CN201811528863.0A CN201811528863A CN109614489B CN 109614489 B CN109614489 B CN 109614489B CN 201811528863 A CN201811528863 A CN 201811528863A CN 109614489 B CN109614489 B CN 109614489B
Authority
CN
China
Prior art keywords
bug report
bug
severity
word
matrix
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
CN201811528863.0A
Other languages
English (en)
Other versions
CN109614489A (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.)
Dalian Maritime University
Original Assignee
Dalian 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 Dalian Maritime University filed Critical Dalian Maritime University
Priority to CN201811528863.0A priority Critical patent/CN109614489B/zh
Publication of CN109614489A publication Critical patent/CN109614489A/zh
Application granted granted Critical
Publication of CN109614489B publication Critical patent/CN109614489B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于迁移学习和特征提取的Bug报告严重程度识别方法,通过将向量化表示的Bugzilla Bug报告信息作为知识库;并使用粗糙集特征提取方法对向量化表示的文本矩阵进行特征提取,将提取的特征作为迁移学习的最终知识库,用于识别Android Bug报告的严重程度。通过上述方法可以实现Android Bug报告管理系统中Bug报告严重程度的自动预测,节省了Bug报告严重程度预测所需的时间成本和人力成本,提升了工作效率。

Description

一种基于迁移学习和特征提取的Bug报告严重程度识别方法
技术领域
本发明涉及软件测试技术领域,尤其涉及一种基于迁移学习和特征提取的Bug报告严重程度识别方法。
背景技术
目前,在软件行业中,软件规模越来越大,逻辑结构也越来越复杂,Bug的数量不可避免的会越来越多。有效的管理Bug报告能够合理的评估软件质量、提高软件修复的效率、缩短软件维护周期。常见的Bug报告管理系统有:Bugzilla,JIRE,Android Bug报告管理系统等等。Bug报告管理系统中的Bug报告数量通常都很大,开发人员需要对Bug报告逐个进行复现和修复,这会浪费大量的人力和时间。Bug仓库中的Bug报告的严重程度等级是不同的,严重程度等级越高的Bug报告越应该被优先被解决。Bugzilla管理系统中的Bug报告有与严重程度对应的标签,管理人员可以根据该标签确定Bug报告的严重程度,决定修复的先后顺序。然而,Android bug管理系统中没有与严重程度相关标签,因此需要人工手动的标注,这无疑会浪费大量的人力和时间。
发明内容
基于现有技术存在的问题,本发明提出了使用Bugzilla管理系统中的Bug报告信息作为知识库,使用粗糙集特征提取方法对文本矩阵进行特征提取,将提取的特征作为迁移学习的最终知识库,用于识别Android Bug报告的严重程度。本发明公开了一种基于迁移学习和特征提取的Bug报告严重程度识别方法,包括以下步骤:
S1:采集Bugzilla存储库中的Bug报告,将向量化表示的Bug报告信息作为迁移学习的知识库,对Bug报告信息进行分词、去停用词、词干化处理生成文本矩阵处理,采用TF*IDF对文本矩阵进行加权处理,将文本矩阵向量化表示;
S2:将向量化表示的Bugzilla Bug报告信息作为识别Android Bug报告的严重程度的知识库;
S3:使用粗糙集特征提取方法对文本矩阵进行特征提取,将提取的特征作为迁移学习的知识库,用于识别Android Bug报告的严重程度;
S4:建立分类器并对该分类器进行训练:分别用朴素贝叶斯NB、随机树RT、决策树J48、支持向量机SVM、K近邻KNN等五种分类算法对训练集进行建模,选取实验效果正确率Accuracy最高的分类算法对训练集进行建模输出;
S5:将Bug报告输入至分类器进行严重程度的预测。
进一步的,S1中具体采用如下方式:
S11:将Bug报告的文本描述信息处理成单个的词;
S12:将文本信息经过分词处理后会得到单个的词集合,通过去停用词将对bug报告严重程度没有帮助的单个词移除;
S13:将词集合单个词的复数、动词时态去掉,只保留词根;
S14:将词集合生成文本矩阵:其中词集合中词的个数为所有Bug报告中不同单词的个数,即文本矩阵的列数;训练集中含有的Bug报告数目即文本矩阵的行数,矩阵中行列的交汇处即矩阵该行Bug报告含有该列对应单词的词频。
S15:对文本矩阵用TF*IDF进行加权处理获得稀疏矩阵;
S16:采用粗糙集约减方法对稀疏矩阵进行约简去噪处理得到小规模高质量的训练集。
进一步的,S16中粗糙集约减方法如下定义:
定义1对于一个Bugzilla存储库KV=(U,C∪D,V,f),U表示从Bugzilla存储库中所选的Bug报告,C表示所选Bug报告中所有不同词的集合,
Figure BDA0001905144320000024
是C的一个特征子集,决策属性集合D是Bug报告的严重程度标签,V的值标示关键词出现的次数,f表示信息函数,对于任意的
Figure BDA0001905144320000025
IND(B)可以用下式表示;
Figure BDA0001905144320000021
其中,a(x)表示目标x的特征a的值,当(x,y)∈IND(B)时,x和y被认为是关于B不可分割的。关于B的不可分割关系定义为[x]B
定义2对于任何
Figure BDA0001905144320000026
和属性集合
Figure BDA0001905144320000027
X可以根据知识B的下近似值和上近似值来近似求得,关于知识B的上近似值和下近似值如下所示,
Figure BDA0001905144320000022
Figure BDA0001905144320000023
定义3给定一个决策系统KV,决策属性D的C-正区域是所有来自U的集合,当
Figure BDA0001905144320000034
时,决策系统的B-正区域定义为,
Figure BDA0001905144320000031
定义4度量属性a的重要程度可以表示为概率分类的质量,如下所示,
Figure BDA0001905144320000032
定义5给定一个决策系统KV=(U,C∪D,V,f),
Figure BDA0001905144320000035
是条件属性集合的一个子集,a(
Figure BDA0001905144320000036
Figure BDA0001905144320000037
)是任意一个属性,属性a在B中的相对决策D的重要度,如下式所示:
Figure BDA0001905144320000033
由于采用了上述技术方案,本发明提供的一种基于迁移学习和特征提取的Bug报告严重程度识别方法,通过将向量化表示的Bugzilla Bug报告信息作为知识库;并使用粗糙集特征提取方法对向量化表示的文本矩阵进行特征提取,将提取的特征作为迁移学习的最终知识库,用于识别Android Bug报告的严重程度。通过上述方法可以实现Android Bug报告管理系统中Bug报告严重程度的自动预测,节省了Bug报告严重程度预测所需的时间成本和人力成本,提升了工作效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种基于迁移学习和特征提取的Bug报告严重程度识别方法结构示意图。
具体实施方式
为使本发明的技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:
如图1所示的一种基于迁移学习和特征提取的Bug报告严重程度识别方法,包括以下步骤:
S1:采集Bug报告存储库中的原始数据集并提取训练集对训练集进行优化处理:按照分词、去停用词、词干化、生成文本矩阵、TF-IDF加权、粗糙集理论约简处理的顺序对训练集进行逐步优化;所述TF-IDF是一种用于信息检索与数据挖掘的常用加权技术,TF意思是词频(Term Frequency),IDF意思是逆文本频率指数(Inverse Document Frequency);TF表示词条在文档d中出现的频率,IDF的主要思想是:如果包含词条t的文档越少,IDF越大,则说明词条具有很好的类别区分能力。某一特定词语的IDF,可以由总文件数目除以包含该词语之文件的数目,再将得到的商取对数得到;某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,可以产生出高权重的TF*IDF,因此TF*IDF倾向于过滤掉常见的词语,保留重要的词语:定义如下:
Figure BDA0001905144320000041
Figure BDA0001905144320000042
分母之所以要加1,是为了避免分母为0;
S2:将优化后的训练集作为Android Bug报告管理系统中Bug报告严重程度预测的训练集;
S3:建立分类器并对该分类器进行训练:分别用NB、RT、J48、SVM、KNN五种分类算法对训练集进行建模,选取实验效果正确率Accuracy最高的分类算法对训练集进行建模输出;所述分类器是数据挖掘中对样本进行分类的方法的统称,是数据挖掘的一种非常重要的方法;分类的概念是在已有数据的基础上学会一个分类函数或构造出一个分类模型,即我们通常所说的分类器,该函数或模型能够把数据库中的数据纪录映射到给定类别中的某一个,从而可以应用于数据预测;所述Accuracy计算公式为:
Figure BDA0001905144320000043
其中:贝叶斯分类器是各种分类器中分类错误概率最小或者在预先给定代价的情况下平均风险最小的分类器。它的设计方法是一种最基本的统计分类方法。其分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类。
随机树是由随机过程形成的树或树状,该算法既能处理分类问题,又能处理回归问题。随机树是树预测器的集合。
决策树是一种基本的分类与回归方法,决策树模式呈树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一个类别。学习时利用训练数据,根据损失函数最小化的原则建立决策树模型;预测时,对新的数据,利用决策树模型进行分类。
支持向量机(support vector machines)是一种二分类模型,它的目的是寻找一个超平面来对样本进行分割,分割的原则是间隔最大化,最终转化为一个凸二次规划问题来求解。
KNN的基本思想是:输入没有标签(标注数据的类别),即没有经过分类的新数据,首先提取新数据的特征并与测试集中的每一个数据特征进行比较;然后从测试集中提取K个最邻近(最类似)的数据特征标签,统计这K个最邻近数据中出现次数最多的分类,将其作为新的数据类别。
S4:将Bug报告输入至分类器进行严重程度的预测。
S1中具体采用如下方式:
S11:将Bug报告的文本描述信息处理成单个的词;
S12:将文本信息经过分词处理后会得到单个的词集合,通过去停用词将对bug报告严重程度没有帮助的单个词移除;
S13:将词集合单个词的复数、动词时态去掉,只保留词根;
S14:将词集合生成文本矩阵:其中词集合中词的个数为所有Bug报告中不同单词的个数,即文本矩阵的列数;训练集中含有的Bug报告数目即文本矩阵的行数,矩阵中行列的交汇处即矩阵该行Bug报告含有该列对应单词的词频。
S15:对文本矩阵进行加权处理获得稀疏矩阵;所述稀疏矩阵,若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律;
S16:采用粗糙集理论对稀疏矩阵进行约简去噪处理得到满足设定规格的训练集;用词作特征时,如果不做约简去噪处理,训练集中会包含许多对分类无用的噪音词条,很容易出现上万维、甚至几十万维的情况,这么多的维度对计算来说是个灾难;即使计算资源足够,无疑也是对资源的浪费,因为真正对分类起作用的词,可能只是所有词中的一少部分其余都为噪音。采用粗糙集理论对原数据集进行处理,找到一个约简后的特征集合。通过约简去噪处理,一些和任务无关或是冗余的特征被删除,从而提高数据处理的效率。约简后的数据集规模小质量高,能够代替原数据集进行分类,分类结果与未经约简的数据集结果相同甚至优于原数据集的分类效果;
所述S16中进一步的,S16中粗糙集理论具有如下定义:
定义1对于一个Bugzilla存储库KV=(U,C∪D,V,f),U表示从Bugzilla存储库中所选的Bug报告,C表示所选Bug报告中所有不同词的集合,
Figure BDA0001905144320000066
是C的一个特征子集,决策属性集合D是Bug报告的严重程度标签,V的值标示关键词出现的次数,f表示信息函数,对于任意的
Figure BDA0001905144320000067
IND(B)可以用下式表示;
Figure BDA0001905144320000061
其中,a(x)表示目标x的特征a的值,当(x,y)∈IND(B)时,x和y被认为是关于B不可分割的。关于B的不可分割关系定义为[x]B
定义2对于任何
Figure BDA0001905144320000068
和属性集合
Figure BDA0001905144320000069
X可以根据知识B的下近似值和上近似值来近似求得,关于知识B的上近似值和下近似值如下所示,
Figure BDA0001905144320000062
Figure BDA0001905144320000063
定义3给定一个决策系统KV,决策属性D的C-正区域是所有来自U的集合,当
Figure BDA00019051443200000610
时,决策系统的B-正区域定义为,
Figure BDA0001905144320000064
定义4度量属性a的重要程度可以表示为概率分类的质量,如下所示,
Figure BDA0001905144320000065
定义5给定一个决策系统KV=(U,C∪D,V,f),
Figure BDA00019051443200000613
是条件属性集合的一个子集,a(
Figure BDA00019051443200000611
Figure BDA00019051443200000612
)是任意一个属性,属性a在B中的相对决策D的重要度,如下式所示:
Figure BDA0001905144320000071
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (2)

1.一种基于迁移学习和特征提取的Bug报告严重程度识别方法,其特征在于:包括以下步骤:
S1:采集Bugzilla存储库中的Bug报告,将向量化表示的Bug报告信息作为迁移学习的知识库,对Bug报告信息进行分词、去停用词、词干化处理生成文本矩阵,采用TF*IDF对文本矩阵进行加权处理,将文本矩阵向量化表示;
S2:将向量化表示的Bugzilla Bug报告信息作为识别Android Bug报告的严重程度的知识库;
S3:使用粗糙集特征提取方法对文本矩阵进行特征提取,将提取的特征作为迁移学习的知识库,用于识别Android Bug报告的严重程度;
S4:建立分类器并对该分类器进行训练:分别用朴素贝叶斯NB、随机树RT、决策树J48、支持向量机SVM、K近邻KNN五种分类算法对训练集进行建模,选取实验效果正确率Accuracy最高的分类算法对训练集进行建模输出;
S5:将Android Bug报告输入至分类器进行严重程度的预测。
2.根据权利要求1所述的一种基于迁移学习和特征提取的Bug报告严重程度识别方法,其特征还在于:S1中具体采用如下方式:
S11:将Bug报告的文本描述信息处理成单个的词;
S12:将文本信息经过分词处理后会得到单个的词集合,通过去停用词将对Bug报告严重程度没有帮助的单个词移除;
S13:将词集合单个词的复数、动词时态去掉,只保留词根;
S14:将词集合生成文本矩阵:其中词集合中词的个数为所有Bug报告中不同单词的个数,即文本矩阵的列数;训练集中含有的Bug报告数目即文本矩阵的行数,矩阵中行列的交汇处即矩阵该行Bug报告含有该列对应单词的词频;
S15:对文本矩阵用TF*IDF进行加权处理获得稀疏矩阵;
S16:采用粗糙集约减方法对稀疏矩阵进行约简去噪处理得到小规模高质量的训练集。
CN201811528863.0A 2018-12-13 2018-12-13 一种基于迁移学习和特征提取的Bug报告严重程度识别方法 Active CN109614489B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811528863.0A CN109614489B (zh) 2018-12-13 2018-12-13 一种基于迁移学习和特征提取的Bug报告严重程度识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811528863.0A CN109614489B (zh) 2018-12-13 2018-12-13 一种基于迁移学习和特征提取的Bug报告严重程度识别方法

Publications (2)

Publication Number Publication Date
CN109614489A CN109614489A (zh) 2019-04-12
CN109614489B true CN109614489B (zh) 2022-11-18

Family

ID=66009144

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811528863.0A Active CN109614489B (zh) 2018-12-13 2018-12-13 一种基于迁移学习和特征提取的Bug报告严重程度识别方法

Country Status (1)

Country Link
CN (1) CN109614489B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114419341B (zh) * 2022-01-20 2024-04-26 大连海事大学 一种基于迁移学习改进的卷积神经网络图像识别方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107066389A (zh) * 2017-04-19 2017-08-18 西安交通大学 基于集成学习的软件缺陷重新打开的预测方法
CN108984613A (zh) * 2018-06-12 2018-12-11 北京航空航天大学 一种基于迁移学习的缺陷报告跨项目分类方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018077401A1 (en) * 2016-10-26 2018-05-03 Swiss Reinsurance Company Ltd. Data extraction engine for structured, semi-structured and unstructured data with automated labeling and classification of data patterns or data elements therein, and corresponding method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107066389A (zh) * 2017-04-19 2017-08-18 西安交通大学 基于集成学习的软件缺陷重新打开的预测方法
CN108984613A (zh) * 2018-06-12 2018-12-11 北京航空航天大学 一种基于迁移学习的缺陷报告跨项目分类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于分类的软件缺陷严重性预测;王婧宇等;《计算机与数字工程》;20160820(第08期);全文 *
网络知识资源表示学习模型;朱国进等;《智能计算机与应用》;20160628(第03期);全文 *

Also Published As

Publication number Publication date
CN109614489A (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
Shivaji et al. Reducing features to improve code change-based bug prediction
US9646262B2 (en) Data intelligence using machine learning
JP2020115346A (ja) Aiドリブン・トランザクション管理システム
Malik et al. Automatic training data cleaning for text classification
Fazayeli et al. Towards auto-labelling issue reports for pull-based software development using text mining approach
CN112287199A (zh) 一种基于云服务器的大数据中心处理系统
CN115879017A (zh) 一种电力敏感数据自动化分类分级方法、装置及存储介质
CN109614489B (zh) 一种基于迁移学习和特征提取的Bug报告严重程度识别方法
US20230274152A1 (en) System and method for model configuration selection
Scherger et al. A systematic overview of the prediction of business failure
Revindasari et al. Traceability between business process and software component using Probabilistic Latent Semantic Analysis
CN115098690B (zh) 一种基于聚类分析的多数据文档分类方法及系统
CN115688101A (zh) 一种基于深度学习的文件分类方法及装置
CN115758462A (zh) 信创环境下实现敏感数据识别的方法、装置、处理器及其计算机可读存储介质
US20220083933A1 (en) Machine learning model to identify and predict health and safety risks in electronic communications
CN112306731B (zh) 基于Spacy词向量的两阶段判别缺陷报告严重程度预测方法
CN114861655A (zh) 数据挖掘处理方法、系统及存储介质
Han et al. UFTR: A unified framework for ticket routing
Mittal et al. A performance comparisons of machine learning classification techniques for job titles using job descriptions
Jingliang et al. A data-driven approach based on LDA for identifying duplicate bug report
CN112800219A (zh) 客服日志反馈回流数据库的方法及系统
Mukherjee et al. Immigration document classification and automated response generation
Abubakar et al. A survey of feature selection methods for software defect prediction models
Saeed Role of Feature Selection in Cross Project Software Defect Prediction-A Review
Das et al. AnnoFin–A hybrid algorithm to annotate financial text

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Guo Shikai

Inventor after: Chen Rong

Inventor after: Wei Miaomiao

Inventor after: Li Bo

Inventor after: Tang Wenjun

Inventor after: Li Hui

Inventor before: Chen Rong

Inventor before: Wei Miaomiao

Inventor before: Li Bo

Inventor before: Tang Wenjun

Inventor before: Li Hui

Inventor before: Guo Shikai

GR01 Patent grant
GR01 Patent grant