一种基于元学习对抗特征的对抗训练方法及系统

未命名 08-22 阅读:112 评论:0


1.本发明涉及图像识别技术领域,具体涉及一种基于元学习对抗特征的对抗训练方法及系统。


背景技术:

2.在深度学习技术飞速发展的背景下,图像识别领域随之取得了巨大的进步。深度卷积神经网络的应用,使得图像识别的准确率得到大幅提升,目前已经达到了超越人类水平的程度。作为计算机视觉领域当中的基础任务,图像识别任务的大幅提升,推动了深度卷积神经网络在目标检测、语义分割等更高层次任务中的应用。现如今,深度神经网络已经广泛地应用在我们生活中的方方面面,如自动汽车驾驶、人脸检测、行人再识别等领域,并展现出了巨大的优势,为生活提供了极大的便利。
3.然而,科技的发展是一把双刃剑,在推动社会生产力进步的同时,也会带来很多不利的影响。深度神经网络在被不断推广应用的同时,其自身暴露出了巨大的安全隐患。研究表明,深度神经网络极易受到对抗样本的攻击,攻击者可以对其预测结果进行任意操控,这在一些安全关键场景中,将严重威胁公众的生命财产安全。导致严重后果的对抗样本,是通过在原始数据中,叠加人眼不可见的微小恶意扰动,产生的能够使神经网络做出错误分类决策的样本。对抗样本的存在,引起了研究人员的广泛关注,并设计出众多对抗样本生成方法。
4.goodfellow等人在文献(explaining and harnessing adversarial examples.computer science,2014.)中提出了一种快速生成对抗样本的方法,称为快速梯度符号法(fgsm),通过对损失函数进行梯度下降,单步更新生成对抗样本。此后,大量的对抗攻击方法被先后提出。carlini等人在文献(towards evaluating the robustness of neural networks,2017ieee symposium on security and privacy.)中提出的c&w算法,成功突破了当时采用最为先进的防御蒸馏算法的防御模型,对抗攻击的威胁此时已经达到了难以应对的程度。因此,研究人员将防御的研究转向对抗训练技术,这也是当前防御性能最强的对抗防御技术之一。
5.goodfellow等人在文献(explaining and harnessing adversarial examples.computer science,2014.)中首先提出了在深度网络模型训练过程中加入对抗样本数据,提升模型针对对抗攻击的防御能力,并使用非目标fgsm用于对抗训练,得到了面向fgsm攻击鲁棒的模型。但使用fgsm生成对抗样本数据训练的模型在面对其他攻击算法时,鲁棒效果并不明显。在此基础上,madry等人在文献(towards deep learning models resistant to adversarial attacks,arxiv preprint arxiv:1706.06083,2017.)中提出了采用pgd算法的对抗训练框架。他们将对抗训练问题建模为最大-最小优化问题,通过内部最大化求解允许扰动范围内攻击效果最强的对抗样本,用作训练数据;然后针对外部问题最小化,求解在当前训练数据中,使损失函数值最小的模型参数。他们提出,采用投影梯度下降(pgd)算法求解内部最大化问题,生成对抗样本。pgd算法在允许扰动范围内随机初
始化样本的位置,采用迭代fgsm在允许扰动范围内生成对抗样本。基于pgd对抗训练的模型表现出更好的鲁棒性,在面对多种攻击时,仍可以保持较高的鲁棒性,具有更好的抵御对抗攻击的能力。
6.上述列举的对抗训练算法中,在求解内部最大化的过程中,缺乏对通用特征的考虑,在样本初始位置的选择中,缺少有效的指导。因此,需要设计一种能够获取通用特征的样本初始位置选择算法,并形成相应的对抗训练框架,训练更加鲁棒的深度模型。
7.目前为止,还没有一种方法能够有效地解决具有通用特征对抗样本的内部最大化问题,提升模型鲁棒性。


技术实现要素:

