基于邻域影响函数的深度学习输入集优先级测试方法和装置制造方法及图纸

技术编号:36189846 阅读:13 留言:0更新日期:2022-12-31 21:02
本发明专利技术公开了一种基于邻域影响函数的深度学习输入集优先级测试方法和装置,本发明专利技术采集干净测试图像样本集并训练深度学习模型;构建每一张对抗测试图像样本的隐藏层特征,并计算邻域影响函数,得到特征分布差异;构建并训练二元分类器,将对抗测试图像样本的特征分布差异输入训练后的二元分类器,输出相对应的置信度,并计算优先级值,实现对对抗测试图像样本集的有限级从小到大的排序。本发明专利技术在有限时间内,仅需要对排序靠前的样本进行定标,实现缩短测试时间的功能。该方法具有良好的适用性,能够有效的对测试级进行优先排序,在最短的时间内筛选出最可能导致模型出现潜在错误的样本。的样本。

【技术实现步骤摘要】
基于邻域影响函数的深度学习输入集优先级测试方法和装置


[0001]本专利技术属于人工智能中深度学习算法与深度学习测试优先级领域,具体涉及一种基于邻域影响函数的深度学习输入集优先级测试方法和装置。

技术介绍

[0002]深度学习旨在通过使用人工神经网络构建一种高级模式分类形式,该网络学习区分不同类别的样本并将新样本识别为正确的类别。随着大规模训练数据集的发布(例如, ImageNet

100、YFCC100M等)和处理能力的进步(例如,GPU的加速),深度学习模型实现了更“更深”的数据转换层,并在诸多领域超越了人类专家的水平,包括自然语言处理、语音识别、自动驾驶等。与此同时,DL模型在安全关键应用中的质量也受到了关注,这需要更多的测试工作来解决可靠性问题。
[0003]测试被认为是软件质量保证的常见实践。但是,对于深度学习的测试不像传统的软件测试那么容易,因为传统软件依赖于程序员手动构建的程序逻辑,而深度学习是基于数据驱动的、拥有自主化学习能力的编程范式,这加剧了对深度学习的测试的困难。目前深度学习的测试处于起步阶段,从深度学习测试的角度而言,可以分为如下三个阶段:1)提出各种度量标准来衡量测试输入的充分性。此类测试方法借鉴了传统软件代码中的代码覆盖率的思想,以深度学习最小构建单位——神经元的激活角度设计一系列的覆盖性指标,以此来评估输入在深度学习模型中激活的充分性和对潜在空间的探索能力。2)设计生成多样化测试输入。此类测试方法试图通过样本变异、差分模糊测试等方法生成致使模型输出不一致的测试样本,以此来评估模型的鲁棒性。3)测试输入优先级排序。当模型应用于实际场景时,需要对不同场景下的多样化样本都能有很好的兼容能力,这就需要构建大量的测试输入来测试,一旦发现可能的错误及时对模型进行返厂加固。然而,测试输入的标记工作尝尝耗时耗力,在有限的时间内,无法对所有测试输入进行正确的标注,并且标注需要依赖特定领域的专家知识。基于这个事实,对测试输入按重要程度进行优先级排序显得尤为重要。
[0004]根据现有研究,对于采用测试优先级排序评估模型在多种环境中的鲁棒性的重要性虽然引起了广泛的关注,但目前很少有人致力于解决目前存在的问题。
[0005]针对上述问题,直观的做法是选取特定的策略对所有测试输入进行采样,通过多样化评估指标来判断样本的重要程度,以此进行优先级排序,以便能够在有限的时间内标记更多的在测试过程中致使深度学习模型产生输出不一致的测试输入,使得模型能够更早进行返厂调试。优先级排序可以大大提高深度学习模型测试的效率,缩短深度学习模型开发周期。有鉴于此,本专利技术提出了一种基于邻域影响函数的深度学习输入集优先级测试方法及其装置,旨在对大规模测试输入集合进行优先级排序,实现在有限时间内尽可能多的对模型输出不一致样本按重要性进行排序。

技术实现思路

