System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于深度算子的神经网络模型测试充分性评估方法技术_技高网

一种基于深度算子的神经网络模型测试充分性评估方法技术

技术编号:41480912 阅读:2 留言:0更新日期:2024-05-30 14:30
本发明专利技术公开了一种基于深度算子的神经网络模型测试充分性评估方法,先构建测试数据集,根据待测模型的运行结果收集测试输出;遍历所有与当前真实标签不同的其他两个标签的组合,并计算原始输出到当前选定的边界三角形平面区域的投影点;其次,对于由选定标签组生成的边界三角形按照预设的递归轮数进行划分;并根据所有当前边界三角形区域中的投影点与划分区域的相交信息,判定哪些区域被覆盖;最后,通过汇总所有正确标签类,所有边界三角形,对当前待评估深度算子数据集关于待测神经网络模型的测试充分性指标进行汇总后的归一化计算。本发明专利技术能帮助测试人员自动化、可靠化的量化判断当对待测深度神经网络模型的测试充分程度,提高测试效率。

【技术实现步骤摘要】

本专利技术涉及软件测试的,具体涉及一种基于深度算子的神经网络模型测试充分性评估方法


技术介绍

1、智能软件系统使用深度学习技术对数据进行处理,尤其是包含多种深度算子的深度神经网络(dnn)模型,从而自动化完成相应的图片、文本分类等任务的新型软件系统。其中不同的算子用于对不同类型的数据进行处理运算,例如包含1d算子的模型用于处理文本,包含2d算子的模型用于处理图像。智能软件系统通过使用大量经过人工标记正确标签的数据对内部神经网络模型进行训练,模型通过捕捉训练数据集中不同标签的数据之间的差异调整网络参数完成训练过程,最终得到具有独立功能的神经网络模型,该模型由具体的网络参数组成。

2、然而,经过训练得到的神经网络模型并非是完全正确的,需要测试人员设计对应的测试数据来评估神经网络模型的客观质量。一旦训练后的神经网络模型包含大量错误的网络参数,将会导致应用该模型的软件造成不可挽回的损失。区别于传统软件模型基于代码行的运行逻辑,智能软件系统的实现过程需要依赖大量高维训练数据以及复杂神经元结构,这使得软件测试人员无法像传统软件模型那样,通过分析测试代码是否进行了覆盖,来判断软件是否得到了充分的测试。


技术实现思路

1、本专利技术通过提供一种基于深度算子的神经网络模型测试充分性评估方法,来辅助软件测试人员解决目前基于深度神经网络的智能软件系统缺乏有效的测试程度评估的问题,进而帮助测试人员自动化、可靠化的量化判断当对待测深度神经网络模型的测试充分程度,并最终结果相应的评估结果判断是否需要收集新的深度算子对应的测试数据、并标注额外的测试数据,或是基于测试充分性指标的指引提高测试效率。

2、为实现上述技术目的,本专利技术采取的技术方案为:

3、一种基于深度算子的神经网络模型测试充分性评估方法,

4、首先,基于深度算子的神经网络模型中包含的不同的深度算子对应的数据类型构建测试数据集,利用测试数据集正确标签对结果进行分类,并根据待测模型的运行结果收集测试输出;然后,遍历所有与当前真实标签不同的其他两个标签的组合,并计算原始输出到当前选定的边界三角形平面区域的投影点;其次,对于由选定标签组生成的边界三角形按照预设的递归轮数进行划分;并根据所有当前边界三角形区域中的投影点与划分区域的相交信息,判定哪些区域被覆盖;最后,通过汇总所有正确标签类,所有边界三角形,对当前待评估深度算子数据集关于待测神经网络模型的测试充分性指标进行汇总后的归一化计算,完成基于深度算子的神经网络模型测试充分性评估。

5、为优化上述技术方案,采取的具体措施还包括:

6、评估方法具体包括以下步骤:

7、步骤1:输出数据获取与整理,给定神经网络模型m;首先,将待评估深度算子数据集x={(x,i)},按照正确标签i进行分类;然后将每一个深度算子x带入已经训练好的神经网络模型中进行计算得到m(x)=p;额外的记录每一个正确标签i对应的空间向量;

8、步骤2:输出数据降维,对于任意已经确定输出空间中位置p的深度算子x以及相应的正确标签i,我们从所有除i之外的标签集中遍历选择两个不相同的标签a,b,并记相应的空间中的点为l(a)=1和l(b)=1;接下来,计算由不共线的三点a,b,l张成的边界三角形δabl中的点p',使其满足:pp'⊥δabl;