8.有鉴于此,本发明提供了一种基于元学习对抗特征的对抗训练方法和系统,能够提升深度神经网络模型的鲁棒性。
9.为达到上述目的,本发明提供的一种基于元学习对抗特征的对抗训练方法,包括如下步骤:
10.对训练数据集d进行批处理化操作,得到的多个训练批次的数据输入至待训练的深度神经网络模型;对于每一个训练批次的数据,计算神经网络模型的输出结果与该批次数据对应的真实标签之间的损失函数,根据损失函数对初始化扰动进行梯度下降更新,获得该训练批次对应的元对抗扰动。
11.对于每一个训练批次,从所有训练批次的元对抗扰动中选取一个最优的元对抗扰动,将其叠加在当前训练批次数据中,并在此基础上,对当前训练批次数据执行梯度下降,并向允许扰动的范围内进行投影,得到当前训练批次数据对应的对抗样本数据。
12.使用对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得到鲁棒深度神经网络模型。
13.进一步地,损失函数对初始化扰动进行梯度下降更新,获得该训练批次对应的元对抗扰动,具体采用如下步骤:
14.a1、将训练数据集d进行批处理化操作,数据集d中共有d个数据,每个批次样本数取为s,则共有批次数即批处理化操作后得到共c个训练批次,对于第i个训练批次,其初始化扰动设定为vi;
15.a2、分别将每一个训练批次的数据输入深度神经网络模型中,对于当前训练批次si,选取部分数据组成数据集bi,将该训练批次对应的初始化扰动vi与数据集bi叠加并输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据真实标签计算损失函数,并根据损失函数对初始化扰动vi进行梯度下降更新,得到适应扰动vi'。
16.a3、将当前训练批次si的全部数据作为数据集bi',将上述适应扰动vi'和数据集b'叠加并再次输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据样本真实标签计算损失函数,并根据损失函数对适应扰动vi进行梯度下降更新,得到初始元对抗扰动
17.a4、利用经过步骤a3后的初始化元对抗扰动替换初始化扰动vi,并重复a2和a3直至迭代次数等于预设的训练代数meta_iter时,结束内部迭代,执行a5。
18.a5、以概率p对初始元对抗扰动进行交叉操作,从其他训练批次j对应的元对抗扰动中随机选取一个元对抗扰动与当前训练批次元对抗扰动进行融合,并将融合后的扰动投影到允许扰动范围内,获得对应批次的元对抗扰动
19.进一步地,当前训练批次数据对应的对抗样本数据,具体生成过程为:
20.b1、为当前训练批次si选取一个将要使用的最优元对抗扰动具体为:以概率q执行随机选择操作过程,以概率1-q直接选取当前批次对应的元对抗扰动作为
21.随机选择操作过程为:从所有训练批次对应的元对抗扰动中随机选择n个元对抗扰动,将其分别叠加在当前训练批次数据上,根据深度神经网络模型输出结果与数据样本真实标签计算损失函数,得到每个元对抗扰动对应的损失值,选取对应损失值最大的元对抗扰动,作为当前训练批次的最优元对抗扰动
22.b2、将所选的最优元对抗扰动叠加在当前训练批次数据中,并输入深度神经网络模型,并对叠加扰动后的数据执行投影梯度下降算法,得到当前训练批次对应的对抗样本数据为:
[0023][0024]
其中为当前的对抗样本数据,为更新后的对抗样本数据,y为原始数据样本x的真实标签,α为更新步长,δ为允许扰动范围,l(
·
)为损失函数,θ为深度神经网络模型参数,sign(
·
)为符号函数,

