一种基于关联规则网络的软件缺陷度量元选择方法技术

技术编号:36406358 阅读:17 留言:0更新日期:2023-01-18 10:15
本发明专利技术公开了一种基于关联规则网络的软件缺陷度量元选择方法,包括:设置软件缺陷数据库、最小支持度和最小置信度,提取所有关联规则生成关联规则集;选择关联规则集中以单件结果形式出现的表示目标节点的频繁项,建立反向超图;对反向超图的超循环和逆超边进行剪枝,生成关联规则网络;获取关联规则网络中的目标节点和最大级别节点之间的最短路径。本发明专利技术提出了一种在软件缺陷领域针对确定软件度量元之间相关性的全新方法,以关联规则算法为基础,确立软件度量元之间彼此的关系,并通过关联规则网络中特定上下文为目标生成整体的关联规则网络。关联规则网络。关联规则网络。

【技术实现步骤摘要】
一种基于关联规则网络的软件缺陷度量元选择方法


[0001]本专利技术涉及软件缺陷
,更具体的说是涉及一种基于关联规则网络的软件缺陷度量元选择方法。

技术介绍

[0002]软件缺陷是软件质量的对立面,威胁着软件质量。因此,如何在软件开发的早期挖掘出缺陷模块成为一个亟需解决的问题。软件缺陷预测技术能够在软件开发过程中使用软件模块的度量元数据来提前发现与锁定缺陷模块,从而合理地分配有限资源,为软件质量提供保障。研究者从软件仓库出发,基于软件度量数据,利用统计学和机器学习等方法来研究缺陷预测技术,并且取得了丰富的研究成果。
[0003]一个软件系统S由m个模块或类实体组成的向量空间{},第i个样本向量由n

1个自变量特征和1个因变量组成,Ai表示度量元(特征或属性)用于衡量对关注的软件对象的基本描述,T表示样本的缺陷类型。在软件缺陷领域中,事务代表软件模块或类。关联规则是以挖掘隐含于数据中的关联关系为目的的算法,采用产生式表示形式符合人的思维逻辑,其蕴含式: if X then C或X => C,其中XS,CS且XC=,“=>”的左边称之为前件,右边称之为后件。前件X在软件缺陷领域中表示一组特征(或项或度量元)集合,后件C可以是特征集可以是类别(如正类和反类),通常用支持度(support)和置信度(confidence)度量一条关联规则是否有用,支持度和置信度越大,则规则越有用。支持度揭示了X与C同时发生的概率,而置信度揭示了在X发生时C出现的概率。它们分别表示所发现关联规则的有用性和确定性。规则称之为原子关联规则(AAR),当且仅当:。原子关联规则 AAR 定义为前件和后件分别仅包含单一的特征或类标签。
[0004]关联规则网络算法是在关联规则算法的基础上,在特定目标的上下文中对发现的关联规则进行综合、剪枝和集成。特别是,如果存在一个感兴趣的变量(“目标”),那么可以形成一个由相关变量和相关变量组成的网络,并使用该网络来通知一个可以使用统计方法进行检验的“模型”。例如,假设关联规则任务输出以下规则:A

B,B

C和D

C。此外,感兴趣的变量可能是C。关联规则任务的输出立即表明回归模型C=1D+2B+。此外,还可以测试A对C的间接依赖,甚至B和D对C的联合依赖,这样就可以将数据挖掘任务与统计分析结合起来。在实践中,关联规则挖掘ARM涉及成百上千的变量。伴随着关联规则网络(ARNs)的剪枝策略可以用来消除变量之间的局部不一致性(如循环),从而提出一致的统计模型。
[0005]因此,如何提供一种基于关联规则网络的软件缺陷度量元选择方法是本领域技术人员亟需解决的问题。

技术实现思路

