一种机器学习目标检测系统的多级鲁棒性评测方法及系统与流程

文档序号:36976856发布日期:2024-02-07 13:29阅读:32来源:国知局
一种机器学习目标检测系统的多级鲁棒性评测方法及系统与流程

本发明涉及一种机器学习目标检测系统的多级鲁棒性评测方法及系统,涉及软件工程与人工智能。


背景技术:

1、近年来,基于机器学习的目标检测技术飞速发展,已经被广泛应用于社会的各种不同场景之中,例如自动驾驶系统等,其给人们的生活和工作带来了极大的便利。一个基于机器学习的目标检测模型首先需要在人工标注好的训练数据集上训练从而获得预测图像中目标位置和目标类别的决策逻辑,然后再将模型部署到现实环境中,接收相应环境下的实际输入图像并进行目标检测。然而,相比于传统的软件系统,基于机器学习的目标检测系统的决策逻辑具有不可解释性,因此无法通过传统的软件测试技术,例如逻辑覆盖、静态分析等,测试目标检测系统应对各种部署环境变化时保持正确预测的鲁棒性。

2、在将目标检测系统部署到现实环境时,系统接收的实时输入图像可能受到不同现实环境因素的影响而与原始训练集在数据分布上存在较大差异。例如,一天中不同时刻光线强度的不同会使得输入到系统中的图像亮度差异巨大,天气为雨天时会使得输入图像模糊,摄像头的晃动与旋转会使得输入的图像的角度产生变化等,因此目标检测系统应对不同环境变化时的系统鲁棒性还有待测试。


技术实现思路

1、本发明的目的在于提出一种目标检测系统应对不同环境变化时的多级鲁棒性评测方法及系统,从而根据评测结果对现有目标检测系统进行修复与增强,使其能够被部署到各种不同的实际应用环境之中。本发明使用图像转换技术模拟目标检测系统在不同现实环境下所接受的输入图像,在对原始测试集样本进行数据增强的情况下,结合多级临界转换鲁棒性指标评测系统应对不同现实环境条件变化的鲁棒性;最后基于临界转换鲁棒性的指导,可以对现有目标检测系统进行修复与增强。

2、为了实现本发明的目的,本发明采用的技术方案如下:

3、一种机器学习目标检测系统的多级鲁棒性评测方法,其步骤包括:

4、1)对于一个待评测的目标检测系统m,将训练数据集d中的样本x输入该目标检测系统得到预测结果;所述目标检测系统m为多目标检测系统;

5、2)针对预测结果m(x),使用转换t对该样本x进行迭代转换,每次迭代转换的递增变化量为δ,第i+1次转换时转换t的转换参数更新为θi+1=θi+δ;第i次迭代转换后的样本x为t(x;θi),将其输入该目标检测系统得到预测结果为m(t(x;θi));使用多级别的临界转换鲁棒性度量指标判断预测结果是否满足相应级别下预测结果一致性的条件,当对应级别下的临界转换鲁棒性判断m(t(x;θi))≠m(x)时,将第i-1次转换时转换t的转换参数θi-1作为样本x对于所述目标检测系统m在转换t和增量δ下对应级别的临界转换鲁棒性ctr(x;t,δ);

6、3)计算所述目标检测系统m在转换t和增量δ下对应级别的临界转换鲁棒性均值

7、

8、4)根据临界转换鲁棒性得分确定所述目标检测系统m在转换t和增量δ下对应级别的临界转换鲁棒性得分;其中,θmax为训练数据集d中所有样本对应级别的临界转换鲁棒性ctr(x;t,δ)的最大值,为训练数据集d中所有样本对应级别的临界转换鲁棒性ctr(x;t,δ)的平均值;

9、5)根据各级别的临界转换鲁棒性得分确定所述目标检测系统m的临界转换鲁棒性。

10、进一步的,所述样本x为图像样本,所述多级别的临界转换鲁棒性度量指标包括图像级别的度量指标、类级别的度量指标和目标级别的度量指标;对应级别的临界转换鲁棒性ctr(x;t,δ)为图像级别的临界转换鲁棒性、类级别的临界转换鲁棒性和目标级别的临界转换鲁棒性。