x
(
·
)为对x求梯度,π表示投影操作函数。
[0025]
进一步地,使用对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得到能够具备防御对抗攻击效果的鲁棒深度神经网络模型,具体步骤为:
[0026]
c1、对于当前训练批次对应的对抗样本数据,采用梯度下降方法对深度神经网络模型参数进行训练,并更新模型参数。
[0027]
c2、对于所有训练批次,重复c1步骤操作,所有训练批次c1步骤操作完成之后,训练代数加1,直至训练代数达到预设的训练代数epoch,结束训练,得到鲁棒深度神经网络模型。
[0028]
本发明还提供了一种基于元学习对抗特征的对抗训练系统,包括扰动训练模块、内部对抗样本生成模块和外部训练模块。
[0029]
扰动训练模块,接收训练数据集对训练数据集d进行批处理化操作,得到的多个训练批次的数据输入至待训练的深度神经网络模型;对于每一个训练批次的数据,计算神经网络模型的输出结果与该批次数据对应的真实标签之间的损失函数,根据损失函数对初始化扰动进行梯度下降更新,获得该训练批次对应的元对抗扰动。
[0030]
内部对抗样本生成模块,用于对于每一个训练批次,从所有训练批次的元对抗扰动中选取一个最优的元对抗扰动,将其叠加在当前训练批次数据中,并在此基础上,对当前训练批次数据执行梯度下降,并向允许扰动的范围内进行投影,得到当前训练批次数据对应的对抗样本数据。
[0031]
外部模型训练模块用于使用对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得到鲁棒深度神经网络模型。
[0032]
进一步地,扰动训练模块具体执行如下步骤:
[0033]
a1、将训练数据集d进行批处理化操作,数据集d中共有d个数据,每个批次样本数取为s,则共有批次数即批处理化操作后得到共c个训练批次,对于第i个训练批次,其初始化扰动设定为vi;
[0034]
a2、分别将每一个训练批次的数据输入深度神经网络模型中,对于当前训练批次si,选取部分数据组成数据集bi,将该训练批次对应的初始化扰动vi与数据集bi叠加并输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据真实标签计算损失函数,并根据损失函数对初始化扰动vi进行梯度下降更新,得到适应扰动vi';
[0035]
a3、将当前训练批次si的全部数据作为数据集bi',将上述适应扰动vi'和数据集b'叠加并再次输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据样本真实标签计算损失函数,并根据损失函数对适应扰动vi进行梯度下降更新,得到初始元对抗扰动
[0036]
a4、利用经过步骤a3后的初始化元对抗扰动替换初始化扰动vi,并重复a2和a3直至迭代次数等于预设的训练代数meta_iter时,结束内部迭代,执行a5;
[0037]
a5、以概率p对初始元对抗扰动进行交叉操作,从其他训练批次j对应的元对抗扰动中随机选取一个元对抗扰动与当前训练批次元对抗扰动进行融合,并将融合后的扰动投影到允许扰动范围内,获得对应批次的元对抗扰动
[0038]
进一步地,内部对抗样本生成模块,具体执行如下步骤:
[0039]
b1、为当前训练批次si选取一个将要使用的最优元对抗扰动具体为:以概率q执行随机选择操作过程,以概率1-q直接选取当前批次对应的元对抗扰动作为
[0040]
随机选择操作过程为:从所有训练批次对应的元对抗扰动中随机选择n个元对抗扰动,将其分别叠加在当前训练批次数据上,根据深度神经网络模型输出结果与数据样本真实标签计算损失函数,得到每个元对抗扰动对应的损失值,选取对应损失值最大的元对抗扰动,作为当前训练批次的最优元对抗扰动
[0041]
b2、将所选的最优元对抗扰动叠加在当前训练批次数据中,并输入深度神经网络模型,并对叠加扰动后的数据执行投影梯度下降算法,得到当前训练批次对应的对抗样本数据为:
[0042][0043]
其中为当前的对抗样本数据,为更新后的对抗样本数据,y为原始数据样本x的真实标签,α为更新步长,δ为允许扰动范围,l(
·
)为损失函数,θ为深度神经网络模型参数,sign()为符号函数,

