基于K-B的软件缺陷预测方法、装置、电子设备及介质制造方法及图纸

技术编号:33297464 阅读:49 留言:0更新日期:2022-05-06 12:01
本申请公开了一种基于K

【技术实现步骤摘要】
基于K-B的软件缺陷预测方法、装置、电子设备及介质


[0001]本专利技术涉及软件测试及数据挖掘领域,更具体地,涉及一种基于K-B的软件缺陷预测方法、装置、电子设备及介质。

技术介绍

[0002]从1970年开始,软件缺陷预测技术开始发展;随着软件系统规模变得越来越大,逻辑日趋复杂,软件缺陷也势必增加,影响软件质量,由于软件缺陷预测帮助测试人员了解软件的状态和质量,帮助制定交付标准,所以软件缺陷的预测也变得重要起来。
[0003]目前,软件缺陷预测分为静态和动态两种预测方法。随着软件迭代更新次数以及同类软件的增多,基于软件历史开发数据及发现的缺陷数,进行缺陷数目、类型、分布的预测成为一种切实可行方法。研究指出影响缺陷预测有3个因素,度量元的选取、缺陷预测模型的构建方法和数据集。也就是根据缺陷相关的度量元数据(代码行数、类数、方法数等),选择适当预测模型,选择适当的数据集可以有效的提高缺陷预测的转去额度。本文就基于以上静态缺陷预测方法展开研究。
[0004]怎么样从大量的开发历史数据中找到与缺陷相关的数据,也就是度量元选取问题变成首要问题,这就涉及到数据挖掘领域。现在主要运用的是PCA,LDA,LLE以及ICA等方法。KPCA(Kernel Principle Component Analysis),核主成分分析法,是PCA的衍生版本,传统pca无法实现非线性投影,PCA降维试图找到数据被限制的低维线性子空间,但数据可能是非线性。Kernel PCA把Kernel升维和PCA降维两种方法有机的融合在一起,将原始数据通过核函数(kernel)映射到高维度空间,再利用PCA算法进行降维,提高运算效率。
[0005]对于静态软件缺陷预测技术,有分类、回归和基于神经网络的贝叶斯、CNN、DNN等方法,这就涉及预测模型选取问题。由于基于复杂神经网络训练模型的时间会较长,对机器性能要求较高。
[0006]因此,有必要开发一种基于KPCA-Bayes的软件缺陷预测方法、装置、电子设备及介质。
[0007]公开于本专利技术
技术介绍
部分的信息仅仅旨在加深对本专利技术的一般
技术介绍
的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。

技术实现思路

