一种软件缺陷发生情况预测方法、装置、设备及存储介质制造方法及图纸

技术编号:37468142 阅读:7 留言:0更新日期:2023-05-06 09:45
本发明专利技术公开了一种软件缺陷发生情况预测方法、装置、设备及存储介质。该方法包括:获取目标软件的缺陷发生概率数据,所述缺陷发生概率数据包括所述目标软件在两个不同观测时刻之间的缺陷转移概率;采用预先训练好的目标软件缺陷预测模型,根据所述缺陷发生概率数据,确定所述目标软件在目标观测时刻的软件缺陷发生情况,所述软件缺陷发生情况包括所述目标软件的软件缺陷发生类型及其对应的软件缺陷发生概率。本发明专利技术可以准确预测目标软件版本可能发生的软件缺陷发生类型及发生概率。能发生的软件缺陷发生类型及发生概率。能发生的软件缺陷发生类型及发生概率。

【技术实现步骤摘要】
一种软件缺陷发生情况预测方法、装置、设备及存储介质


[0001]本专利技术涉及软件测试
,尤其涉及一种软件缺陷发生情况预测方法、装置、设备及存储介质。

技术介绍

[0002]在基于DevOps循环的软件统计测试中,一种常用的方法是通过运维日志回放,从历史事件中提取知识,进而获取新一轮迭代版本中软件缺陷类型的发生概率。在这种技术背景下,可以基于事件流类型,依托类型随机场建模理论对软件缺陷发生类型及其发生概率进行预测。
[0003]首先可以考虑一个待预测的软件版本缺陷类型C(x0),取K种相互独立且完全穷尽的状态类型,也就是在发布后的任意时刻x0,有c(x0)∈{1,

,K}。当不存在其他信息时,可以假设C(x0)的概率质量函数是平稳的,即C(x0)的类型比例与时间节点x0无关,并且可由K个全局类型比例π1,


K
近似。类型随机场预测和模拟所面临的一个核心问题便是在已知N个观测时刻x1,

,x
N
所对应的事件类型标签c(x1),

,c(x
N
)的前提下估计C(x0)的条件概率质量函数,这里的x1,

,x
N
可以是按它们与x0的时间距离升序排列的采样点时刻。所以,对于软件缺陷发生概率进行不确定性建模的任务可以表述为估计条件概率质量函数P{C(x0)|c(x1),

,c(x
N
)}。为了简化符号,可以选用A和D1,

,D
N
来分别代表C(x0)以及C(x1),

,C(x
N
)样品空间中的事件,用来表示事件A的补事件。
[0004]转移概率函数是定义在滞后距上的单向的、不对称的、满足概率约束的数学模型,转移概率p
lk
(Δ)的本质是条件概率,其数学表达式为
[0005]p
lk
(Δ)=P{缺陷类型k在时刻s+Δ出现|缺陷类型l在时刻s出现}
[0006]ꢀꢀꢀꢀꢀꢀ
=P{I
k
(s+Δ)=1|I
l
(s)=1}
[0007]这里的I是指示变量,Δ表示滞后距分割向量。随着滞后距Δ
i

i
∈Δ的连续增加,第j个软件版本上所有的转移概率将形成转移概率函数图。如果忽略转移概率关于软件版本的差异性,那么第i个软件版本上的转移概率就可以简化为
[0008]在对软件缺陷发生概率的预测建模中,马尔科夫链随机场是一种基于转移概率的类型变量预测模型,该模型的亮点在于此随机场里面只包含一条空间马尔科夫链,因此不需要作出多条链相互独立的假设,也不会出现多条链转移时状态类型不一致的情况。然而,该模型的一般表达式相当复杂,不能直接用于概率计算。为了简化计算,通过施加条件独立假设,多点后验概率可以因式分解为多个两点转移概率的乘积组合。
[0009]从统计学的另一个角度出发,条件最大熵方法可以解决经典的贝叶斯最大熵模型所面临的高计算量问题。虽然马尔科夫链随机场和条件最大熵模型具有不同的理论背景,但是这两种方法都是基于条件独立假设,不适用于具有复杂“数据交互”的日志事件流场景。
[0010]高维空间中对于数据交互的研究最终产生了一系列分析模型,比较有名的当属Tau模型和Nu表达式。这两种方法都是基于比数持久性,它是工程近似领域最广为人知的公
理:概率的“比数比”较之“概率比”更为稳定。近些年来,这种稳健优势使得“比数持久性”方法被大量用于基于事件的类型变量数据建模中,用以放宽条件独立假设。然而,Tau模型所面临的一个困境是非直观权重的获取。Nu模型将可能存在的复杂数据交互信息整合到一个连乘校正参数中,其值难以估计但其精确的表达式可以给出。
[0011]虽然Tau模型和Nu表达式比基于条件独立假设的马尔科夫链随机场和条件最大熵模型更为稳健,但是前两种方法仍然施加了一些额外的假设来寻求难以直接获取的多点准后验概率和两点转移概率的联系。
[0012]为了建立多点准后验概率与两点转移概率之间的联系,经典模型多是基于一系列的主观假设。依据条件概率的定义,可以将概率质量函数分解为
[0013][0014]这里x1表示N个事件流中距离x0最近的时间节点。为了获得多点准后验概率,马尔科夫链随机场理论作出如下条件独立假设:
[0015]P(D
i
|AD1…
D
i
‑1)=P(D
i
|A),i=2,