x
()为对x求梯度,π表示投影操作函数。
[0044]
进一步地,外部模型训练模块,具体执行如下步骤:
[0045]
c1、对于当前训练批次对应的对抗样本数据,采用梯度下降方法对深度神经网络模型参数进行训练,并更新模型参数;
[0046]
c2、对于所有训练批次,重复c1步骤操作,所有训练批次c1步骤操作完成之后,训
练代数加1,直至训练代数达到预设的训练代数epoch,结束训练,得到鲁棒深度神经网络模型。
[0047]
有益效果:
[0048]
(1)一种基于元学习对抗特征的对抗训练方法,利用元学习中maml算法针对每一批次数据训练元对抗扰动,并引入了交叉操作,提升了元对抗扰动特征的多样性,为投影梯度下降过程提供了一种更好的初始位置选取方法,使选取的初始位置中包含训练数据的通用对抗特征。
[0049]
(2)本发明在内部对抗样本生成过程中,引入了随机选择操作,从不同批次对应的元对抗扰动中选取针对当前批次对抗效果最好的一个扰动,作为当前批次使用的元对抗扰动,将其叠加在当前批次上,并将进行投影梯度下降生成对抗样本,建立了不同批次数据之间通用特征的交互,提升了生成对抗样本所包含的通用对抗特征。
[0050]
(3)本发明利用生成的对抗样本数据训练网络模型参数,使得网络模型在学习样本对抗性特征的同时,还能够学习不同的通用对抗特征,提升了模型对当前数据集通用对抗特征的识别能力,进而提升模型针对对抗攻击的鲁棒效果,提高鲁棒准确率,能够更好地抵御不同类型的对抗攻击。
附图说明
[0051]
图1为本发明的一种基于元学习对抗特征的对抗训练框架的扰动训练模块流程图;
[0052]
图2为本发明的一种基于元学习对抗特征的对抗训练框架的内部对抗样本生成模块流程图;
[0053]
图3为本发明的一种基于元学习对抗特征的对抗训练框架的外部模型训练模块流程图。
具体实施方式
[0054]
下面结合附图并举实施例,对本发明进行详细描述。
[0055]
实施例1:
[0056]
本发明提供了一种基于元学习对抗特征的对抗训练方法,其步骤如下:
[0057]
步骤a:对训练数据集d进行批处理化操作,得到的多个训练批次的数据输入至待训练的深度神经网络模型;对于每一个训练批次的数据,计算神经网络模型的输出结果与该批次数据对应的真实标签之间的损失函数,根据损失函数对初始化扰动进行梯度下降更新,获得该训练批次对应的元对抗扰动。
[0058]
步骤a按照如下方式执行:
[0059]
a1、将训练数据集d进行批处理化操作,数据集d中共有d个数据,每个批次样本数取为s,则共有批次数即批处理化操作后得到共c个训练批次,对于第i个训练批次,其初始化扰动设定为vi;
[0060]
a2、分别将每一个训练批次的数据输入深度神经网络模型中,对于当前训练批次si,选取部分数据组成数据集bi,将该训练批次对应的初始化扰动vi与数据集bi叠加并输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据真实标签计算损失函
数,并根据损失函数对初始化扰动vi进行梯度下降更新,得到适应扰动vi';
[0061]
a3、将当前训练批次si的全部数据作为数据集bi',将上述适应扰动vi'和数据集b'叠加并再次输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据样本真实标签计算损失函数,并根据损失函数对适应扰动vi进行梯度下降更新,得到初始元对抗扰动
[0062]
a4、利用经过步骤a3后的初始化元对抗扰动替换初始化扰动vi,并重复a2和a3直至迭代次数等于预设的训练代数meta_iter时,结束内部迭代,执行a5;
[0063]
a5、以概率p对初始元对抗扰动进行交叉操作,从其他训练批次j对应的元对抗扰动中随机选取一个元对抗扰动与当前训练批次元对抗扰动进行融合,并将融合后的扰动投影到允许扰动范围内,获得对应批次的元对抗扰动
[0064]
步骤b:对于每一个训练批次,从所有训练批次的元对抗扰动中选取一个最优的元对抗扰动,将其叠加在当前训练批次数据中,并在此基础上,对当前训练批次数据执行梯度下降,并向允许扰动的范围内进行投影,得到当前训练批次数据对应的对抗样本数据。对抗样本数据,具体生成过程为:
[0065]
b1、为当前训练批次si选取一个将要使用的最优元对抗扰动具体为:以概率q执行随机选择操作过程,以概率1-q直接选取当前批次对应的元对抗扰动作为
[0066]
随机选择操作过程为:从所有训练批次对应的元对抗扰动中随机选择n个元对抗扰动,将其分别叠加在当前训练批次数据上,根据深度神经网络模型输出结果与数据样本真实标签计算损失函数,得到每个元对抗扰动对应的损失值,选取对应损失值最大的元对抗扰动,作为当前训练批次的最优元对抗扰动
[0067]
b2、将所选的最优元对抗扰动叠加在当前训练批次数据中,并输入深度神经网络模型,并对叠加扰动后的数据执行投影梯度下降算法,得到当前训练批次对应的对抗样本数据为:
[0068][0069]
其中为当前的对抗样本数据,为更新后的对抗样本数据,y为原始数据样本x的真实标签,α为更新步长,δ为允许扰动范围,l(
·
)为损失函数,θ为深度神经网络模型参数,sign(
·
)为符号函数,

