【技术实现步骤摘要】
基于自编码器的有监督多视图软件缺陷预测方法及系统
[0001]本专利技术属于软件缺点预测
,特别是涉及基于自编码器的有监督多 视图软件缺陷预测方法及系统。
技术介绍
[0002]随着计算机科学、人工智能等技术的蓬勃发展,当今社会已经进入大数据时 代,日常使用的各类软件,如视频软件、办公软件、电商软件等呈快速发展态势。 为了保障软件质量,在软件正式发布前利用软件缺陷预测技术可以较好提高和 保证软件产品质量。
[0003]目前有一部分研究尝试将深度学习应用在项目内缺陷预测(WPDP)和跨项 目缺陷预测(CPDP)。例如公开号为CN108459955A的中国专利《一种基于深 度迁移的软件缺陷预测方法》提出通过版本控制工具收集待预测软件的源代码 文件;得到的源代码文件由I个模块组成,从源代码文件中提取度量元值,所有 度量元值构成一个集合;对集合进行预处理;通过采样的方式通过度量元值选取 模块得到采样结果集;深度自编码网络构建预测模型;对待预测版本进行预测并 输出预测结果。公开号为CN110751186A的中国专利《一种 ...
【技术保护点】
【技术特征摘要】
1.基于自编码器的有监督多视图软件缺陷预测方法,其特征在于,包括:根据多视图软件模块样本数据构建第一网络模型,所述构建第一网络模型是通过最小化重构损失项得到不同软件模块视图的特定自编码网络;根据多视图软件模块样本数据构建第二网络模型,所述构建第二网络模型是通过类内散度矩阵和类间散度矩阵构建用于识别视图内鉴别信息的视图内的鉴别损失函数;根据第一网络模型构建第三网络模型;所述构建第三网络模型是根据第一网络模型的不同软件模块视图编码特征之间的相关性结构信息构建视图间的相关性损失函数。根据第一网络模型、第二网络模型和第三网络模型构建第四网络模型;将多视图软件测试数据输入第四网络模型得到预测结果。2.根据权利要求1所述的基于自编码器的有监督多视图软件缺陷预测方法,其特征在于,根据多视图软件模块样本数据构建第一网络模型之前,还包括步骤:使用单度量表示不同软件模块视图的数据;将不同软件模块视图的单度量数据集归一化。3.根据权利要求2所述的基于自编码器的有监督多视图软件缺陷预测方法,其特征在于,所述使用单度量表示不同软件模块视图的数据,包括步骤:软件仓库中任意软件模块样本v
i
按照静态度量和动态度量分别表示为和定义静态软件模块视图集的单度量表示为:的单度量表示为:其中表示静态软件模块视图共享的度量元集合,表示视图特定的度量元集合,0
(S)
表示静态软件模块视图的零矩阵;定义动态软件模块视图集的单度量表示为:的单度量表示为:其中表示动态软件模块视图共享的度量元集合,表示动态软件模块视图特定的度量元集合,0
(D)
表示动态软件模块视图的零矩阵。4.根据权利要求3所述的基于自编码器的有监督多视图软件缺陷预测方法,其特征在于,所述将不同软件模块视图的单度量数据集归一化是采用min
‑
max归一化方法将静态软件模块视图的单度量数据集和动态软件模块视图的单度量数据集中各个度量元的值线性转化到[0,1]区间。5.根据权利要求4所述的基于自编码器的有监督多视图软件缺陷预测方法,其特征在于,所述通过最小化重构损失项得到不同软件模块视图的特定自编码网络,包括步骤:构建静态视图自编码器StaNet
auto
,StaNet
auto
网络参数为将归一化后的静态软件模块视图单度量数据集输入StaNet
auto
网络,输出其中f
(S)
表示StaNet
auto
网络的映射函数,M表示网络层数;通过最小化重构误差损失项构建静态软件模块视图的特定网络编码函数:构建动态视图自编码器DiaNet
auto
,DiaNet
auto
网络参数为
将归一化后的动态软件模块视图单度量数据集输入DiaNet
auto
网络,输出f
(D)
表示DiaNet
auto
网络的映射函数;通过最小化重构误差损失项构建动态软件模块视...
【专利技术属性】
技术研发人员:韩璐,严军荣,潘方,
申请(专利权)人:三维通信股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。