基于样本分布特征和SPY算法的软件缺陷预测方法技术

技术编号:30162028 阅读:44 留言:0更新日期:2021-09-25 15:16
本发明专利技术公开了一种基于样本分布特征和SPY算法的软件缺陷预测方法;本发明专利技术基于软件缺陷数据集的分布特征,提出了边界k值确定公式。根据公式为不同的数据集选择合适的少数类边界样本。此外,本发明专利技术将SPY算法和边界采样算法结合,通过边缘样本优化SPY算法,将少数类边界区域的部分多数类样本设置成为SPY样本,并为SPY样本设置较小训练样本权重,在原始少数类边界区域内部使用边界采样的算法。SPY样本可以对边界上的少数类样本起到引导的作用,确保边界区域的少数类样本能够被正确分类。同时,通过为SPY样本设立一个较小的样本权重,减少了SPY样本对多数类样本的分类影响,最终达到一个较好的分类效果。好的分类效果。好的分类效果。

【技术实现步骤摘要】
基于样本分布特征和SPY算法的软件缺陷预测方法


[0001]本专利技术涉及软件缺陷预测方法,具体涉及一种基于样本分布特征和SPY算法的软件缺陷预测方法;本专利技术是对项目内软件缺陷预测的一种类不平衡处理方法,旨在使用该方法可以平衡软件缺陷数据集,提升模型分类效果,最终帮助测试人员更有效地发现缺陷文件和分配测试资源,从而降低软件测试的成本。

技术介绍

[0002]对于类别分布均衡的数据集,传统的分类算法能够达到较好的分类效果。但在实际的应用场景中,数据的分布通常是不平衡的,例如金融欺骗、医疗诊断、软件故障等场景。在这些场景中,数据主要分为两大类,大多数样本属于多数类数据,剩余的属于少数类样本。传统的分类算法对不平衡数据进行分类时,会将结果倾向于多数类,而对少数类样本的识别率偏低。但在实际场景中,少数类样本更具有实际的价值。因此,不平衡数据的分类有较高的研究价值。
[0003]现有的处理类不平衡数据分类问题的方法主要从两个方面着手:1)数据采样。通过增加少数类数据或是减少多数类数据来平衡原始数据集。其中通过增加少数类样本的方法称为过采样方法本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.基于样本分布特征和SPY算法的软件缺陷预测方法,其特征在于,包括如下步骤:步骤1)基于软件缺陷数据集提取样本特征;包括获取样本不平衡度、获取同类样本之间的平均距离和获取样本方差;步骤2)自适应边界k值计算,根据k近邻算法选择边界样本;a)自适应边界k值计算不同数据集的分布特征都不相同,k的取值需要根据数据集的分布特征来自适应调整;根据整体数据集的分布情况,从距离和方差两个角度出发,提出了k值的两种计算公式;为了防止边界k过大或者过小,将k值约束了范围,在5至15之间;从样本个体的距离出发,结合样本整体不平衡率,得到了以下的公式;s.t.k1∈[5,15]式中imblance为样本不平衡率,dp
average
为少数类样本之间的平均距离,dn
average
为多数类样本之间的平均距离;从两类样本总体的方差角度出发,结合样本整体的不平衡率,得到了k值的另一个计算公式:s.t.k2∈[5,15]式中imblance为样本不平衡率,S
P
为少数类样本的总体方差,S
N
为多数类样本的总体方差;b)边界样本选择根据得到的边界k值,使用K近邻算法计算每个少数类样本周围的k个近邻样本;在这k个近邻样本中,如果多数类样本的个数多于少数类样本的个数,且近邻少数类样本的个数不为0,则被选为少数类边界样本;步骤3)选择少数类样本周围的SPY样本,使用SPY样本引导边界区域的少数类样本更好地分类,以此来提高整体的软件缺陷预测水平;步骤4)在边界少数类样本中进行过采样,来平衡数据集;步骤5)对SPY样本和其他样本分别设置训练权重;将SPY样本的训练权重设置为0.5,将其他样本的权重都设置为1;权重的控制使得SPY样本在引导边界少数类样本正确分类的同时,减轻对边界区域多数类样本的分类影响,整体上提升总体的分类预测效果;步骤6)使用机器学习模型进行数据集的训练及预测。2.根据权利要求1所述的基于样本分布特征和SPY算法的软件缺陷预测方法,其特征在于,步骤1所述的基于软件缺陷数据集提取样本特征,具体如下:1)获取样本不平衡度软件缺陷数据集中多数类样本个数与少数类样本个数的比值,计算样本的不平衡度的
公式为:imblance=num
N
/num
P
;式中num
N
为多数类样本个数,num
P
为少数类样本个数;2)获取同类样本之间的平均距离同类样本之间的平均距离描述了样本之间的接近程度;以少数类样本为例,对于少数...

【专利技术属性】
技术研发人员:陈滨俞坚强方景龙
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1