[0006]有鉴于此,本专利技术提供了一种针对软件缺陷数据通过关联规则网络技术进行特征
选择的方法,以便软件缺陷预测等领域相关研究。关联规则算法在软件缺陷预测领域非常有效,而关联规则网络技术是在关联规则技术的基础上针对特定上下文而使用的特征选择方法,所以运用关联规则网络技术来分析针对软件缺陷的软件特征选择,通过模型化简化和抽象软件特征与软件缺陷之间与软件特征自身之间的关系,提出基于关联规则网络的软件缺陷度量元选择方法。
[0007]为了实现上述目的,本专利技术采用如下技术方案:一种基于关联规则网络的软件缺陷度量元选择方法,包括:步骤一:设置软件缺陷数据库、最小支持度和最小置信度,提取所有关联规则生成关联规则集;步骤二:选择关联规则集中以单件结果形式出现的表示目标节点的频繁项,建立反向超图;步骤三:对反向超图的超循环和逆超边进行剪枝,生成关联规则网络;步骤四:获取关联规则网络中的目标节点和最大级别节点之间的最短路径,进而选择出软件缺陷度量元,其中,最短路径用于解释一个度量元到用户指定目标节点之间的关联关系。在软件缺陷领域,最短路径越短,度量元与软件缺陷的关系越紧密。
[0008]优选的,步骤一具体步骤为:将软件缺陷数据库中的数据整理为事务性数据,通过预先设定支持度阈值与置信度阈值的Apriori算法遍历事务性数据并生成满足最小支持度的频繁项集,并根据最小置信度通过频繁项集生成关联规则集。
[0009]优选的,步骤二具体步骤为:在生成的关联规则集中,筛选出后件长度为1的关联规则并提取满足此条件关联规则的后件,在后件中选择目标节点的频繁项g,并以目标节点的频繁项g作为网络的最终终点,根据目标节点的频繁项g逐层建立反向超图流向目标项,得到流向目标项的反向超图;反向超图指所有超边均是反向超边的超图,超图是一对H=(N,E),其中N是一组节点集合{}、超边集合E

2N、H表示超图,每个超边e可能跨越两个以上的节点;在有向超图中,超边e所跨越的节点被分成两部分,头部和尾部分别用H(e)和T(e)表示,如果|H(e)|=1,则超边e称为反向超边,超图中所有超边均是反向超边的为反向超图。
[0010]优选的,超循环指关联规则网络中的循环结构。
[0011]优选的,逆超边指超边中头部与尾部的层级满足level(T(e))<level(H(e))时,则超边e称为逆超边,level表示关联规则网络中节点层级。
[0012]本专利技术的优点和积极效果在于:(1)本专利技术提出一种在软件缺陷领域针对确定软件度量元之间相关性的全新方法,以关联规则算法为基础,确立软件度量元之间彼此的关系,并通过关联规则网络中特定上下文为目标生成整体的关联规则网络。
[0013](2)本专利技术通过超循环以及逆超边的剔除完成了关联规则网络中逻辑不一致的问题。
[0014](3)首次利用了关联规则网络模型,并通过原子类关联规则表示度量元两两之间的相关性,利用指定软件有无缺陷为目标建立关联规则网络并解决了网络中的逻辑不一致
问题。
附图说明
[0015]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0016]图1是本专利技术基于apriori算法所生成的关联规则;图2是本专利技术的步骤二中通过关联规则网络构建算法生成的反向超图;图3是本专利技术的可行性对比结果;图4是本专利技术方法流程图。
具体实施方式
[0017]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0018]本专利技术提出一种基于关联规则网络对软件缺陷数据集进行分析选择相关特征并最终进行特征选择的方法,如图4所示。首先,通过apriori算法并预先设置支持度阈值与置信度阈值生成关联规本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于关联规则网络的软件缺陷度量元选择方法,其特征在于,包括:步骤一:设置软件缺陷数据库、最小支持度和最小置信度,提取所有关联规则生成关联规则集;步骤二:选择关联规则集中以单件结果形式出现的表示目标节点的频繁项,建立反向超图;步骤三:对反向超图的超循环和逆超边进行剪枝,生成关联规则网络;步骤四:获取关联规则网络中的目标节点和最大级别节点之间的最短路径,选择软件缺陷度量元。2.根据权利要求1所述的一种基于关联规则网络的软件缺陷度量元选择方法,其特征在于,步骤一具体步骤为:将软件缺陷数据库中的数据整理为事务性数据,通过预先设定支持度阈值与置信度阈值的Apriori算法遍历事务性数据并生成满足最小支持度的频繁项集,并根据最小置信度通过频繁项集生成关联规则集。3.根据权利要求1所述的一种基于关联规则网络的软件缺陷度量元选择方法,其特征在于,步骤二具体步骤为:在生成的关联规则集中,筛选出后件长度为1的关联规则并提取满足此条件关联规则的后件,在后件中选...

【专利技术属性】
技术研发人员:武文韬王世海刘斌施腾飞刘宇
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

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

1