11、进一步的,对于图像级别的临界转换鲁棒性,如果第i次预测输出的目标框数量发生改变,则判定m(t(x;θi))≠m(x);对于类级别的临界转换鲁棒性,如果第i次预测输出的任一类别的目标框数量发生改变,则判定m(t(x;θi))≠m(x);对于目标级别的临界转换鲁棒性,如果第i次预测输出的任一目标框发生预测类别错误或位置偏移大于设定值,则判定m(t(x;θi))≠m(x)。

12、进一步的,针对目标级别下临界转换鲁棒性的输出一致性判断所转化的布尔变量可满足性求解问题,其步骤包括:

13、1)输入转换前原图像在目标检测系统m中的预测结果m(x)记为三元组集合triplets={(x1,y1,d1),(x2,y2,d2),…,(xn,yn,dn)},其中,n>0,xi,yi为第i个目标框的中心点坐标,di为第i个目标框所允许的中心点最大偏移距离;

14、2)输入转换后图像在目标检测系统m中的预测结果m(t(x;θi))记为点对集合pairs={(x1,y1),(x2,y2),…,(xm,ym)},其中,m>0,xi,yi为第i个目标框的中心点坐标;

15、3)待求解的布尔变量的集合assigned_pairs初始化为空;

16、4)为转换前预测结果三元组triplets中的每一个元素triplet,匹配一个转换后预测结果pairs中的一个元素pair,匹配条件为distance(triplet[x,y],pair[x,y])<=triplet[d],其中distance为距离计算函数;将表示结果匹配的布尔变量assign_triplet_{i}_pair_{j}

17、加入到集合assigned_pairs中,其中i表示triplets中第i个元素,j表示pairs中第j个元素,assign_triplet_{i}_pair_{j}表示将pairs中第j个元素匹配给triplets中第i个元素;

18、5)使用约束求解器对布尔变量集合assigned_pairs的可满足性进行判定。若布尔变量集合的取值可以满足(sat),则目标级别下的输出一致性成立;否则,布尔变量的取值存在冲突不可满足(unsat),则目标级别下的输出一致性不成立。

19、以上步骤4)的具体细节如下:

20、4-1)循环遍历triplets中的每一个元素;

21、4-2)对于triplets中的第i个元素triplet,遍历pairs中的每一个元素。如果pairs中的第j个元素pair可以匹配给triplet,则布尔变量assign_triplet_{i}_pair_{j}为真,加入到集合assigned_pairs中,此布尔变量为真所蕴含的布尔变量赋值包括triplets中第i个元素之前的所有三元组均未匹配pairs中的第j个点对,即列表

22、['assign_triplet_{index}_pair_{j}'foreach index<i]中所有布尔变量的取值均为假,将其加入到集合assigned_pairs中。如果pairs中的第j个元素pair无法匹配给triplet,则布尔变量assign_triplet_{i}_pair_{j}为假,加入到集合assigned_pairs中;

23、4-3)对于triplets中的每一个元素所构造的布尔变量之间,使用逻辑或算子进行组合,将其加入到约束求解器的求解约束中。

24、一种机器学习目标检测系统的多级鲁棒性评测系统,其特征在于,包括图像级别的临界转换鲁棒性评估模块、类级别的临界转换鲁棒性评估模块、目标级别的临界转换鲁棒性评估模块和综合评估模块;