x
(
·
)为对x求梯度,π表示投影操作函数。
[0070]
步骤c:使用对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得到能够具备防御对抗攻击效果的鲁棒深度神经网络模型。步骤c的具体采用如下流程:
[0071]
c1、对于当前训练批次对应的对抗样本数据,采用梯度下降方法对深度神经网络模型参数进行训练,并更新模型参数;
[0072]
c2、对于所有训练批次,重复c1步骤操作,所有训练批次c1步骤操作完成之后,训练代数加1,直至训练代数达到预设的训练代数epoch,结束训练,得到能够具备防御对抗攻击效果的鲁棒深度神经网络模型。
[0073]
本发明实施例为对抗训练内部最大化过程提供了包含通用对抗特征的初始位置选择方法,并采用交叉操作和随机选择操作丰富了通用对抗特征的多样性,提高了训练的
模型针对对抗攻击的鲁棒效果,提高鲁棒准确率,能够更好地抵御不同类型的对抗攻击,对提升深度网络模型防御对抗样本攻击具有非常重要的意义。
[0074]
实施例2:
[0075]
一种基于元学习对抗特征的对抗训练方法及框架共包含扰动训练模块、内部对抗样本生成模块以及外部模型训练模块,共三个模块。
[0076]
扰动训练模块如图1所示,该模块用于求解优化样本初始位置选择问题,生成数据批次对应的元对抗扰动。首先是针对每一批次数据生成批次对应的元对抗扰动,将训练数据集d进行批处理化操作,每一个批次样本数取为b,将批处理化后的数据集输入至待训练的深度神经网络模型。对于每一个批次数据,计算模型的输出结果与数据对应的真实标签之间的损失函数,根据损失函数对初始化扰动vi进行梯度下降更新,获得该批次对应的元对抗扰动其中,每一批次对应的元对抗扰动的训练具体包括如下步骤:
[0077]
a1、将训练数据集d进行批处理化处理,数据集d中共有d个数据,每个批次样本数取为s,则共有批次数对于每一个数据批次i,为其初始化一个扰动vi;
[0078]
a2、分别将每一个数据批次输入深度神经网络模型中,对于当前批次si,选取部分数据组成数据集bi,根据初始化扰动vi和数据集bi获得适应扰动vi'。
[0079]
对于当前批次样本,取全部数据作为数据集bi,并设定元学训练代数meta_iter,设定元学习率参数α、β。将初始化扰动vi叠加到数据bi中,此时数据变为bi+vi,将其输入至当前模型,得到模型的输出结果,并计算此结果与数据真实标签之间的损失函数值l(f,bi+vi,y),这里损失函数一般选用交叉熵损失函数。随后可以采用梯度反向传播,求解损失函数l对扰动vi的梯度并采用学习率α对扰动vi进行梯度下降更新,得到适应扰动vi':
[0080][0081]
a3、将当前批次si的全部数据作为数据集bi',根据适应扰动vi'和数据集bi'获得初始元对抗扰动
[0082]
按照预设比例,从当前批次si中选取数据集bi',将适应扰动vi'叠加到数据bi'中,此时数据变为bi'+vi',将其输入至当前模型,得到模型的输出结果,并计算此结果与数据真实标签之间的损失函数值l(f,bi'+vi',y),求解该损失函数值对初始化扰动vi的梯度并采用学习率β对初始化扰动vi进行梯度下降更新,得到初始元对抗扰动
[0083][0084]
在后续迭代训练中,不再使用初始扰动,而使用上一次训练的元对抗扰动更新结果作为当前初始值。
[0085]
a4、利用经过步骤a4后的初始化元对抗扰动替换初始化扰动vi,在训练代数没有超过预设的训练代数meta_iter时,重复a2和a3步骤,进行迭代至预设训练代数meta_iter,结束迭代,此时获得仅与当前批次数据有关的元对抗扰动,其中包含当前批次数据的通用对抗特征,并具有很强的适应性和泛化性能。
[0086]
a5、以概率p对初始元对抗扰动进行交叉操作,从其他批次对应的元对抗扰动中随机选取一个元对抗扰动与当前批次元对抗扰动进行融合,得到融合后的元对抗扰动交叉融合操作为:
[0087][0088]
此时,经过交叉融合操作,融合后的元对抗扰动将同时包含不同批次样本对应的通用对抗特征,大大地丰富了通用对抗特征的多样性。在此之后,并将融合后的扰动投影到允许扰动范围内,得到当前批次对应的元对抗扰动影到允许扰动范围内,得到当前批次对应的元对抗扰动
[0089]
其中,π表示投影操作函数,δ表示允许扰动范围。投影操作保证对抗扰动被限制在允许的范数域内。
[0090]
此时获得当前批次的元对抗扰动,该扰动在当前批次数据通用对抗特征的基础上,融合了其他批次的特征,使得其所能表现的对抗特征更为丰富,可以作为更好的初始位置,提升模型对通用对抗特征的学习能力。
[0091]
内部对抗样本生成模块如图2所示,该模块用于求解内部最大化问题,用于生成训练模型的对抗样本数据。首先将扰动训练模块中得到的当前批次数据对应元对抗扰动,以及其他批次数据对应的元对抗扰动全部输入其中,并将当前批次数据si输入其中。之后,以概率q进行随机选择操作,为当前批次si选取一个最优的元对抗扰动并将此元对抗扰动叠加在当前批次数据上,对叠加扰动后的数据进行迭代投影梯度下降算法,获得当前批次对应的对抗样本数据,并将其保存。其中,最优的元对抗扰动选择过程和内部对抗样本生成过程具体包括如下步骤::
[0092]
b1、以概率q进行随机选择操作,则以概率1-q直接选取当前批次对应的元对抗扰动作为在随机选择操作中,从所有批次对应的元对抗扰动中随机选择num个元对抗扰动,将其分别叠加在当前批次数据上,根据模型输出结果与数据样本真实标签计算损失函数,得到每个元对抗扰动对应的损失值为:
[0093][0094]
其中n为随机选择的第n个元对抗扰动,此时的n与上述批次序号中的序列号并无关系。
[0095]
将上述损失值进行两两比较,并不断保存最大损失值对应的元对抗扰动。待num个元对抗扰动的损失值全部计算完毕后,最后保存的最大损失值对应的元对抗扰动则是对于当前批次数据的最优元对抗扰动
[0096]
b2、将元对抗扰动叠加在当前批次数据中,输入训练模型,对叠加扰动后的数据执行投影梯度下降算法,得到当前批次对应的对抗样本为:
[0097][0098]
其中为当前的数据样本,为更新后的数据样本,y为原始数据样本x的真实标签,α为更新步长,δ为允许扰动范围,l(
·
)为损失函数,θ为深度神经网络模型参数,sign
(
·
)为符号函数,