[0008]本专利技术提出了一种基于K-B的软件缺陷预测方法、装置、电子设备及介质,其能够解决度量元的维数问题,解决软件缺陷预测的准确度,为软件缺陷预测提供一种新的可行方法,能够对之后的软件系统做出缺陷数目预测,为制定软件测试计划提供参考指标,更好的规划人力和时间。
[0009]第一方面,本公开实施例提供了一种基于K-B的软件缺陷预测方法,包括:
[0010]收集软件历史缺陷数据,将所述软件历史缺陷数据划分为训练数据集与测试数据
集;
[0011]针对所述训练数据集内的度量元进行降维,获得特征向量;
[0012]根据降维后的训练数据集与所述特征向量,进行贝叶斯分类回归计算训练;
[0013]调整降维参数与贝叶斯参数,获得最优模型;
[0014]根据所述最优模型,针对所述测试数据集内的度量元进行降维,并进行贝叶斯分类回归计算,预测所述测试数据集的缺陷。
[0015]优选地,针对所述训练数据集内的度量元进行降维,获得特征向量包括:
[0016]计算所述训练数据集内任意两个样本之间的欧几里得距离值,获得矩阵;
[0017]针对所述矩阵进行聚集处理,获得对称核矩阵;
[0018]将所述对称核矩阵转化为中心矩阵,获得特征向量。
[0019]优选地,将所述对称核矩阵转化为中心矩阵,获得特征向量包括:
[0020]将所述中心矩阵按降序排列,获得前k个特征值对应的特征向量。
[0021]优选地,所述最优模型包括最优降维参数与最优贝叶斯参数。
[0022]优选地,根据所述最优模型,针对所述测试数据集内的度量元进行降维,并进行贝叶斯分类回归计算,预测所述测试数据集的缺陷包括:
[0023]根据所述最优降维参数针对所述测试数据集内的度量元进行降维,根据所述最优贝叶斯参数进行贝叶斯分类回归计算,预测所述测试数据集的缺陷。
[0024]优选地,还包括:
[0025]针对测试数据集的预测缺陷与实际缺陷进行对比,评价所述最优模型。
[0026]优选地,所述训练数据集与所述测试数据集的数据比例为7:3。
[0027]作为本公开实施例的一种具体实现方式,
[0028]第二方面,本公开实施例还提供了一种基于K-B的软件缺陷预测装置,包括:
[0029]数据集划分模块,收集软件历史缺陷数据,将所述软件历史缺陷数据划分为训练数据集与测试数据集;
[0030]降维模块,针对所述训练数据集内的度量元进行降维,获得特征向量;
[0031]训练模块,根据降维后的训练数据集与所述特征向量,进行贝叶斯分类回归计算训练;
[0032]最优模型建立模块,调整降维参数与贝叶斯参数,获得最优模型;
[0033]预测模块,根据所述最优模型,针对所述测试数据集内的度量元进行降维,并进行贝叶斯分类回归计算,预测所述测试数据集的缺陷。
[0034]优选地,针对所述训练数据集内的度量元进行降维,获得特征向量包括:
[0035]计算所述训练数据集内任意两个样本之间的欧几里得距离值,获得矩阵;
[0036]针对所述矩阵进行聚集处理,获得对称核矩阵;
[0037]将所述对称核矩阵转化为中心矩阵,获得特征向量。
[0038]优选地,将所述对称核矩阵转化为中心矩阵,获得特征向量包括:
[0039]将所述中心矩阵按降序排列,获得前k个特征值对应的特征向量。
[0040]优选地,所述最优模型包括最优降维参数与最优贝叶斯参数。
[0041]优选地,根据所述最优模型,针对所述测试数据集内的度量元进行降维,并进行贝叶斯分类回归计算,预测所述测试数据集的缺陷包括:
[0042]根据所述最优降维参数针对所述测试数据集内的度量元进行降维,根据所述最优贝叶斯参数进行贝叶斯分类回归计算,预测所述测试数据集的缺陷。
[0043]优选地,还包括:
[0044]针对测试数据集的预测缺陷与实际缺陷进行对比,评价所述最优模型。
[0045]优选地,所述训练数据集与所述测试数据集的数据比例为7:3。
[0046]第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:
[0047]存储器,存储有可执行指令;
[0048]处理器,所述处理器运行所述存储器中的所述可执行指令,以实现所述的基于K-B的软件缺陷预测方法。
[0049]第四方面,本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现所述的基于K-B的软件缺陷预测方法。
[0050]本专利技术的方法和装置具有其它本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于K-B的软件缺陷预测方法,其特征在于,包括:收集软件历史缺陷数据,将所述软件历史缺陷数据划分为训练数据集与测试数据集;针对所述训练数据集内的度量元进行降维,获得特征向量;根据降维后的训练数据集与所述特征向量,进行贝叶斯分类回归计算训练;调整降维参数与贝叶斯参数,获得最优模型;根据所述最优模型,针对所述测试数据集内的度量元进行降维,并进行贝叶斯分类回归计算,预测所述测试数据集的缺陷。2.根据权利要求1所述的基于K-B的软件缺陷预测方法,其中,针对所述训练数据集内的度量元进行降维,获得特征向量包括:计算所述训练数据集内任意两个样本之间的欧几里得距离值,获得矩阵;针对所述矩阵进行聚集处理,获得对称核矩阵;将所述对称核矩阵转化为中心矩阵,获得特征向量。3.根据权利要求2所述的基于K-B的软件缺陷预测方法,其中,将所述对称核矩阵转化为中心矩阵,获得特征向量包括:将所述中心矩阵按降序排列,获得前k个特征值对应的特征向量。4.根据权利要求1所述的基于K-B的软件缺陷预测方法,其中,所述最优模型包括最优降维参数与最优贝叶斯参数。5.根据权利要求4所述的基于K-B的软件缺陷预测方法,其中,根据所述最优模型,针对所述测试数据集内的度量元进行降维,并进行贝叶斯分类回归计算,预测所述测试数据集的缺陷包括:根据所述最优降维参数针对所述测试数据集内的度量元进行...

【专利技术属性】
技术研发人员:王婷婷
申请(专利权)人:中国石油化工股份有限公司石油物探技术研究院
类型:发明
国别省市:

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

1