25、图像级别的临界转换鲁棒性评估模块,用于使用图像级别的转换t1对训练数据集d中的样本x进行迭代转换,每次迭代转换的递增变化量为δ1,第i+1次转换时转换t的转换参数更新为θi+11=θi1+δ1;第i次迭代转换后的样本x为t1(x;θi1)1,将其输入到目标检测系统得到预测结果m(t1(x;θi1))1;当转换后的输出不满足图像级别下输出一致性的要求时,即m(t1(x;θi1))1≠m(x)1时,将第i-1次转换时转换t的转换参数θi-11作为样本x对于所述目标检测系统m在转换t1和增量δ1下图像级别的临界转换鲁棒性ctr(x;t1,δ1),然后计算所述目标检测系统m在转换t1和增量δ1下图像级别的临界转换鲁棒性均值根据临界转换鲁棒性得分确定所述目标检测系统m在转换t1和增量δ1下图像级别的临界转换鲁棒性得分;其中,θmax为训练数据集d中所有样本的临界转换鲁棒性的最大值,为训练数据集d中所有样本图像级别临界转换鲁棒性的平均值;m(x)1为样本x输入该目标检测系统得到的预测结果;所述目标检测系统m为多目标检测系统;

26、类级别的临界转换鲁棒性评估模块,用于使用类级别的转换t2对训练数据集d中的样本x进行迭代转换,每次迭代转换的递增变化量为δ2,第i+1次转换时转换t的转换参数更新为θi+12=θi2+δ2;第i次迭代转换后的样本x为t2(x;θi2)2,将其输入到目标检测系统得到预测结果m(t2(x;θi2))2;当转换后的输出不满足类级别下输出一致性的要求时,即m(t2(x;θi2))2≠m(x)2时,将第i-1次转换时转换t的转换参数θi-12作为样本x对于所述目标检测系统m在转换t2和增量δ2下类级别的临界转换鲁棒性ctr(x;t2,δ2),然后计算所述目标检测系统m在转换t2和增量δ2下类级别的临界转换鲁棒性均值根据临界转换鲁棒性得分确定所述目标检测系统m在转换t2和增量δ2下类级别的临界转换鲁棒性得分;其中,为训练数据集d中所有样本类级别临界转换鲁棒性的平均值;m(x)2为样本x输入该目标检测系统得到的预测结果;

27、目标级别的临界转换鲁棒性评估模块,用于使用目标级别的转换t3对训练数据集d中的样本x进行迭代转换,每次迭代转换的递增变化量为δ3,第i+1次转换时转换t的转换参数更新为θi+13=θi3+δ3;第i次迭代转换后的样本x为t3(x;θi3)3,将其输入到目标检测系统得到预测结果m(t3(x;θi3))3;当转换后的输出不满足目标级别下输出一致性的要求时,即m(t3(x;θi3))3≠m(x)3时,将第i-1次转换时转换t的转换参数θi-13作为样本x对于所述目标检测系统m在转换t3和增量δ3下目标级别的临界转换鲁棒性ctr(x;t3,δ3);然后计算所述目标检测系统m在转换t3和增量δ3下目标级别的临界转换鲁棒性均值根据临界转换鲁棒性得分确定所述目标检测系统m在转换t3和增量δ3下目标级别的临界转换鲁棒性得分;其中,为训练数据集d中所有样本目标级别临界转换鲁棒性的平均值;m(x)3为样本x输入该目标检测系统得到的预测结果;

28、进一步的,对于图像级别的临界转换鲁棒性,如果第i次预测输出的目标框数量发生改变,则判定m(t1(x;θi1))1≠m(x)1;对于类级别的临界转换鲁棒性,如果第i次预测输出的任一类别的目标框数量发生改变,则判定m(t2(x;θi2))2≠m(x)2;对于目标级别的临界转换鲁棒性,如果第i次预测输出的任一目标框发生预测类别错误或位置偏移大于设定值,则判定m(t3(x;θi3))3≠m(x)3。

29、进一步的,针对目标级别下临界转换鲁棒性的输出一致性判断所转化的布尔变量可满足性求解问题,其步骤包括:

30、1)输入转换前原图像在目标检测系统m中的预测结果m(x)3记为三元组集合triplets={(x1,y1,d1),(x2,y2,d2),…,(xn,yn,dn)},其中,n>0,xi,yi为第i个目标框的中心点坐标,di为第i个目标框所允许的中心点最大偏移距离;