9、步骤3:边界三角形划分,对于每一个由真实标签l以及两个与l不同的标签确定的点a,b构成的边界三角形δabl,给定一个可递归划分的策略fη(δabl),以实现对边界三角形所构成的子空间的分布情况分割;每一次迭代过程,将划分集合中每一个三角形δefg三边的中点连线,三个中点分别记作h,i,j,满足he=hf,ie=ig,jf=jg,从而将整个三角形分为4部分:f1(δefg)=δehi,δfhj,δgij,δhij;因此,最终对于一个给定的待划分边界三角形区域δabl和固定的迭代次数η,可以得到一个4η个小三角形区域的划分结果;

10、步骤4:边界三角形覆盖确认,对于深度算子数据集中,真实标签为i的所有深度算子x,依次汇总每一个边界三角形中的覆盖情况;以由标签a,b所确定的边界三角形δabl为例,假设迭代η次后得到的划分三角形分别为当存在某个深度算子x对应的输出结果p在边界三角形δabl中的对应点p'落入某一指定三角形δp时,我们记录δp被覆盖;对于n个真实标签下,对应的个边界三角形的覆盖信息进行判断与记录,具体表示公式如下:

11、

12、其中,p'表示深度算子x的输出结果p关于边界三角形δabl确定的投影点p',满足:pp'⊥δabl;

13、步骤5:汇总计算测试充分性,最后,我们将计算并记录的边界三角形覆盖情况汇总,计算出一个归一化的测试充分性指标,具体计算公式如下:

14、

15、其中,分子表示所有边界三角形划分中被覆盖的区域个数;分母表示能够被覆盖的总数;当有越多的划分区域被覆盖时,认为当前深度算子数据集x对于待测神经网络模型m的测试充分性更高。

16、步骤1的具体步骤如下:

17、步骤1-1:起始状态;

18、步骤1-2:读入待评估深度算子数据集x={(x,i)},读入已经训练好的神经网络模型m;

19、步骤1-3:从深度算子集中取出一个深度算子及其相应的真标签(x,i)∈x;

20、步骤1-4:将该深度算子x代入模型m,得到对应的输出m(x)=p;

21、步骤1-5:确定(x,i)对应的真实标签在空间中的点l;

22、步骤1-6:判断是否遍历所有深度算子,未遍历返回步骤1-2,遍历则结束。

23、步骤2的具体步骤如下:

24、步骤2-1:起始状态;

25、步骤2-2:输入待评估深度算子数据集,以及相应的输出结果m(x)=p;

26、步骤2-3:从正确标签类中选定一个标签i,记其对应的空间中点为l;

27、步骤2-4:对于每一组不同于i的标签{a,b}∈{1,...,n}\{i},记其对应的空间中点为a,b;

28、步骤2-5:从正确标签为i的测试集中选定一个深度算子x;

29、步骤2-6:计算当前深度算子的输出投影到边界三角形δabl的结果p';

30、步骤2-7:判断是否遍历所有正确标签为i的深度算子,否则返回步骤2-5,是则进行步骤2-8;

31、步骤2-8:判断是否遍历所有与i不同的标签组合{a,b},否则返回步骤2-4,是则进行步骤2-9;

32、步骤2-9:判断是否遍历所有正确标签i,否则返回步骤2-3,是则结束。

33、步骤3的具体步骤如下:

34、步骤3-1:起始状态;

35、步骤3-2:输入迭代次数η;

36、步骤3-3:从正确标签类中选定一个标签i;

37、步骤3-4:选定每一本文档来自技高网...

【技术保护点】

1.一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

2.根据权利要求1所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:评估方法具体包括以下步骤:

3.根据权利要求2所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

4.根据权利要求3所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

5.根据权利要求4所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

6.根据权利要求5所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

7.根据权利要求6所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

【技术特征摘要】

1.一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

2.根据权利要求1所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:评估方法具体包括以下步骤:

3.根据权利要求2所述的一种基于深度算子的神经网络模型测试充分性评估方法,其特征是:

4.根据权利要求3所述的一种基于深度算子...

【专利技术属性】
技术研发人员:惠战伟王小娟孙金磊曹旭杨森
申请(专利权)人:中国人民解放军军事科学院战争研究院
类型:发明
国别省市:

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

1