[0006]本专利技术的目的在于针对现有技术的不足,提供了一种基于邻域影响函数的深度学
习输入集优先级测试方法和装置。
[0007]本专利技术的目的是通过以下技术方案来实现的:一种基于邻域影响函数的深度学习输入集优先级测试方法,包括以下步骤:
[0008](1)采集干净测试图像样本集,并对干净测试图像样本集进行攻击得到对抗性图像样本集;从干净测试图像样本集和对抗性图像样本集中选取95%的图像样本并混合,形成对抗测试图像样本集;将干净测试图像样本集中剩余5%的干净测试图像样本作为干净训练图像样本集,并将对抗性图像样本集中剩余5%的对抗性图像样本作为对抗训练图像样本集;
[0009](2)将干净测试图像样本集按预设比例分为训练集和测试集,训练深度学习模型f;
[0010](3)根据步骤(2)训练后的深度学习模型f构建对抗测试图像样本集中每一张对抗测试图像样本的隐藏层特征;计算每一张对抗测试图像样本与干净测试图像样本集中每一张干净测试图像样本之间的邻域影响函数,得到对应的邻域影响函数集合;并对邻域影响函数集合进行升序排列,挑选出前M个邻域影响函数值较大的干净测试图像样本集合以及前M个邻域影响函数值较小的干净测试图像样本集合,并通过隐藏层特征与前M个邻域影响函数值较大的干净测试图像样本集合以及前M个邻域影响函数值较小的干净测试图像样本集合计算每一张对抗测试图像样本的特征分布差异;
[0011](4)使用干净训练图像样本集和对抗训练图像样本集训练二元分类器;将对抗测试图像样本集中每一张对抗测试图像样本的特征分布差异输入训练后的二元分类器,输出每一张对抗测试图像样本相对应的置信度,并计算每一张对抗测试图像样本的优先级值;
[0012](5)根据优先级值的大小,实现对对抗测试图像样本集从小到大的优先级排序。
[0013]进一步地,所述步骤(1)具体包括以下子步骤:
[0014](1.1)从MNIST数据集、CIFAR

10数据集和ImageNet数据集中选取h张图像作为干净测试图像样本集X:X={x1,x2,..,x
i
,...,x
h
},其中,x
i
表示第i张干净测试图像样本,i=1,2,

i,

n;并分类得到每张干净测试图像样本相应的类标,得到干净测试图像样本集X 的类标集合Y:Y={y1,y2,..,y
i
,...,y
n
};
[0015](1.2)利用FGSM攻击、UAP攻击、AUNA攻击和Boundary攻击方式处理干净测试图像样本集X,得到对抗性图像样本集X
*
:X
*
={X1,X2,..,X
j
,...},其中,X
j
表示第j张攻击成功后的对抗性图像样本;
[0016]分别从干净测试图像样本集X和对抗性图像样本集X
*
中选取95%的图像样本并混合,形成对抗测试图像样本集X
t
;X
t
={x
′1,x
′2,..,x

t
,...},其中,x

t
表示第t张对抗测试图像样本;将干净测试图像样本集X中剩余5%的干净测试图像样本作为干净训练图像样本集X
val
: X
val
={x
val_1
,x
val_2
,..,x
val_a
,..,},其中,x
val_a
表示第a张干净训练图像样本;将对抗性图像样本集X
*
中剩余5%的对抗性图像样本作为对抗训练图像样本集X
adv
: X
adv
={x
adv_1
,x
adv_2
,..,x
adv_b
,..,},其中,x
adv_b
第b张对抗性图像样本。
[0017]进一步地,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于邻域影响函数的深度学习输入集优先级测试方法,其特征在于,包括以下步骤:(1)采集干净测试图像样本集,并对干净测试图像样本集进行攻击得到对抗性图像样本集;从干净测试图像样本集和对抗性图像样本集中选取95%的图像样本并混合,形成对抗测试图像样本集;将干净测试图像样本集中剩余5%的干净测试图像样本作为干净训练图像样本集,并将对抗性图像样本集中剩余5%的对抗性图像样本作为对抗训练图像样本集;(2)将干净测试图像样本集按预设比例分为训练集和测试集,训练深度学习模型f;(3)根据步骤(2)训练后的深度学习模型f构建对抗测试图像样本集中每一张对抗测试图像样本的隐藏层特征;计算每一张对抗测试图像样本与干净测试图像样本集中每一张干净测试图像样本之间的邻域影响函数,得到对应的邻域影响函数集合;并对邻域影响函数集合进行升序排列,挑选出前M个邻域影响函数值较大的干净测试图像样本集合以及前M个邻域影响函数值较小的干净测试图像样本集合,并通过隐藏层特征与前M个邻域影响函数值较大的干净测试图像样本集合以及前M个邻域影响函数值较小的干净测试图像样本集合计算每一张对抗测试图像样本的特征分布差异;(4)使用干净训练图像样本集和对抗训练图像样本集训练二元分类器;将对抗测试图像样本集中每一张对抗测试图像样本的特征分布差异输入训练后的二元分类器,输出每一张对抗测试图像样本相对应的置信度,并计算每一张对抗测试图像样本的优先级值;(5)根据优先级值的大小,实现对对抗测试图像样本集从小到大的优先级排序。2.根据权利要求1所述的一种基于邻域影响函数的深度学习输入集优先级测试方法,其特征在于,所述步骤(1)具体包括以下子步骤:(1.1)从MNIST数据集、CIFAR