31、2)输入转换后图像在目标检测系统m中的预测结果m(t3(x;θi3))3记为点对集合pairs={(x1,y1),(x2,y2),…,(xm,ym)},其中,m>0,xi,yi为第i个目标框的中心点坐标;

32、3)待求解的布尔变量的集合assigned_pairs初始化为空;

33、4)为转换前预测结果三元组triplets中的每一个元素triplet,匹配一个转换后预测结果pairs中的一个元素pair,匹配条件为distance(triplet[x,y],pair[x,y])<=triplet[d],其中distance为距离计算函数;将表示结果匹配的布尔变量assign_triplet_{i}_pair_{j}

34、加入到集合assigned_pairs中,其中i表示triplets中第i个元素,j表示pairs中第j个元素,assign_triplet_{i}_pair_{j}表示将pairs中第j个元素匹配给triplets中第i个元素;

35、5)使用约束求解器对布尔变量集合assigned_pairs的可满足性进行判定。若布尔变量集合的取值可以满足(sat),则目标级别下的输出一致性成立,即m(t3(x;θi3))3=

36、m(x)3;否则,布尔变量的取值存在冲突不可满足(unsat),则目标级别下的输出一致性不成立,即m(t3(x;θi3))3≠m(x)3。

37、以上步骤4)的具体细节如下:

38、4-1)循环遍历triplets中的每一个元素;

39、4-2)对于triplets中的第i个元素triplet,遍历pairs中的每一个元素。如果pairs中的第j个元素pair可以匹配给triplet,则布尔变量assign_triplet_{i}_pair_{j}为真,加入到集合assigned_pairs中,此布尔变量为真所蕴含的布尔变量赋值包括triplets中第i个元素之前的所有三元组均未匹配pairs中的第j个点对,即列表

40、['assign_triplet_{index}_pair_{j}'foreach index<i]中所有布尔变量的取值均为假,将其加入到集合assigned_pairs中。如果pairs中的第j个元素pair无法匹配给triplet,则布尔变量assign_triplet_{i}_pair_{j}为假,加入到集合assigned_pairs中;

41、4-3)对于triplets中的每一个元素所构造的布尔变量之间,使用逻辑或算子进行组合,将其加入到约束求解器的求解约束中。

42、在目标检测任务中,系统对于具有相同语义信息的图像应该做出相同的预测结果。基于此准则,本发明提出了一种针对目标检测系统的多级鲁棒性评测方法,通过多种输入转换技术,评估系统应对复杂环境变化时的鲁棒性。目标检测系统对于一个输入图像具有多个独立的预测目标框和所属类别,属于多目标预测系统。首先针对单目标预测系统,定义临界转换鲁棒性(ctr,critical transformation robustness)指标如下。

43、单目标预测系统的临界转换鲁棒性定义:对于单目标预测的神经网络m,样本x使用转换t,迭代的递增转换参数θ,θi+1=θi+δ,θ0=0为初始值,δ>0,则在θ以变化量δ进行递增时,假设满足m(t(x;θi))≠m(x)时的最小参数值为θi,记θi-1为样本x对于模型m在转换t和增量δ下的临界转换鲁棒性ctr(x;t,δ)。

44、对于一个数据集d,在转换t和增量δ下的临界转换鲁棒性定义为数据集中所有样本的临界转换鲁棒性均值,即:

45、

46、均值代表了数据集d中样本的临界转换鲁棒性的整体情况,用以度量数据集对于输入转换敏感性的整体情况。基于单目标预测系统的临界转换鲁棒性定义,多级别目标检测系统的临界转换鲁棒性指标定义如下。

47、目标检测系统的多级别临界转换鲁棒性定义:目标检测系统属于多目标预测系统,其同时独立地预测一张图像中的各个不同目标。针对这种特点,结合单目标预测系统的临界转换鲁棒性,分别定义多级别的目标检测系统的临界转换鲁棒性为图像级别的临界转换鲁棒性、类级别的临界转换鲁棒性以及目标级别的临界转换鲁棒性。

