[发明专利]一种软件缺陷预测方法和软件缺陷预测系统有效
申请号: | 201410056779.9 | 申请日: | 2014-02-19 |
公开(公告)号: | CN103810101B | 公开(公告)日: | 2019-02-19 |
发明(设计)人: | 胡昌振;单纯;陈博洋;马锐;王勇 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京理工大学专利中心 11120 | 代理人: | 仇蕾安 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种软件缺陷预测方法和软件缺陷预测系统,用以解决现有的软件缺陷预测精度不高的问题。包括:降维处理单元、SVM训练单元和缺陷预测单元;其中步骤一、根据局部线性嵌入算法LLE对第一训练数据集进行降维处理,得到第一训练数据集中每个样本点映射到低维空间中的低维向量,得到由各低维向量组成的第二训练数据集;步骤二、根据所述第二训练数据集对支持向量机SVM分类器进行训练,得到SVM分类器的最优分类超平面函数,进而得到训练好的SVM分类器;步骤三、根据所述训练好的SVM分类器对待预测软件进行缺陷预测。 | ||
搜索关键词: | 一种 软件 缺陷 预测 方法 系统 | ||
【主权项】:
1.一种软件缺陷预测方法,其特征在于,包括以下步骤:步骤一、根据局部线性嵌入算法LLE对第一训练数据集进行降维处理,得到第一训练数据集中每个样本点映射到低维空间中的低维向量,得到由各低维向量组成的第二训练数据集,其中所述第一训练数据集为NASA MDP软件缺陷数据集;其中,第二训练数据集的获得方法如下:1.1设第一训练数据集为{x1,x2,...,xN},xi∈RD,其中xi是属于D维空间的向量;1.2计算第一训练数据集中每个样本点xi的K个近邻点;1.3利用每个样本点的K个近邻点根据公式1计算出局部重建权值矩阵W;
其中,N为样本点数量,wij代表第i个样本点xi使用第j个近邻点表示的系数;第一训练数据集中所有样本点xi使用其近邻点表示的系数组成了局部重建权值矩阵W;1.4根据得到的局部重建权值矩阵W和样本点的近邻点并依据公式2计算出每个样本点对应的低维向量;
其中,I是单位阵,M=(I‑W)T(I‑W);步骤二、根据所述第二训练数据集对支持向量机SVM分类器进行训练,得到SVM分类器的最优分类超平面函数,进而得到训练好的SVM分类器;其中,训练好的SVM分类器的获得方法如下:根据公式3求解SVM分类器的最优分类超平面函数
其中,ω是正交于分类超平面的d维向量,b是偏差项,C是惩罚系数,ξi是松弛变量,φ(x)是SVM分类器使用的核函数;其中,所述核函数为径向基核函数,形式为:
其中,σ是径向基核函数的宽度参数;步骤三、根据所述训练好的SVM分类器对待预测软件进行缺陷预测;上述的得到SVM分类器的最优分类超平面函数中,采用网格搜索方法和十折交叉验证方法对SVM分类器的参数C以及核函数参数σ进行寻优,找到使SVM分类准确率最高的那对参数C和σ的取值,以确定SVM分类器的最优分类超平面函数;上述的采用网格搜索方法和十折交叉验证方法对SVM分类器的参数C以及核函数参数σ进行寻优包括:对选定的每组参数C、σ得到在此组参数取值下的分类准确率,采用十折交叉方法进行验证,取使分类准确率最高的那组参数作为最佳的参数取值;其中,采用十折交叉方法进行验证是指将第二数据集分为10个子集,1个子集做测试集,其余9个子集做训练集,得到在选定的某组参数下的1个分类准确率,如此重复10次;得到在这组参数下的10个分类准确率,将这10个分类准确率的平均数作为评价每一组参数优劣的指标,然后,比较选定的每组参数的分类准确率的平均数,将平均数最高的那组参数C,σ作为最佳的参数取值。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410056779.9/,转载请声明来源钻瓜专利网。
- 上一篇:一种新型的STT-MRAM缓存设计方法
- 下一篇:备份方法和装置