[发明专利]面向软件缺陷数据的特征选择及分类方法在审
| 申请号: | 201511003241.2 | 申请日: | 2015-12-28 |
| 公开(公告)号: | CN105389598A | 公开(公告)日: | 2016-03-09 |
| 发明(设计)人: | 李克文;邹晶杰 | 申请(专利权)人: | 中国石油大学(华东) |
| 主分类号: | G06K9/62 | 分类号: | G06K9/62 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 266580 山东省青*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 面向 软件 缺陷 数据 特征 选择 分类 方法 | ||
技术领域
本发明属于软件工程应用领域,具体涉及一种面向软件缺陷数据的特征选择及分类方法。
背景技术
目前,软件系统规模日益增大并且其逻辑复杂性也日益增强,伴随着软件中存在缺陷的模块增加,这势必威胁软件的可靠性,影响软件质量,造成不可估量的损失。软件缺陷预测技术作为指导和评估软件测试工作的一种重要的途径,可以准确地预测软件缺陷的分布情况,这对于提高软件质量有着重要的现实意义。针对一个软件系统,合理地预测缺陷可以统计尚未发现但仍存在的缺陷数目及缺陷分布。软件缺陷预测的关键是发现有缺陷的模块,这本质上是一个二分类问题,即将软件模块分为“有缺陷”和“无缺陷”两类。分类的前提是进行特征选择,根据选择出的最优特征子集进行分类。但在实际操作中,软件缺陷预测过程存在以下两个难点:
(1)软件特征存在大量冗余特征
2004年,美国宇航局公开了软件数据集(NASAMDP),他们从源代码中提取的各种软件特征,主要包括三大类--LOC,McCabe和Halstead。在每一类软件特征中,除了基本特征是从源代码中直接抽取,其他的特征都是由这些基本特征值间接计算获得。且有实验证明,只需要三个重要的软件特征就可以预测软件模块是否含有缺陷。可见,每一类软件特征中,存在着较多的冗余特征。大量的冗余或不相关特征参与运算,势必会降低运算速度和效率。因此,需要对软件特征进行降维处理,根据软件特征的类别,在每一类中选择出对软件缺陷预测影响力大的特征即可。
(2)软件模块数据存在严重的不平衡性
在实际的软件模块中,“有缺陷”的模块(少数类)数量要远远少于“无缺陷”(多数类)的模块,因此,软件缺陷预测也是不平衡数据的分类问题,这也是数据挖掘近年来的研究热点。在预测过程中,目标是检测出“有缺陷”的模块进行修复。但软件数据集中存在大量的多数类即无缺陷模块,它们在运算中耗费大量的时间和资源。因此,尽快准确地检测出“无缺陷”的多数类并将其移除数据集从而降低后续的运算量,这对于提高整个分类过程的效率意义重大。
针对以上两个问题,研究出一套完整的符合软件数据特性的特征选择及分类方法,这对于提高软件缺陷预测效果、降低运算时间,意义重大。
发明内容
本发明的目的是解决面向软件缺陷数据的特征选择及分类方法所存在的效率低、耗时久的问题,提供一种面向软件缺陷数据的特征选择及分类方法,以减少运算时间,提高运算效率。
为实现上述目的,本发明技术方案主要包括以下四个步骤:
A.从软件数据集中获取数据,对数据进行预处理
(1)数据包括软件特征集、软件模块,将软件模块数据分为训练集和测试集以备训练和测试。本发明采用十次交叉验证,将数据集分成十份,其中九份做训练,一份做准确度测试。并将数据做标签处理。
(2)根据已有知识将特征集分类,得到三个特征集,分别是LOC类,McCabe类和Halstead类。
B.根据互信息理论获得最优软件特征集
(1)根据互信息理论计算出三个特征集中的每个特征fi与类y1和y2的相关性,根据相关性大小按降序排列,在三个特征集中只取相关性排名前50%的特征,得到三个筛减后的特征子集。
(2)分别计算三个筛减后的特征子集中各个特征间的相关性,去除与排名前30%的特征相关性大的特征,保证最终的最优特征子集为S,大小为t且S={L,M,H}。
C.对选择出的软件特征按分类效果进行排序
(1)将得到的最优特征,依次输入SVM并对其进行训练。
(2)将训练好的分类模型作用于测试集,得到分类结果后,根据Gmeans值的大小对软件特征进行从小到大排序,按顺序依次取每类特征的一个元素,组成最优特征子集的三元组,记为(l,h,m),则最优特征子集S可表示为:S={(l,h,m)|l∈L,h∈H,m∈M}。
D.利用二维循环级联Adaboost以及特征集S对软件模块进行分类
(1)设定级联结构为五级,每一级均为Adaboost分类器。每个Adaboost分类器由若干个弱分类器(分类错误率<0.5)加权集成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国石油大学(华东),未经中国石油大学(华东)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511003241.2/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