48、(1)图像级别的临界转换鲁棒性

49、在此级别下,判断目标检测系统的预测结果发生改变(即,m(t(x;θi))≠m(x))的条件为:目标检测系统对某图像的预测结果中,目标框的数量发生了改变。此级别的临界转换鲁棒性满足要求为系统对于转换后的图像与转换前的图像的预测框的数量相同,实现难度简单,所需计算资源和执行时间较少,对单样本目标检测系统返回的结果进行处理的时间复杂度为o(1)。

50、(2)类级别的临界转换鲁棒性

51、在此级别下,判断目标检测系统的预测结果发生改变(即,m(t(x;θi))≠m(x))的条件为:目标检测系统对图像的预测结果中,至少存在一个类别的目标框的数量发生了改变。此级别的临界转换鲁棒性满足要求为系统对于转换后的图像与转换前的图像的预测结果中,对于存在的多个类别的目标的预测结果,其预测框的数量相同,因此需要遍历系统的预测结果,统计不同类别目标的预测框数量。实现难度适中,所需计算资源和执行时间适中,对单样本目标检测系统返回的结果进行处理的时间复杂度为o(n)。

52、(3)目标级别的临界转换鲁棒性

53、在此级别下,判断目标检测系统的预测结果发生改变(即,m(t(x;θi))≠m(x))的条件为:目标检测系统对图像的预测结果中,至少存在一个目标框的预测发生了改变,这种改变包括预测类别发生了改变或预测框的位置发生了很大的偏移。此级别的临界转换鲁棒性满足要求为系统对于转换后的图像与转换前的图像的预测结果中,对于每一个目标框,除目标框的大小和位置随转换产生必要的相应变换外,每一个目标框转换前后的预测应保持一致。在此临界转换鲁棒性的要求下,需要当每一次转换参数的递增时遍历系统的预测结果,对每一个检测框进行转换前后预测一致性的判断。实现难度大,所需计算资源和执行时间大,对单样本目标检测系统返回的结果进行处理的时间复杂度为o(n2)。本发明针对此级别的临界转换鲁棒性具体实施过程中,目标框匹配难度大,计算复杂性大的问题,提出了一种的方法,即将目标框的匹配问题建模为布尔变量的可满足性求解问题,大幅提高计算速度。目标框匹配问题所建模的布尔变量可满足性求解问题的算法如下:

54、算法1目标框匹配问题建模的布尔变量可满足性求解

55、

56、

57、三个级别的临界转换鲁棒性在判断转换后图像的预测结果与转换前图像的预测结果是否一致的标准上依次更加严格,即图像级别的临界转换鲁棒性最宽松,类级别的临界转换鲁棒性次之,目标级别的临界转换鲁棒性最严格。当样本在经过转换后,目标检测系统的预测不满足图像级别的临界转换鲁棒性下的预测结果一致性要求时,此时也一定不满足类级别的临界转换鲁棒性下的预测结果一致性要求。而当其不满足类级别的临界转换鲁棒性下的预测结果一致性要求时,却不一定不满足图像级别的临界转换鲁棒性结果一致性要求。目标级别的临界转换鲁棒性与类级别的临界转换鲁棒性之间的关系与此类似。三个级别的临界转换鲁棒性可以刻画目标检测系统的不同强度的鲁棒性需求,相应的临界转换鲁棒性评测方法可以衡量和区分不同目标检测系统的鲁棒性差异。

58、在度量了某种输入转换下目标检测系统的临界转换鲁棒性后,为了进一步准确描述在一个数据集d,输入转换t和参数增量δ下,目标检测系统的临界转鲁棒性占整个数据集上输入转换的参数可变范围的比例,本发明提出了临界转换鲁棒性得分(ctrs,criticaltransformation robustness score)指标,定义如下:

59、临界转换鲁棒性得分定义:临界转换鲁棒性得分为输入转换t的临界转换鲁棒性与此转换的参数在数据集d上的可变范围的比值,即:

60、