,N
[0016]由于表达式相对简单,这一假设被广泛地用于类型变量预测建模中。然而,考虑到日志事件流下可能存在的复杂交互信息,此假设在现实世界中应用的合理性还有待考证。
[0017]从概率比的角度,Tau模型假设
[0018][0019]而Nu表达式则假设
[0020][0021]这两种方法通过引入额外的权数τ
i
和υ
i
来替代条件独立假设。不难看出,与经典的马尔科夫链随机场模型类似,多点准后验概率和两点转移概率之间所施加的幂或乘积关系也赋予了人的主观猜测,这在现实软件缺陷情况预测中的适用性同样有待商榷。

技术实现思路

[0022]本专利技术提供了一种软件缺陷发生情况预测方法、装置、设备及存储介质,以实现准确预测目标软件版本可能发生的软件缺陷发生类型及发生概率。
[0023]根据本专利技术的一方面,提供了一种软件缺陷发生情况预测方法,该方法包括:
[0024]获取目标软件的缺陷发生概率数据,所述缺陷发生概率数据包括所述目标软件在两个不同观测时刻之间的缺陷转移概率;
[0025]采用预先训练好的目标软件缺陷预测模型,根据所述缺陷发生概率数据,确定所述目标软件在目标观测时刻的软件缺陷发生情况,所述软件缺陷发生情况包括所述目标软件的软件缺陷发生类型及其对应的软件缺陷发生概率。
[0026]可选的,所述目标软件缺陷预测模型为预先构建并优化的目标转移概率神经网络模型、目标神经元马尔科夫链随机场模型、目标带约束的神经网络模型模型或目标贝叶斯更新神经网络模型。
[0027]可选的,目标转移概率神经网络模型的构建过程包括:
[0028]初始化双层转移概率神经网络,所述双层转移概率神经网络具有H个隐层节点,且内外层激活函数分别为和ψ;
[0029]将缺陷发生概率数据作为输入节点,多点概率y
k
=P(k|l1l2…
l
N
)作为输出节点,N为历史观测时刻个数,k,l1,

l
N
∈{1,2,

,K},K为软件缺陷发生类型个数,ψ
h
(
·
)=ψ(
·
),得到目标转移本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件缺陷发生情况预测方法,其特征在于,包括:获取目标软件的缺陷发生概率数据,所述缺陷发生概率数据包括所述目标软件在两个不同观测时刻之间的缺陷转移概率;采用预先训练好的目标软件缺陷预测模型,根据所述缺陷发生概率数据,确定所述目标软件在目标观测时刻的软件缺陷发生情况,所述软件缺陷发生情况包括所述目标软件的软件缺陷发生类型及其对应的软件缺陷发生概率。2.根据权利要求1所述的方法,其特征在于,所述目标软件缺陷预测模型为目标转移概率神经网络模型、目标神经元马尔科夫链随机场模型、目标带约束的神经网络模型模型或目标贝叶斯更新神经网络模型。3.根据权利要求2所述的方法,其特征在于,所述目标转移概率神经网络模型的构建过程包括:初始化双层转移概率神经网络,所述双层转移概率神经网络具有H个隐层节点,且内外层激活函数分别为和ψ;将缺陷发生概率数据作为输入节点,多点概率y
k
=P(k|l1l2…
l
N
)作为输出节点,N为历史观测时刻个数,k,l1,

l
N
∈{1,2,

,K},K为软件缺陷发生类型个数,ψ
h
(
·
)=ψ(
·
),得到目标转移概率神经网络模型,其中,其中,和分别表示输入层到隐层以及隐层到输出层的链接权重。4.根据权利要求2所述的方法,其特征在于,所述目标神经元马尔科夫链随机场模型的构建过程包括:构建神经元马尔科夫链随机场;将缺陷发生概率数据作为输入节点,多点概率y
k
=P(k|l1l2…
l
N
)作为输出节点,N为历史观测时刻个数,k,l1,

l
N
∈{1,2,

,K},K为软件缺陷发生类型个数,激活函数为单位函数激活函数ψ(
·
)为softmax函数,得到目标神经元马尔科夫链随机场模型
其中,ρ
j
=exp(α
0j
),j=1,2,

,K。5.根据权利要求2所述的方法,其特征在于,所述目标带约束的神经网络模型的构建过程包括:构建带约束的神经网络模型;将缺陷发生概率数据x=[ln(r1/r0),ln(r2/r0),

,ln(r
N
/r0)]作为输入节点,多点概率y
k
=P(k|l1l2…
l
N
)作为输出节点,N为历史观测时刻个数,k,l1,

l
N
∈{1,2,

,K},K为软件缺陷发生类型个数,激活函数为单位函数,激活函数ψ(
·
)为逻辑斯蒂函数,得...

【专利技术属性】
技术研发人员:黄翔王欣李佩刚
申请(专利权)人:中国农业银行股份有限公司
类型:发明
国别省市:

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

1