x
(
·
)为对x求梯度,π表示投影操作函数。
[0099]
经过上述操作后得到的对抗样本数据,将包含当前批次数据和整个训练集数据的通用对抗特征,同时在允许扰动范围内,具有极强的攻击能力。相比随机选取初始起点的pgd算法,本发明中训练的对抗样本数据,将包含更多的数据通用对抗特征,并涵盖更多对训练鲁棒模型有益的特征信息
[0100]
外部模型训练模块如图3所示,该模块用于求解外部最小化问题,用于训练鲁棒模型的网络参数。首先使用内部对抗样本生成模块生成的对抗样本数据,采用梯度下降方法,对神经网络模型进行训练,更新模型参数,然后对于所有批次,重复迭代更新网络模型参数,至预设最大训练代数,结束训练,保存网络模型参数,此时模型已具备对抗鲁棒性。其中,模型训练过程具体包括如下步骤:
[0101]
c1、对于批次采用内部对抗样本生成模块生成的对抗样本数据,采用梯度下降方法对深度神经网络模型参数进行训练,网络模型参数的梯度为:
[0102]

θ
l(f,x
adv
,y)
[0103]
其中,θ为网络模型参数,

θ
(
·
)为对θ求梯度。之后采用梯度下降算法,对网络参数进行更新:
[0104]
θ
i+1
=θ
i-lr
·

θ
l(f,x
adv
,y)
[0105]
其中,θi为当前模型参数,θ
i+1
为更新后模型参数,lr为学习率参数。经过此步骤,可以针对当前批次数据,对网络模型参数进行一次更新。
[0106]
c2、对于所有批次,重复c1步骤操作,直至训练代数达到预设的训练代数epoch,结束训练,在此过程中,网络模型参数可以利用不同批次数据在不同元对抗扰动下生成的对抗样本数据进行多次迭代更新,大大提升了模型的对抗鲁棒性以及面对通用对抗特征的鲁棒泛化性能。
[0107]
本发明训练的鲁棒模型,在不同的扰动强度下,面对对抗样本攻击时的鲁棒准确率提升效果可达2%-3%。因此,本发明可以有效地提升模型的对抗鲁棒性,使用本发明框架训练的鲁棒模型,具有更强的鲁棒性。
[0108]
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种基于元学习对抗特征的对抗训练方法,其特征在于,包括如下步骤:对训练数据集d进行批处理化操作,得到的多个训练批次的数据输入至待训练的深度神经网络模型;对于每一个训练批次的数据,计算神经网络模型的输出结果与该批次数据对应的真实标签之间的损失函数,根据损失函数对初始化扰动进行梯度下降更新,获得该训练批次对应的元对抗扰动;对于每一个训练批次,从所有训练批次的元对抗扰动中选取一个最优的元对抗扰动,将其叠加在当前训练批次数据中,并在此基础上,对当前训练批次数据执行梯度下降,并向允许扰动的范围内进行投影,得到当前训练批次数据对应的对抗样本数据;使用所述对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得到鲁棒深度神经网络模型。2.如权利要求1所述的对抗训练方法,其特征在于,所述损失函数对初始化扰动进行梯度下降更新,获得该训练批次对应的元对抗扰动,具体采用如下步骤:a1、将所述训练数据集d进行批处理化操作,数据集d中共有d个数据,每个批次样本数取为s,则共有批次数即批处理化操作后得到共c个训练批次,对于第i个训练批次,其初始化扰动设定为v
i
;a2、分别将每一个训练批次的数据输入深度神经网络模型中,对于当前训练批次s
i
,选取部分数据组成数据集b
i
,将该训练批次对应的初始化扰动v
i
与数据集b
i
叠加并输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据真实标签计算损失函数,并根据所述损失函数对初始化扰动v
i
进行梯度下降更新,得到适应扰动v