61、临界转换鲁棒性得分可以进一步直观地描述在一个输入转换下,模型所能承受的样本的最大改变量ctr(d;t,δ)与此转换所能带给样本的最大改变量之间的比例。临界转换鲁棒性得分指标进一步让评测系统更加完整,临界转换鲁棒性可以用于评测不同目标检测系统在同一环境改变条件下的鲁棒性强弱,而临界转换鲁棒性得分则可以用于评测同一系统对于多种不同环境改变条件下的鲁棒性强弱。

62、多级别临界转换鲁棒性在具体实施过程中,由于目标检测系统的预测结果中会同时预测目标的检测框和目标所属类别,而某些输入转换技术(例如旋转,平移等)会引起目标检测框在图像中的相对位置发生移动,甚至导致一些目标检测框移动出图像边界,这对于目标检测系统的预测结果也产生了不同程度的影响。因此,在使得目标检测框发生移动的输入转换下,判断在某级别的临界转换鲁棒性下目标检测系统的预测结果是否发生改变时,本发明提出了保守预测原则,定义如下。

63、保守预测原则定义:如果目标检测系统对于未经过输入转换的原图像中的某些预测目标框经过输入转换后,目标框的部分被移出图像边界,则对于转换后的图像,既允许该目标框被目标检测系统成功预测出,也允许该目标框被目标检测系统丢失。但其他未受影响的目标框应该被正确的检测出并且成功分类。

64、为了保证系统应对不同环境变化的鲁棒性能力被准确的测试,提供给目标检测系统的测试数据集d需要满足一致性与多样性条件如下。

65、数据一致性:对于每一张样本,目标检测系统预测的检测框个数和目标类别,与标签数据完全一致。

66、数据多样性:数据集中的图像应尽量具有多样性,即单目标,多目标,多类别,不同场景的样本。

67、临界转换鲁棒性及临界转换鲁棒性得分的具体评测流程如图1所示。首先对于待测的目标检测模型m,测试数据集d,确定输入转换t及其参数域[θmin,θmax]与参数增量δ。初始化临界转换鲁棒性列表ctr_list为空。对于所有的未测试的样本x∈d,模型m对x的预测结果为m(x),初始化转换参数θ=θmin。样本x经过输入转换t及参数θ后生成的样本为t(x;θ),且模型对于转换后的样本的预测结果为m(t(x;θ))。以增量δ迭代地递增转换参数θ,直到在某级别的目标检测系统临界转换鲁棒性要求下,m(x)与m(t(x;θ))不一致,则对于样本x在转换t下的临界转换鲁棒性记为θ-δ。若当参数θ一直递增到θmax时,在某级别的目标检测系统临界转换鲁棒性要求下,仍未出现m(x)与m(t(x;θ))不一致的情况,则对于样本x在转换t下的临界转换鲁棒性记为θmax。将样本x的临界转换鲁棒性加入临界转换鲁棒性列表ctr_list。

68、最后根据目标检测系统对于某种输入转换的临界转换鲁棒性得分,可以得到目标检测系统在应对某种环境变化时的鲁棒性能力的评测结果。

69、与现有技术相比,本发明的积极效果为:

70、首先,定义了能够度量目标检测系统应对不同环境变化时的鲁棒性能力的多级别临界转换鲁棒性指标与临界转换鲁棒性得分。针对不同的鲁棒性需求,本发明设计了不同计算复杂度的多级别临界转换鲁棒性指标及临界转换鲁棒性得分,其在度量目标检测系统应对环境变化的鲁棒性能力方面准确有效,解决了目标检测系统在复杂多变环境下的鲁棒性评测问题。同时,针对目标级别的临界转换鲁棒性计算复杂度大的问题,提出了一种全新的方法,大幅提高了计算速度。最后,结合评估标准可以准确判断目标检测系统在应对各种不同的现实环境变化下的鲁棒性能力,指导目标检测系统的升级与修复。同时,此方法可以很好地扩展到其它机器学习模型测试框架下,具有良好的可扩展性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1