10数据集和ImageNet数据集中选取h张图像作为干净测试图像样本集X:X={x1,x2,..,x
i
,...,x
h
},其中,x
i
表示第i张干净测试图像样本,i=1,2,

i,

n;并分类得到每张干净测试图像样本相应的类标,得到干净测试图像样本集X的类标集合Y:Y={y1,y2,..,y
i
,...,y
n
};(1.2)利用FGSM攻击、UAP攻击、AUNA攻击和Boundary攻击方式处理干净测试图像样本集X,得到对抗性图像样本集X
*
:X
*
={X1,X2,..,X
j
,...},其中,X
j
表示第j张攻击成功后的对抗性图像样本;分别从干净测试图像样本集X和对抗性图像样本集X
*
中选取95%的图像样本并混合,形成对抗测试图像样本集X
t
;X
t
={x
′1,x
′2,..,x

t
,...},其中,x

t
表示第t张对抗测试图像样本;将干净测试图像样本集X中剩余5%的干净测试图像样本作为干净训练图像样本集X
val
:X
val
={x
val_1
,x
val_2
,..,x
val_a
,..,},其中,x
val_a
表示第a张干净训练图像样本;将对抗性图像样本集X
*
中剩余5%的对抗性图像样本作为对抗训练图像样本集X
adv
:X
adv
={x
adv_1
,x
adv_2
,..,x
adv_b
,..,},其中,x
adv_b
第b张对抗性图像样本。3.根据权利要求2所述的一种基于邻域影响函数的深度学习输入集优先级测试方法,其特征在于,所述步骤(2)具体包括以下子步骤:(2.1)将干净测试图像样本集X按预设比例7:3分为训练集和测试集,通过one

hot编码将干净测试图像样本集X中每张干净测试图像样本的标签转化为一维向量其格式,并计算深度学习模型f的交叉熵:
其中,y

i
表示干净测试图像样本x
i
的预测向量,y
i
表示干净测试图像样本x
i
的真实标签;上标j表示预测向量或真实标签向量中第j个分量;H
i
表示干净测试图像样本x
i
的交叉熵;(2.2)使用LeNet

5模型对MNIST数据集进行训练,使用VGG

16模型对CIFAR

10数据集进行训练,使用GoogLeNet模型对ImageNet数据集进行训练,通过采用小批量梯度下降的训练方法进行训练,使得交叉熵损失函数值最小来对深度学习模型f添加权重,直至训练完成,分类精度达到90%以上;所述交叉熵损失函数为:其中,m为训练样本总数。4.根据权利要求3所述的一种基于邻域影响函数的深度学习输入集优先级测试方法,其特征在于,所述步骤(3)具体包括以下子步骤:(3.1)构建隐藏层特征:设N
l
={n
l1
,n
l2
,

}为步骤(2)训练后的深度学习模型f的隐藏层l的一组神经元;设φ
l
(x,n)表示一个功能函数,该函数代表在给定测试输入的图像样本x时,训练后的深度学习模型f的隐藏层l神经元n所得到的神经元输出值;图像样本x的隐藏层特征activation
l
(x)的定义为:其中,0<l<L,L表示训练后的深度学习模型f的总层数;(3.2)计算邻域影响函数:两张图像样本之间的邻域影响函数具体定义为:其中,H是训练后的深度学习模型f的学习参数的海森矩阵,L(
·
)表示损失函数,θ是训练后的深度学习模型f的参数;x
i
表示任意一张干净测试图像样本,x
i
∈X;x

t
表示任意一张对抗测试图像样本,x

t
∈X
t
;(3.3)对于任意一张对抗测试图像样本x

t
,计算x

t
与干净测试图像样本集X中每一张干净测试图像样本之间的邻域影响函数,得到对抗测试图像样本x

t
的邻域影响函数集合:{I
loss
(x1,x

t
),I
loss
(x2,x

t
),

,I
loss
(x
i
,x

t
),

,I
loss
(x
n
...

【专利技术属性】
技术研发人员:陈晋音金海波陈若曦
申请(专利权)人:浙江工业大学
类型:发明
国别省市:

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

1