i
;a3、将所述当前训练批次s
i
的全部数据作为数据集b

i
,将上述适应扰动v

i
和数据集b

叠加并再次输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据样本真实标签计算损失函数,并根据所述损失函数对适应扰动v
i
进行梯度下降更新,得到初始元对抗扰动a4、利用经过步骤a3后的初始化元对抗扰动替换所述初始化扰动v
i
,并重复a2和a3直至迭代次数等于预设的训练代数meta_iter时,结束内部迭代,执行a5;a5、以概率p对所述初始元对抗扰动进行交叉操作,从其他训练批次j对应的元对抗扰动中随机选取一个元对抗扰动与当前训练批次元对抗扰动进行融合,并将融合后的扰动投影到允许扰动范围内,获得对应批次的元对抗扰动3.如权利要求1所述的对抗训练方法,其特征在于,所述当前训练批次数据对应的对抗样本数据,具体生成过程为:b1、为当前训练批次s
i
选取一个将要使用的最优元对抗扰动具体为:以概率q执行随机选择操作过程,以概率1-q直接选取当前批次对应的元对抗扰动作为所述随机选择操作过程为:从所有训练批次对应的元对抗扰动中随机选择n个元对抗扰动,将其分别叠加在当前训练批次数据上,根据所述深度神经网络模型输出结果与数据样本真实标签计算损失函数,得到每个元对抗扰动对应的损失值,选取对应损失值最大的元对抗扰动,作为当前训练批次的最优元对抗扰动
b2、将所选的最优元对抗扰动叠加在当前训练批次数据中,并输入深度神经网络模型,并对叠加扰动后的数据执行投影梯度下降算法,得到当前训练批次对应的对抗样本数据为:其中为当前的对抗样本数据,为更新后的对抗样本数据,y为原始数据样本x的真实标签,α为更新步长,δ为允许扰动范围,l(
·
)为损失函数,θ为深度神经网络模型参数,sign(
·
)为符号函数,为对x求梯度,π表示投影操作函数。4.如权利要求1所述的对抗训练方法,其特征在于,所述使用所述对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得鲁棒深度神经网络模型,具体步骤为:c1、对于当前训练批次对应的所述对抗样本数据,采用梯度下降方法对深度神经网络模型参数进行训练,并更新模型参数;c2、对于所有训练批次,重复所述c1步骤操作,所有训练批次所述c1步骤操作完成之后,训练代数加1,直至训练代数达到预设的训练代数epoch,结束训练,得到能够具备防御对抗攻击效果的鲁棒深度神经网络模型。5.一种基于元学习对抗特征的对抗训练系统,其特征在于,包括扰动训练模块、内部对抗样本生成模块和外部训练模块;所述扰动训练模块,接收训练数据集对训练数据集d进行批处理化操作,得到的多个训练批次的数据输入至待训练的深度神经网络模型;对于每一个训练批次的数据,计算神经网络模型的输出结果与该批次数据对应的真实标签之间的损失函数,根据损失函数对初始化扰动进行梯度下降更新,获得该训练批次对应的元对抗扰动;所述内部对抗样本生成模块,用于对于每一个训练批次,从所有训练批次的元对抗扰动中选取一个最优的元对抗扰动,将其叠加在当前训练批次数据中,并在此基础上,对当前训练批次数据执行梯度下降,并向允许扰动的范围内进行投影,得到当前训练批次数据对应的对抗样本数据;所述外部模型训练模块用于使用所述对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得到鲁棒深度神经网络模型。6.如权利要求5所述的对抗训练系统,其特征在于,在所述扰动训练模块具体执行如下步骤:a1、将所述训练数据集d进行批处理化操作,数据集d中共有d个数据,每个批次样本数取为s,则共有批次数即批处理化操作后得到共c个训练批次,对于第i个训练批次,其初始化扰动设定为v
i
;a2、分别将每一个训练批次的数据输入深度神经网络模型中,对于当前训练批次s
i
,选取部分数据组成数据集b
i
,将该训练批次对应的初始化扰动v
i
与数据集b
i
叠加并输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据真实标签计算损失函数,并根据所述损失函数对初始化扰动v
i
进行梯度下降更新,得到适应扰动v

i
;a3、将所述当前训练批次s
i
的全部数据作为数据集b

i
,将上述适应扰动v

i
和数据集b

叠加并再次输入至当前深度神经网络模型中,根据深度神经网络模型输出结果与数据样本
真实标签计算损失函数,并根据所述损失函数对适应扰动v
i
进行梯度下降更新,得到初始元对抗扰动a4、利用经过步骤a3后的初始化元对抗扰动替换所述初始化扰动v
i
,并重复a2和a3直至迭代次数等于预设的训练代数meta_iter时,结束内部迭代,执行a5;a5、以概率p对所述初始元对抗扰动进行交叉操作,从其他训练批次j对应的元对抗扰动中随机选取一个元对抗扰动与当前训练批次元对抗扰动进行融合,并将融合后的扰动投影到允许扰动范围内,获得对应批次的元对抗扰动7.如权利要求5所述的对抗训练系统,其特征在于,在所述内部对抗样本生成模块,具体执行如下步骤:b1、为当前训练批次s
i
选取一个将要使用的最优元对抗扰动具体为:以概率q执行随机选择操作过程,以概率1-q直接选取当前批次对应的元对抗扰动作为所述随机选择操作过程为:从所有训练批次对应的元对抗扰动中随机选择n个元对抗扰动,将其分别叠加在当前训练批次数据上,根据所述深度神经网络模型输出结果与数据样本真实标签计算损失函数,得到每个元对抗扰动对应的损失值,选取对应损失值最大的元对抗扰动,作为当前训练批次的最优元对抗扰动b2、将所选的最优元对抗扰动叠加在当前训练批次数据中,并输入深度神经网络模型,并对叠加扰动后的数据执行投影梯度下降算法,得到当前训练批次对应的对抗样本数据为:其中为当前的对抗样本数据,为更新后的对抗样本数据,y为原始数据样本x的真实标签,α为更新步长,δ为允许扰动范围,l(
·
)为损失函数,θ为深度神经网络模型参数,sign(
·
)为符号函数,为对x求梯度,π表示投影操作函数。8.如权利要求5所述的对抗训练系统,其特征在于,在所述外部模型训练模块,具体执行如下步骤:c1、对于当前训练批次对应的所述对抗样本数据,采用梯度下降方法对深度神经网络模型参数进行训练,并更新模型参数;c2、对于所有训练批次,重复所述c1步骤操作,所有训练批次所述c1步骤操作完成之后,训练代数加1,直至训练代数达到预设的训练代数epoch,结束训练,得到鲁棒深度神经网络模型。

技术总结
本发明公开了一种基于元学习对抗特征的对抗训练方法和系统,涉及图像识别技术领域,能够提升深度神经网络模型的鲁棒性。首先对训练数据集批处理化,得到多个训练批次的数据输入至待训练的深度神经网络模型;对于每个批次的数据,计算神经网络模型的输出结果与该批次对应真实标签之间的损失函数,根据损失函数对初始化扰动进行梯度下降更新,获得该批次的元对抗扰动。选取最优的元对抗扰动,叠加在当前批次数据中,对当前训练批次数据执行梯度下降,并向允许扰动的范围内进行投影,得到当前训练批次数据对应的对抗样本数据。使用对抗样本数据对深度神经网络模型采用梯度下降方法进行训练,得到具备防御对抗攻击效果的鲁棒深度神经网络模型。度神经网络模型。度神经网络模型。


技术研发人员:孙健 付俊傑 王钢 徐勇 窦丽华 陈杰
受保护的技术使用者:北京理工大学
技术研发日:2023.04.18
技术公布日:2023/8/21
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